python: initial Python3 support
diff --git a/.gitignore b/.gitignore
index 86033bc..ee31585 100644
--- a/.gitignore
+++ b/.gitignore
@@ -32,6 +32,8 @@
 bindings/python/pyx/ppc_const.pyx
 bindings/python/pyx/x86.pyx
 bindings/python/pyx/x86_const.pyx
+bindings/python/pyx/sparc.pyx
+bindings/python/pyx/sparc_const.pyx
 
 
 # java
@@ -45,6 +47,8 @@
 tests/test_mips
 tests/test_x86
 tests/test_ppc
+tests/test_sparc
+tests/test_systemz
 tests/*.static
 
 # vim tmp file
diff --git a/COMPILE.TXT b/COMPILE.TXT
index c8dd7a6..301db9e 100644
--- a/COMPILE.TXT
+++ b/COMPILE.TXT
@@ -7,11 +7,14 @@
 
 (0) Tailor Capstone to your need.
 
-  Out of 5 archtitectures supported by Capstone (Arm, Arm64, Mips, PPC & X86),
-  if you just need several selected archs, you can choose which ones you want
-  to compile in by modifying config.mk before going to next steps.
+  Out of 7 archtitectures supported by Capstone (Arm, Arm64, Mips, PPC, Sparc,
+  SystemZ & X86), if you just need several selected archs, you can choose which ones you
+  want to compile in by modifying "config.mk" before going to next steps.
 
-  By default, all 5 architectures are compiled.
+  By default, all 7 architectures are compiled.
+
+  Capstone also supports "diet" engine to minimize the binaries for embedding
+  purpose. See docs/README for further instructions.
 
 
 
@@ -54,12 +57,14 @@
 	/usr/include/capstone/arm64.h
 	/usr/include/capstone/mips.h
 	/usr/include/capstone/ppc.h
+	/usr/include/capstone/sparc.h
+	/usr/include/capstone/systemz.h
 	/usr/lib/libcapstone.so (for Linux/*nix), or /usr/lib/libcapstone.dylib (OSX)
 	/usr/lib/libcapstone.a
 
 
 
-(3) Cross-compile Windows from *nix
+(3) Cross-compile for Windows from *nix
 
   To cross-compile for Windows, Linux & gcc-mingw-w64-i686 (and also gcc-mingw-w64-x86-64
   for 64-bit binaries) are required.
@@ -75,7 +80,7 @@
 
 
 
-(4) Cross-compile iOS from Mac OSX.
+(4) Cross-compile for iOS from Mac OSX.
 
   To cross-compile for iOS (iPhone/iPad/iPod), Mac OSX with XCode installed is required. 
 
@@ -96,7 +101,18 @@
 
 
 
-(5) Compile on Windows with Cygwin
+(5) Cross-compile for Android
+
+  To cross-compile for Android (smartphone/tablet), Android NDK is required.
+
+	$ ./make.sh cross-android
+
+  Resulted files libcapstone.so, libcapstone.a & tests/test* can then
+  be used on Android devices.
+
+
+
+(6) Compile on Windows with Cygwin
 
   To compile under Cygwin gcc-mingw-w64-i686 or x86_64-w64-mingw32 run:
 
@@ -110,7 +126,8 @@
   be used on Windows machine.
 
 
-(6) By default, "cc" (default C compiler on the system) is used as compiler.
+
+(7) By default, "cc" (default C compiler on the system) is used as compiler.
 
 	- To use "clang" compiler instead, run command below:
 
@@ -122,7 +139,7 @@
 
 
 
-(7) Language bindings
+(8) Language bindings
 
   So far, Python, Ocaml & Java are supported by bindings in the main code.
   Look for the bindings under directory bindings/, and refer to README file
diff --git a/HACK.TXT b/HACK.TXT
index 2462169..6e7f7ed 100644
--- a/HACK.TXT
+++ b/HACK.TXT
@@ -7,6 +7,8 @@
 │   ├── ARM         <- ARM engine
 │   ├── Mips        <- Mips engine
 │   ├── PowerPC     <- PowerPC engine
+│   ├── Sparc       <- Sparc engine
+│   ├── SystemZ     <- SystemZ engine
 │   └── X86         <- X86 engine
 ├── bindings        <- all bindings are under this dir
 │   ├── java        <- Java bindings + test code
diff --git a/MCInst.h b/MCInst.h
index b6eef1a..1144c6c 100644
--- a/MCInst.h
+++ b/MCInst.h
@@ -128,6 +128,8 @@
 		cs_arm arm;		// ARM architecture (including Thumb/Thumb2)
 		cs_mips mips;	// MIPS architecture
 		cs_ppc ppc;	// PowerPC architecture
+		cs_sparc sparc;	// Sparc architecture
+		cs_sysz sysz;	// SystemZ architecture
 	};
 } cs_insn_flat;
 
diff --git a/Makefile b/Makefile
index 2e104fb..23dfa13 100644
--- a/Makefile
+++ b/Makefile
@@ -23,20 +23,22 @@
 endif
 
 ifneq (,$(findstring yes,$(CAPSTONE_DIET)))
-CFLAGS += -DCAPSTONE_DIET
+CFLAGS += -DCAPSTONE_DIET -Os
 endif
 
 PREFIX ?= /usr
 DESTDIR ?=
 INCDIR = $(DESTDIR)$(PREFIX)/include
 
-LIBDIR = $(DESTDIR)$(PREFIX)/lib
-# on x86_64, we might have /usr/lib64 directory instead of /usr/lib
 UNAME_M := $(shell uname -m)
 UNAME_S := $(shell uname -s)
+
+LIBDIR = $(DESTDIR)$(PREFIX)/lib
+# on x86_64, we might have /usr/lib64 directory instead of /usr/lib
 ifeq ($(UNAME_M), x86_64)
-ifeq (,$(wildcard $(LIBDIR)))
+# ignore Mac OSX
 ifneq ($(UNAME_S), Darwin)
+ifneq (,$(wildcard $(DESTDIR)$(PREFIX)/lib64))
 LIBDIR = $(DESTDIR)$(PREFIX)/lib64
 endif
 endif
@@ -129,11 +131,53 @@
 endif
 
 
+DEP_SPARC =
+DEP_SPARC += arch/Sparc/SparcGenAsmWriter.inc
+DEP_SPARC += arch/Sparc/SparcGenInstrInfo.inc
+DEP_SPARC += arch/Sparc/SparcGenSubtargetInfo.inc
+DEP_SPARC += arch/Sparc/SparcGenDisassemblerTables.inc
+DEP_SPARC += arch/Sparc/SparcGenRegisterInfo.inc
+
+LIBOBJ_SPARC =
+ifneq (,$(findstring sparc,$(CAPSTONE_ARCHS)))
+	CFLAGS += -DCAPSTONE_HAS_SPARC
+	LIBOBJ_SPARC += arch/Sparc/SparcDisassembler.o
+	LIBOBJ_SPARC += arch/Sparc/SparcInstPrinter.o
+	LIBOBJ_SPARC += arch/Sparc/SparcMapping.o
+	LIBOBJ_SPARC += arch/Sparc/SparcModule.o
+endif
+
+
+DEP_SYSZ =
+DEP_SYSZ += arch/SystemZ/SystemZGenAsmWriter.inc
+DEP_SYSZ += arch/SystemZ/SystemZGenInstrInfo.inc
+DEP_SYSZ += arch/SystemZ/SystemZGenSubtargetInfo.inc
+DEP_SYSZ += arch/SystemZ/SystemZGenDisassemblerTables.inc
+DEP_SYSZ += arch/SystemZ/SystemZGenRegisterInfo.inc
+
+LIBOBJ_SYSZ =
+ifneq (,$(findstring systemz,$(CAPSTONE_ARCHS)))
+	CFLAGS += -DCAPSTONE_HAS_SYSZ
+	LIBOBJ_SYSZ += arch/SystemZ/SystemZDisassembler.o
+	LIBOBJ_SYSZ += arch/SystemZ/SystemZInstPrinter.o
+	LIBOBJ_SYSZ += arch/SystemZ/SystemZMapping.o
+	LIBOBJ_SYSZ += arch/SystemZ/SystemZModule.o
+	LIBOBJ_SYSZ += arch/SystemZ/SystemZMCTargetDesc.o
+endif
+
+
+# by default, we compile full X86 instruction sets
+X86_REDUCE =
+ifneq (,$(findstring yes,$(CAPSTONE_X86_REDUCE)))
+X86_REDUCE = _reduce
+CFLAGS += -DCAPSTONE_X86_REDUCE -Os
+endif
+
 DEP_X86 =
-DEP_X86 += arch/X86/X86GenAsmWriter.inc
-DEP_X86 += arch/X86/X86GenAsmWriter1.inc
-DEP_X86 += arch/X86/X86GenDisassemblerTables.inc
-DEP_X86 += arch/X86/X86GenInstrInfo.inc
+DEP_X86 += arch/X86/X86GenAsmWriter$(X86_REDUCE).inc
+DEP_X86 += arch/X86/X86GenAsmWriter1$(X86_REDUCE).inc
+DEP_X86 += arch/X86/X86GenDisassemblerTables$(X86_REDUCE).inc
+DEP_X86 += arch/X86/X86GenInstrInfo$(X86_REDUCE).inc
 DEP_X86 += arch/X86/X86GenRegisterInfo.inc
 
 LIBOBJ_X86 =
@@ -149,7 +193,7 @@
 
 LIBOBJ =
 LIBOBJ += cs.o utils.o SStream.o MCInstrDesc.o MCRegisterInfo.o
-LIBOBJ += $(LIBOBJ_ARM) $(LIBOBJ_ARM64) $(LIBOBJ_MIPS) $(LIBOBJ_PPC) $(LIBOBJ_X86)
+LIBOBJ += $(LIBOBJ_ARM) $(LIBOBJ_ARM64) $(LIBOBJ_MIPS) $(LIBOBJ_PPC) $(LIBOBJ_SPARC) $(LIBOBJ_SYSZ) $(LIBOBJ_X86)
 LIBOBJ += MCInst.o
 
 
@@ -223,6 +267,8 @@
 $(LIBOBJ_ARM64): $(DEP_ARM64)
 $(LIBOBJ_MIPS): $(DEP_MIPS)
 $(LIBOBJ_PPC): $(DEP_PPC)
+$(LIBOBJ_SPARC): $(DEP_SPARC)
+$(LIBOBJ_SYSZ): $(DEP_SYSZ)
 $(LIBOBJ_X86): $(DEP_X86)
 
 $(ARCHIVE): $(LIBOBJ)
diff --git a/README b/README
index 1c40b1a..01e07dd 100644
--- a/README
+++ b/README
@@ -4,7 +4,8 @@
 Created by Nguyen Anh Quynh, then developed and maintained by a small community,
 Capstone offers some unparalleled features:
 
-- Support multiple hardware architectures: ARM, ARM64 (ARMv8), Mips, PPC & X86.
+- Support multiple hardware architectures: ARM, ARM64 (ARMv8), Mips, PPC, Sparc,
+  SystemZ and X86.
 
 - Having clean/simple/lightweight/intuitive architecture-neutral API.
 
diff --git a/arch/AArch64/AArch64Mapping.c b/arch/AArch64/AArch64Mapping.c
index bd06eaa..7517a5a 100644
--- a/arch/AArch64/AArch64Mapping.c
+++ b/arch/AArch64/AArch64Mapping.c
@@ -17012,6 +17012,8 @@
 const char *AArch64_insn_name(csh handle, unsigned int id)
 {
 #ifndef CAPSTONE_DIET
+	unsigned int i;
+
 	if (id >= ARM64_INS_MAX)
 		return NULL;
 
@@ -17019,7 +17021,6 @@
 		return insn_name_maps[id].name;
 
 	// then find alias insn
-	int i;
 	for (i = 0; i < ARR_SIZE(alias_insn_name_maps); i++) {
 		if (alias_insn_name_maps[i].id == id)
 			return alias_insn_name_maps[i].name;
diff --git a/arch/ARM/ARMGenAsmWriter.inc b/arch/ARM/ARMGenAsmWriter.inc
index 99bc5e4..4637d78 100644
--- a/arch/ARM/ARMGenAsmWriter.inc
+++ b/arch/ARM/ARMGenAsmWriter.inc
@@ -8416,6 +8416,238 @@
 #endif
 }
 
+// get registers with number only
+static char *getRegisterName2(unsigned RegNo)
+{
+  // assert(RegNo && RegNo < 289 && "Invalid register number!");
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 'D', '4', '_', 'D', '6', '_', 'D', '8', '_', 'D', '1', '0', 0,
+  /* 13 */ 'D', '7', '_', 'D', '8', '_', 'D', '9', '_', 'D', '1', '0', 0,
+  /* 26 */ 'Q', '7', '_', 'Q', '8', '_', 'Q', '9', '_', 'Q', '1', '0', 0,
+  /* 39 */ 'd', '1', '0', 0,
+  /* 43 */ 'q', '1', '0', 0,
+  /* 47 */ 'r', '1', '0', 0,
+  /* 51 */ 's', '1', '0', 0,
+  /* 55 */ 'D', '1', '4', '_', 'D', '1', '6', '_', 'D', '1', '8', '_', 'D', '2', '0', 0,
+  /* 71 */ 'D', '1', '7', '_', 'D', '1', '8', '_', 'D', '1', '9', '_', 'D', '2', '0', 0,
+  /* 87 */ 'd', '2', '0', 0,
+  /* 91 */ 's', '2', '0', 0,
+  /* 95 */ 'D', '2', '4', '_', 'D', '2', '6', '_', 'D', '2', '8', '_', 'D', '3', '0', 0,
+  /* 111 */ 'D', '2', '7', '_', 'D', '2', '8', '_', 'D', '2', '9', '_', 'D', '3', '0', 0,
+  /* 127 */ 'd', '3', '0', 0,
+  /* 131 */ 's', '3', '0', 0,
+  /* 135 */ 'd', '0', 0,
+  /* 138 */ 'q', '0', 0,
+  /* 141 */ 'm', 'v', 'f', 'r', '0', 0,
+  /* 147 */ 's', '0', 0,
+  /* 150 */ 'D', '9', '_', 'D', '1', '0', '_', 'D', '1', '1', 0,
+  /* 161 */ 'D', '5', '_', 'D', '7', '_', 'D', '9', '_', 'D', '1', '1', 0,
+  /* 174 */ 'Q', '8', '_', 'Q', '9', '_', 'Q', '1', '0', '_', 'Q', '1', '1', 0,
+  /* 188 */ 'R', '1', '0', '_', 'R', '1', '1', 0,
+  /* 196 */ 'd', '1', '1', 0,
+  /* 200 */ 'q', '1', '1', 0,
+  /* 204 */ 'r', '1', '1', 0,
+  /* 208 */ 's', '1', '1', 0,
+  /* 212 */ 'D', '1', '9', '_', 'D', '2', '0', '_', 'D', '2', '1', 0,
+  /* 224 */ 'D', '1', '5', '_', 'D', '1', '7', '_', 'D', '1', '9', '_', 'D', '2', '1', 0,
+  /* 240 */ 'd', '2', '1', 0,
+  /* 244 */ 's', '2', '1', 0,
+  /* 248 */ 'D', '2', '9', '_', 'D', '3', '0', '_', 'D', '3', '1', 0,
+  /* 260 */ 'D', '2', '5', '_', 'D', '2', '7', '_', 'D', '2', '9', '_', 'D', '3', '1', 0,
+  /* 276 */ 'd', '3', '1', 0,
+  /* 280 */ 's', '3', '1', 0,
+  /* 284 */ 'Q', '0', '_', 'Q', '1', 0,
+  /* 290 */ 'R', '0', '_', 'R', '1', 0,
+  /* 296 */ 'd', '1', 0,
+  /* 299 */ 'q', '1', 0,
+  /* 302 */ 'm', 'v', 'f', 'r', '1', 0,
+  /* 308 */ 's', '1', 0,
+  /* 311 */ 'D', '6', '_', 'D', '8', '_', 'D', '1', '0', '_', 'D', '1', '2', 0,
+  /* 325 */ 'D', '9', '_', 'D', '1', '0', '_', 'D', '1', '1', '_', 'D', '1', '2', 0,
+  /* 340 */ 'Q', '9', '_', 'Q', '1', '0', '_', 'Q', '1', '1', '_', 'Q', '1', '2', 0,
+  /* 355 */ 'd', '1', '2', 0,
+  /* 359 */ 'q', '1', '2', 0,
+  /* 363 */ 'r', '1', '2', 0,
+  /* 367 */ 's', '1', '2', 0,
+  /* 371 */ 'D', '1', '6', '_', 'D', '1', '8', '_', 'D', '2', '0', '_', 'D', '2', '2', 0,
+  /* 387 */ 'D', '1', '9', '_', 'D', '2', '0', '_', 'D', '2', '1', '_', 'D', '2', '2', 0,
+  /* 403 */ 'd', '2', '2', 0,
+  /* 407 */ 's', '2', '2', 0,
+  /* 411 */ 'D', '0', '_', 'D', '2', 0,
+  /* 417 */ 'D', '0', '_', 'D', '1', '_', 'D', '2', 0,
+  /* 426 */ 'Q', '1', '_', 'Q', '2', 0,
+  /* 432 */ 'd', '2', 0,
+  /* 435 */ 'q', '2', 0,
+  /* 438 */ 'm', 'v', 'f', 'r', '2', 0,
+  /* 444 */ 's', '2', 0,
+  /* 447 */ 'f', 'p', 'i', 'n', 's', 't', '2', 0,
+  /* 455 */ 'D', '7', '_', 'D', '9', '_', 'D', '1', '1', '_', 'D', '1', '3', 0,
+  /* 469 */ 'D', '1', '1', '_', 'D', '1', '2', '_', 'D', '1', '3', 0,
+  /* 481 */ 'Q', '1', '0', '_', 'Q', '1', '1', '_', 'Q', '1', '2', '_', 'Q', '1', '3', 0,
+  /* 497 */ 'd', '1', '3', 0,
+  /* 501 */ 'q', '1', '3', 0,
+  /* 505 */ 's', '1', '3', 0,
+  /* 509 */ 'D', '1', '7', '_', 'D', '1', '9', '_', 'D', '2', '1', '_', 'D', '2', '3', 0,
+  /* 525 */ 'D', '2', '1', '_', 'D', '2', '2', '_', 'D', '2', '3', 0,
+  /* 537 */ 'd', '2', '3', 0,
+  /* 541 */ 's', '2', '3', 0,
+  /* 545 */ 'D', '1', '_', 'D', '3', 0,
+  /* 551 */ 'D', '1', '_', 'D', '2', '_', 'D', '3', 0,
+  /* 560 */ 'Q', '0', '_', 'Q', '1', '_', 'Q', '2', '_', 'Q', '3', 0,
+  /* 572 */ 'R', '2', '_', 'R', '3', 0,
+  /* 578 */ 'd', '3', 0,
+  /* 581 */ 'q', '3', 0,
+  /* 584 */ 'r', '3', 0,
+  /* 587 */ 's', '3', 0,
+  /* 590 */ 'D', '8', '_', 'D', '1', '0', '_', 'D', '1', '2', '_', 'D', '1', '4', 0,
+  /* 605 */ 'D', '1', '1', '_', 'D', '1', '2', '_', 'D', '1', '3', '_', 'D', '1', '4', 0,
+  /* 621 */ 'Q', '1', '1', '_', 'Q', '1', '2', '_', 'Q', '1', '3', '_', 'Q', '1', '4', 0,
+  /* 637 */ 'd', '1', '4', 0,
+  /* 641 */ 'q', '1', '4', 0,
+  /* 645 */ 's', '1', '4', 0,
+  /* 649 */ 'D', '1', '8', '_', 'D', '2', '0', '_', 'D', '2', '2', '_', 'D', '2', '4', 0,
+  /* 665 */ 'D', '2', '1', '_', 'D', '2', '2', '_', 'D', '2', '3', '_', 'D', '2', '4', 0,
+  /* 681 */ 'd', '2', '4', 0,
+  /* 685 */ 's', '2', '4', 0,
+  /* 689 */ 'D', '0', '_', 'D', '2', '_', 'D', '4', 0,
+  /* 698 */ 'D', '1', '_', 'D', '2', '_', 'D', '3', '_', 'D', '4', 0,
+  /* 710 */ 'Q', '1', '_', 'Q', '2', '_', 'Q', '3', '_', 'Q', '4', 0,
+  /* 722 */ 'd', '4', 0,
+  /* 725 */ 'q', '4', 0,
+  /* 728 */ 'r', '4', 0,
+  /* 731 */ 's', '4', 0,
+  /* 734 */ 'D', '9', '_', 'D', '1', '1', '_', 'D', '1', '3', '_', 'D', '1', '5', 0,
+  /* 749 */ 'D', '1', '3', '_', 'D', '1', '4', '_', 'D', '1', '5', 0,
+  /* 761 */ 'Q', '1', '2', '_', 'Q', '1', '3', '_', 'Q', '1', '4', '_', 'Q', '1', '5', 0,
+  /* 777 */ 'd', '1', '5', 0,
+  /* 781 */ 'q', '1', '5', 0,
+  /* 785 */ 's', '1', '5', 0,
+  /* 789 */ 'D', '1', '9', '_', 'D', '2', '1', '_', 'D', '2', '3', '_', 'D', '2', '5', 0,
+  /* 805 */ 'D', '2', '3', '_', 'D', '2', '4', '_', 'D', '2', '5', 0,
+  /* 817 */ 'd', '2', '5', 0,
+  /* 821 */ 's', '2', '5', 0,
+  /* 825 */ 'D', '1', '_', 'D', '3', '_', 'D', '5', 0,
+  /* 834 */ 'D', '3', '_', 'D', '4', '_', 'D', '5', 0,
+  /* 843 */ 'Q', '2', '_', 'Q', '3', '_', 'Q', '4', '_', 'Q', '5', 0,
+  /* 855 */ 'R', '4', '_', 'R', '5', 0,
+  /* 861 */ 'd', '5', 0,
+  /* 864 */ 'q', '5', 0,
+  /* 867 */ 'r', '5', 0,
+  /* 870 */ 's', '5', 0,
+  /* 873 */ 'D', '1', '0', '_', 'D', '1', '2', '_', 'D', '1', '4', '_', 'D', '1', '6', 0,
+  /* 889 */ 'D', '1', '3', '_', 'D', '1', '4', '_', 'D', '1', '5', '_', 'D', '1', '6', 0,
+  /* 905 */ 'd', '1', '6', 0,
+  /* 909 */ 's', '1', '6', 0,
+  /* 913 */ 'D', '2', '0', '_', 'D', '2', '2', '_', 'D', '2', '4', '_', 'D', '2', '6', 0,
+  /* 929 */ 'D', '2', '3', '_', 'D', '2', '4', '_', 'D', '2', '5', '_', 'D', '2', '6', 0,
+  /* 945 */ 'd', '2', '6', 0,
+  /* 949 */ 's', '2', '6', 0,
+  /* 953 */ 'D', '0', '_', 'D', '2', '_', 'D', '4', '_', 'D', '6', 0,
+  /* 965 */ 'D', '3', '_', 'D', '4', '_', 'D', '5', '_', 'D', '6', 0,
+  /* 977 */ 'Q', '3', '_', 'Q', '4', '_', 'Q', '5', '_', 'Q', '6', 0,
+  /* 989 */ 'd', '6', 0,
+  /* 992 */ 'q', '6', 0,
+  /* 995 */ 'r', '6', 0,
+  /* 998 */ 's', '6', 0,
+  /* 1001 */ 'D', '1', '1', '_', 'D', '1', '3', '_', 'D', '1', '5', '_', 'D', '1', '7', 0,
+  /* 1017 */ 'D', '1', '5', '_', 'D', '1', '6', '_', 'D', '1', '7', 0,
+  /* 1029 */ 'd', '1', '7', 0,
+  /* 1033 */ 's', '1', '7', 0,
+  /* 1037 */ 'D', '2', '1', '_', 'D', '2', '3', '_', 'D', '2', '5', '_', 'D', '2', '7', 0,
+  /* 1053 */ 'D', '2', '5', '_', 'D', '2', '6', '_', 'D', '2', '7', 0,
+  /* 1065 */ 'd', '2', '7', 0,
+  /* 1069 */ 's', '2', '7', 0,
+  /* 1073 */ 'D', '1', '_', 'D', '3', '_', 'D', '5', '_', 'D', '7', 0,
+  /* 1085 */ 'D', '5', '_', 'D', '6', '_', 'D', '7', 0,
+  /* 1094 */ 'Q', '4', '_', 'Q', '5', '_', 'Q', '6', '_', 'Q', '7', 0,
+  /* 1106 */ 'R', '6', '_', 'R', '7', 0,
+  /* 1112 */ 'd', '7', 0,
+  /* 1115 */ 'q', '7', 0,
+  /* 1118 */ 'r', '7', 0,
+  /* 1121 */ 's', '7', 0,
+  /* 1124 */ 'D', '1', '2', '_', 'D', '1', '4', '_', 'D', '1', '6', '_', 'D', '1', '8', 0,
+  /* 1140 */ 'D', '1', '5', '_', 'D', '1', '6', '_', 'D', '1', '7', '_', 'D', '1', '8', 0,
+  /* 1156 */ 'd', '1', '8', 0,
+  /* 1160 */ 's', '1', '8', 0,
+  /* 1164 */ 'D', '2', '2', '_', 'D', '2', '4', '_', 'D', '2', '6', '_', 'D', '2', '8', 0,
+  /* 1180 */ 'D', '2', '5', '_', 'D', '2', '6', '_', 'D', '2', '7', '_', 'D', '2', '8', 0,
+  /* 1196 */ 'd', '2', '8', 0,
+  /* 1200 */ 's', '2', '8', 0,
+  /* 1204 */ 'D', '2', '_', 'D', '4', '_', 'D', '6', '_', 'D', '8', 0,
+  /* 1216 */ 'D', '5', '_', 'D', '6', '_', 'D', '7', '_', 'D', '8', 0,
+  /* 1228 */ 'Q', '5', '_', 'Q', '6', '_', 'Q', '7', '_', 'Q', '8', 0,
+  /* 1240 */ 'd', '8', 0,
+  /* 1243 */ 'q', '8', 0,
+  /* 1246 */ 'r', '8', 0,
+  /* 1249 */ 's', '8', 0,
+  /* 1252 */ 'D', '1', '3', '_', 'D', '1', '5', '_', 'D', '1', '7', '_', 'D', '1', '9', 0,
+  /* 1268 */ 'D', '1', '7', '_', 'D', '1', '8', '_', 'D', '1', '9', 0,
+  /* 1280 */ 'd', '1', '9', 0,
+  /* 1284 */ 's', '1', '9', 0,
+  /* 1288 */ 'D', '2', '3', '_', 'D', '2', '5', '_', 'D', '2', '7', '_', 'D', '2', '9', 0,
+  /* 1304 */ 'D', '2', '7', '_', 'D', '2', '8', '_', 'D', '2', '9', 0,
+  /* 1316 */ 'd', '2', '9', 0,
+  /* 1320 */ 's', '2', '9', 0,
+  /* 1324 */ 'D', '3', '_', 'D', '5', '_', 'D', '7', '_', 'D', '9', 0,
+  /* 1336 */ 'D', '7', '_', 'D', '8', '_', 'D', '9', 0,
+  /* 1345 */ 'Q', '6', '_', 'Q', '7', '_', 'Q', '8', '_', 'Q', '9', 0,
+  /* 1357 */ 'R', '8', '_', 'R', '9', 0,
+  /* 1363 */ 'd', '9', 0,
+  /* 1366 */ 'q', '9', 0,
+  /* 1369 */ 'r', '9', 0,
+  /* 1372 */ 's', '9', 0,
+  /* 1375 */ 'R', '1', '2', '_', 'S', 'P', 0,
+  /* 1382 */ 'p', 'c', 0,
+  /* 1385 */ 'f', 'p', 'e', 'x', 'c', 0,
+  /* 1391 */ 'f', 'p', 's', 'i', 'd', 0,
+  /* 1397 */ 'i', 't', 's', 't', 'a', 't', 'e', 0,
+  /* 1405 */ 's', 'p', 0,
+  /* 1408 */ 'f', 'p', 's', 'c', 'r', 0,
+  /* 1414 */ 'l', 'r', 0,
+  /* 1417 */ 'a', 'p', 's', 'r', 0,
+  /* 1422 */ 'c', 'p', 's', 'r', 0,
+  /* 1427 */ 's', 'p', 's', 'r', 0,
+  /* 1432 */ 'f', 'p', 'i', 'n', 's', 't', 0,
+  /* 1439 */ 'f', 'p', 's', 'c', 'r', '_', 'n', 'z', 'c', 'v', 0,
+  /* 1450 */ 'a', 'p', 's', 'r', '_', 'n', 'z', 'c', 'v', 0,
+  };
+
+  static const uint32_t RegAsmOffset[] = {
+    1417, 1450, 1422, 1385, 1432, 1408, 1439, 1391, 1397, 1414, 1382, 1405, 1427, 135, 
+    296, 432, 578, 722, 861, 989, 1112, 1240, 1363, 39, 196, 355, 497, 637, 
+    777, 905, 1029, 1156, 1280, 87, 240, 403, 537, 681, 817, 945, 1065, 1196, 
+    1316, 127, 276, 447, 141, 302, 438, 138, 299, 435, 581, 725, 864, 992, 
+    1115, 1243, 1366, 43, 200, 359, 501, 641, 781, 144, 305, 441, 584, 728, 
+    867, 995, 1118, 1246, 1369, 47, 204, 363, 147, 308, 444, 587, 731, 870, 
+    998, 1121, 1249, 1372, 51, 208, 367, 505, 645, 785, 909, 1033, 1160, 1284, 
+    91, 244, 407, 541, 685, 821, 949, 1069, 1200, 1320, 131, 280, 411, 545, 
+    692, 828, 959, 1079, 1210, 1330, 6, 167, 317, 461, 597, 741, 881, 1009, 
+    1132, 1260, 63, 232, 379, 517, 657, 797, 921, 1045, 1172, 1296, 103, 268, 
+    284, 426, 566, 716, 849, 983, 1100, 1234, 1351, 32, 180, 347, 489, 629, 
+    769, 560, 710, 843, 977, 1094, 1228, 1345, 26, 174, 340, 481, 621, 761, 
+    1375, 290, 572, 855, 1106, 1357, 188, 417, 551, 701, 834, 968, 1085, 1219, 
+    1336, 16, 150, 328, 469, 609, 749, 893, 1017, 1144, 1268, 75, 212, 391, 
+    525, 669, 805, 933, 1053, 1184, 1304, 115, 248, 689, 825, 956, 1076, 1207, 
+    1327, 3, 164, 314, 458, 593, 737, 877, 1005, 1128, 1256, 59, 228, 375, 
+    513, 653, 793, 917, 1041, 1168, 1292, 99, 264, 953, 1073, 1204, 1324, 0, 
+    161, 311, 455, 590, 734, 873, 1001, 1124, 1252, 55, 224, 371, 509, 649, 
+    789, 913, 1037, 1164, 1288, 95, 260, 420, 704, 971, 1222, 19, 332, 613, 
+    897, 1148, 79, 395, 673, 937, 1188, 119, 698, 965, 1216, 13, 325, 605, 
+    889, 1140, 71, 387, 665, 929, 1180, 111, 
+  };
+
+  //int i;
+  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
+  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
+  //printf("*************************\n");
+  return AsmStrs+RegAsmOffset[RegNo-1];
+#else
+  return NULL;
+#endif
+}
+
 #ifdef PRINT_ALIAS_INSTR
 #undef PRINT_ALIAS_INSTR
 
diff --git a/arch/ARM/ARMInstPrinter.c b/arch/ARM/ARMInstPrinter.c
index ceb726c..cd4e8e8 100644
--- a/arch/ARM/ARMInstPrinter.c
+++ b/arch/ARM/ARMInstPrinter.c
@@ -33,7 +33,7 @@
 #define GET_SUBTARGETINFO_ENUM
 #include "ARMGenSubtargetInfo.inc"
 
-static void printRegName(SStream *OS, unsigned RegNo);
+static void printRegName(cs_struct *h, SStream *OS, unsigned RegNo);
 
 // Autogenerated by tblgen.
 static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI);
@@ -143,6 +143,14 @@
 //#define PRINT_ALIAS_INSTR
 #include "ARMGenAsmWriter.inc"
 
+void ARM_getRegName(cs_struct *handle, int value)
+{
+	if (value == CS_OPT_SYNTAX_NOREGNAME)
+		handle->get_regname = getRegisterName2;
+	else
+		handle->get_regname = getRegisterName;
+}
+
 #define UseMarkup false
 #define markup(x) (UseMarkup? (x) : "")
 
@@ -183,11 +191,13 @@
 	}
 }
 
-static void printRegName(SStream *OS, unsigned RegNo)
+static void printRegName(cs_struct *h, SStream *OS, unsigned RegNo)
 {
+#ifndef CAPSTONE_DIET
 	SStream_concat(OS, markup("<reg:"));
-	SStream_concat(OS, getRegisterName(RegNo));
+	SStream_concat(OS, h->get_regname(RegNo));
 	SStream_concat(OS, markup(">"));
+#endif
 }
 
 static name_map insn_update_flgs[] = {
@@ -235,7 +245,7 @@
 	// check if this insn requests update flags
 	if (insn->detail->arm.update_flags == false) {
 		// some insn still update flags, regardless of tabgen info
-		int i;
+		unsigned int i, j;
 
 		for (i = 0; i < ARR_SIZE(insn_update_flgs); i++) {
 			if (insn->id == insn_update_flgs[i].id &&
@@ -243,7 +253,6 @@
 						strlen(insn_update_flgs[i].name))) {
 				insn->detail->arm.update_flags = true;
 				// we have to update regs_write array as well
-				int j;
 				for (j = 0; j < ARR_SIZE(insn->detail->regs_write); j++) {
 					if (insn->detail->regs_write[j] == 0) {
 						insn->detail->regs_write[j] = ARM_REG_CPSR;
@@ -306,7 +315,7 @@
 							printPredicateOperand(MI, 4, O);
 
 							SStream_concat(O, "\t");
-							printRegName(O, MCOperand_getReg(Dst));
+							printRegName(MI->csh, O, MCOperand_getReg(Dst));
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(Dst);
@@ -314,7 +323,7 @@
 							}
 
 							SStream_concat(O, ", ");
-							printRegName(O, MCOperand_getReg(MO1));
+							printRegName(MI->csh, O, MCOperand_getReg(MO1));
 
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
@@ -323,7 +332,7 @@
 							}
 
 							SStream_concat(O, ", ");
-							printRegName(O, MCOperand_getReg(MO2));
+							printRegName(MI->csh, O, MCOperand_getReg(MO2));
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO2);
@@ -344,7 +353,7 @@
 							printPredicateOperand(MI, 3, O);
 
 							SStream_concat(O, "\t");
-							printRegName(O, MCOperand_getReg(Dst));
+							printRegName(MI->csh, O, MCOperand_getReg(Dst));
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(Dst);
@@ -352,7 +361,7 @@
 							}
 
 							SStream_concat(O, ", ");
-							printRegName(O, MCOperand_getReg(MO1));
+							printRegName(MI->csh, O, MCOperand_getReg(MO1));
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO1);
@@ -401,7 +410,7 @@
 							SStream_concat(O, "push");
 							printPredicateOperand(MI, 4, O);
 							SStream_concat(O, "\t{");
-							printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, 1)));
+							printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, 1)));
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, 1));
@@ -434,7 +443,7 @@
 							SStream_concat(O, "pop");
 							printPredicateOperand(MI, 5, O);
 							SStream_concat(O, "\t{");
-							printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, 0)));
+							printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, 0)));
 							if (MI->csh->detail) {
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, 0));
@@ -482,7 +491,7 @@
 
 							 printPredicateOperand(MI, 1, O);
 							 SStream_concat(O, "\t");
-							 printRegName(O, BaseReg);
+							 printRegName(MI->csh, O, BaseReg);
 							 if (MI->csh->detail) {
 								 MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 								 MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = BaseReg;
@@ -541,7 +550,7 @@
 	MCOperand *Op = MCInst_getOperand(MI, OpNo);
 	if (MCOperand_isReg(Op)) {
 		unsigned Reg = MCOperand_getReg(Op);
-		printRegName(O, Reg);
+		printRegName(MI->csh, O, Reg);
 		if (MI->csh->detail) {
 			if (MI->csh->doing_mem) {
 				if (MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base == ARM_REG_INVALID)
@@ -618,7 +627,7 @@
 	MCOperand *MO2 = MCInst_getOperand(MI, OpNum+1);
 	MCOperand *MO3 = MCInst_getOperand(MI, OpNum+2);
 
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
@@ -636,7 +645,7 @@
 		return;
 
 	SStream_concat(O, " ");
-	printRegName(O, MCOperand_getReg(MO2));
+	printRegName(MI->csh, O, MCOperand_getReg(MO2));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count - 1].shift.value = MCOperand_getReg(MO2);
 	//assert(ARM_AM_getSORegOffset(MO3.getImm()) == 0);
@@ -647,7 +656,7 @@
 	MCOperand *MO1 = MCInst_getOperand(MI, OpNum);
 	MCOperand *MO2 = MCInst_getOperand(MI, OpNum+1);
 
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO1);
@@ -674,7 +683,7 @@
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
 
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	}
@@ -700,7 +709,7 @@
 
 	SStream_concat(O, ", ");
 	SStream_concat(O, ARM_AM_getAddrOpcStr(getAM2Op((unsigned int)MCOperand_getImm(MO3))));
-	printRegName(O, MCOperand_getReg(MO2));
+	printRegName(MI->csh, O, MCOperand_getReg(MO2));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.index = MCOperand_getReg(MO2);
 	}
@@ -717,11 +726,11 @@
 	MCOperand *MO2 = MCInst_getOperand(MI, Op+1);
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MO2));
+	printRegName(MI->csh, O, MCOperand_getReg(MO2));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.index = MCOperand_getReg(MO2);
 	SStream_concat(O, "]%s", markup(">"));
@@ -734,11 +743,11 @@
 	MCOperand *MO2 = MCInst_getOperand(MI, Op+1);
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MO2));
+	printRegName(MI->csh, O, MCOperand_getReg(MO2));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.index = MCOperand_getReg(MO2);
 	SStream_concat(O, ", lsl %s #1%s]%s", markup("<imm:"), markup(">"), markup(">"));
@@ -785,7 +794,7 @@
 	}
 
 	SStream_concat(O, ARM_AM_getAddrOpcStr(getAM2Op((unsigned int)MCOperand_getImm(MO2))));
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO1);
@@ -809,7 +818,7 @@
 
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	SStream_concat(O, "], %s", markup(">"));
@@ -817,7 +826,7 @@
 
 	if (MCOperand_getReg(MO2)) {
 		SStream_concat(O, "%c", (char)op);
-		printRegName(O, MCOperand_getReg(MO2));
+		printRegName(MI->csh, O, MCOperand_getReg(MO2));
 		if (MI->csh->detail) {
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO2);
@@ -858,13 +867,13 @@
 
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 
 	if (MCOperand_getReg(MO2)) {
 		SStream_concat(O, ", %s", ARM_AM_getAddrOpcStr(op));
-		printRegName(O, MCOperand_getReg(MO2));
+		printRegName(MI->csh, O, MCOperand_getReg(MO2));
 		if (MI->csh->detail) {
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.index = MCOperand_getReg(MO2);
 			if (op)
@@ -926,7 +935,7 @@
 
 	if (MCOperand_getReg(MO1)) {
 		SStream_concat(O, ARM_AM_getAddrOpcStr(op));
-		printRegName(O, MCOperand_getReg(MO1));
+		printRegName(MI->csh, O, MCOperand_getReg(MO1));
 		if (MI->csh->detail) {
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].imm = MCOperand_getReg(MO1);
@@ -979,7 +988,7 @@
 	MCOperand *MO2 = MCInst_getOperand(MI, OpNum+1);
 
 	SStream_concat(O, (MCOperand_getImm(MO2) ? "" : "-"));
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO1);
@@ -1011,7 +1020,7 @@
 	}
 
 	SStream_concat(O, "%s[", markup("<mem:"));
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 
 	unsigned ImmOffs = ARM_AM_getAM5Offset((unsigned int)MCOperand_getImm(MO2));
 	unsigned Op = ARM_AM_getAM5Op((unsigned int)MCOperand_getImm(MO2));
@@ -1035,7 +1044,7 @@
 
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	unsigned tmp = (unsigned int)MCOperand_getImm(MO2);
@@ -1056,7 +1065,7 @@
 	MCOperand *MO1 = MCInst_getOperand(MI, OpNum);
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	SStream_concat(O, "]%s", markup(">"));
@@ -1070,7 +1079,7 @@
 		SStream_concat(O, "!");
 	else {
 		SStream_concat(O, ", ");
-		printRegName(O, MCOperand_getReg(MO));
+		printRegName(MI->csh, O, MCOperand_getReg(MO));
 		if (MI->csh->detail) {
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MO);
@@ -1189,7 +1198,7 @@
 	unsigned i, e;
 	for (i = OpNum, e = MCInst_getNumOperands(MI); i != e; ++i) {
 		if (i != OpNum) SStream_concat(O, ", ");
-		printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, i)));
+		printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, i)));
 		if (MI->csh->detail) {
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, i));
@@ -1203,14 +1212,14 @@
 		MCRegisterInfo *MRI)
 {
 	unsigned Reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
-	printRegName(O, MCRegisterInfo_getSubReg(MRI, Reg, ARM_gsub_0));
+	printRegName(MI->csh, O, MCRegisterInfo_getSubReg(MRI, Reg, ARM_gsub_0));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCRegisterInfo_getSubReg(MRI, Reg, ARM_gsub_0);
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCRegisterInfo_getSubReg(MRI, Reg, ARM_gsub_1));
+	printRegName(MI->csh, O, MCRegisterInfo_getSubReg(MRI, Reg, ARM_gsub_1));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCRegisterInfo_getSubReg(MRI, Reg, ARM_gsub_1);
@@ -1525,13 +1534,13 @@
 	SStream_concat(O, markup("<mem:"));
 	SStream_concat(O, "[");
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	unsigned RegNum = MCOperand_getReg(MO2);
 	if (RegNum) {
 		SStream_concat(O, ", ");
-		printRegName(O, RegNum);
+		printRegName(MI->csh, O, RegNum);
 		if (MI->csh->detail)
 			MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.index = RegNum;
 	}
@@ -1554,7 +1563,7 @@
 	SStream_concat(O, markup("<mem:"));
 	SStream_concat(O, "[");
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	unsigned ImmOffs = (unsigned int)MCOperand_getImm(MO2);
@@ -1604,7 +1613,7 @@
 	MCOperand *MO2 = MCInst_getOperand(MI, OpNum+1);
 
 	unsigned Reg = MCOperand_getReg(MO1);
-	printRegName(O, Reg);
+	printRegName(MI->csh, O, Reg);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg;
@@ -1633,7 +1642,7 @@
 	SStream_concat(O, markup("<mem:"));
 	SStream_concat(O, "[");
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
@@ -1675,7 +1684,7 @@
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
 
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 
@@ -1716,7 +1725,7 @@
 	SStream_concat(O, markup("<mem:"));
 	SStream_concat(O, "[");
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 
@@ -1751,7 +1760,7 @@
 	SStream_concat(O, markup("<mem:"));
 	SStream_concat(O, "[");
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 	if (MCOperand_getImm(MO2)) {
@@ -1848,13 +1857,13 @@
 
 	SStream_concat(O, "%s[", markup("<mem:"));
 	set_mem_access(MI, true);
-	printRegName(O, MCOperand_getReg(MO1));
+	printRegName(MI->csh, O, MCOperand_getReg(MO1));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.base = MCOperand_getReg(MO1);
 
 	//assert(MCOperand_getReg(MO2.getReg() && "Invalid so_reg load / store address!");
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MO2));
+	printRegName(MI->csh, O, MCOperand_getReg(MO2));
 	if (MI->csh->detail)
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].mem.index = MCOperand_getReg(MO2);
 
@@ -1984,7 +1993,7 @@
 static void printVectorListOne(MCInst *MI, unsigned OpNum, SStream *O)
 {
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
@@ -2000,14 +2009,14 @@
 	unsigned Reg0 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_0);
 	unsigned Reg1 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_1);
 	SStream_concat(O, "{");
-	printRegName(O, Reg0);
+	printRegName(MI->csh, O, Reg0);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg0;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, Reg1);
+	printRegName(MI->csh, O, Reg1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg1;
@@ -2023,14 +2032,14 @@
 	unsigned Reg0 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_0);
 	unsigned Reg1 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_2);
 	SStream_concat(O, "{");
-	printRegName(O, Reg0);
+	printRegName(MI->csh, O, Reg0);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg0;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, Reg1);
+	printRegName(MI->csh, O, Reg1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg1;
@@ -2045,21 +2054,21 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
@@ -2074,28 +2083,28 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 3);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 3);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 3;
@@ -2107,7 +2116,7 @@
 static void printVectorListOneAllLanes(MCInst *MI, unsigned OpNum, SStream *O)
 {
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
@@ -2123,14 +2132,14 @@
 	unsigned Reg0 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_0);
 	unsigned Reg1 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_1);
 	SStream_concat(O, "{");
-	printRegName(O, Reg0);
+	printRegName(MI->csh, O, Reg0);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg0;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, Reg1);
+	printRegName(MI->csh, O, Reg1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg1;
@@ -2145,21 +2154,21 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
@@ -2174,28 +2183,28 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 1;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 3);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 3);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 3;
@@ -2211,14 +2220,14 @@
 	unsigned Reg0 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_0);
 	unsigned Reg1 = MCRegisterInfo_getSubReg(MRI, Reg, ARM_dsub_2);
 	SStream_concat(O, "{");
-	printRegName(O, Reg0);
+	printRegName(MI->csh, O, Reg0);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg0;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, Reg1);
+	printRegName(MI->csh, O, Reg1);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = Reg1;
@@ -2234,21 +2243,21 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4;
@@ -2264,28 +2273,28 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, "[], ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 6);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 6);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 6;
@@ -2300,21 +2309,21 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4;
@@ -2329,28 +2338,28 @@
 	// addition to get the next register, but for VFP registers, the
 	// sort order is guaranteed because they're all of the form D<n>.
 	SStream_concat(O, "{");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)));
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 2;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 4;
 		MI->flat_insn.arm.op_count++;
 	}
 	SStream_concat(O, ", ");
-	printRegName(O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 6);
+	printRegName(MI->csh, O, MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 6);
 	if (MI->csh->detail) {
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].type = ARM_OP_REG;
 		MI->flat_insn.arm.operands[MI->flat_insn.arm.op_count].reg = MCOperand_getReg(MCInst_getOperand(MI, OpNum)) + 6;
diff --git a/arch/ARM/ARMInstPrinter.h b/arch/ARM/ARMInstPrinter.h
index e531f02..6d6700c 100644
--- a/arch/ARM/ARMInstPrinter.h
+++ b/arch/ARM/ARMInstPrinter.h
@@ -24,4 +24,7 @@
 void ARM_printInst(MCInst *MI, SStream *O, void *Info);
 void ARM_post_printer(csh handle, cs_insn *pub_insn, char *mnem);
 
+// setup handle->get_regname
+void ARM_getRegName(cs_struct *handle, int value);
+
 #endif
diff --git a/arch/ARM/ARMModule.c b/arch/ARM/ARMModule.c
index 43d43b0..5d2dc54 100644
--- a/arch/ARM/ARMModule.c
+++ b/arch/ARM/ARMModule.c
@@ -19,6 +19,7 @@
 	mri = cs_mem_malloc(sizeof(*mri));
 
 	ARM_init(mri);
+	ARM_getRegName(ud, 0);	// use default get_regname
 
 	ud->printer = ARM_printInst;
 	ud->printer_info = mri;
@@ -37,13 +38,21 @@
 
 static cs_err option(cs_struct *handle, cs_opt_type type, size_t value)
 {
-	if (type == CS_OPT_MODE) {
-		if (value & CS_MODE_THUMB)
-			handle->disasm = Thumb_getInstruction;
-		else
-			handle->disasm = ARM_getInstruction;
+	switch(type) {
+		case CS_OPT_MODE:
+			if (value & CS_MODE_THUMB)
+				handle->disasm = Thumb_getInstruction;
+			else
+				handle->disasm = ARM_getInstruction;
 
-		handle->mode = value;
+			handle->mode = value;
+			break;
+		case CS_OPT_SYNTAX:
+			ARM_getRegName(handle, (int)value);
+			handle->syntax = (int)value;
+			break;
+		default:
+			break;
 	}
 
 	return CS_ERR_OK;
diff --git a/arch/Mips/MipsMapping.c b/arch/Mips/MipsMapping.c
index baec86c..2d3af70 100644
--- a/arch/Mips/MipsMapping.c
+++ b/arch/Mips/MipsMapping.c
@@ -7872,7 +7872,7 @@
 // given internal insn id, return public instruction info
 void Mips_get_insn_id(cs_struct *h, cs_insn *insn, unsigned int id)
 {
-	int i;
+	unsigned int i;
 
 	// consider alias insn first
 	for (i = 0; i < ARR_SIZE(alias_insns); i++) {
@@ -8398,11 +8398,12 @@
 const char *Mips_insn_name(csh handle, unsigned int id)
 {
 #ifndef CAPSTONE_DIET
+	unsigned int i;
+
 	if (id >= MIPS_INS_MAX)
 		return NULL;
 
 	// handle special alias first
-	int i;
 	for (i = 0; i < ARR_SIZE(alias_insn_names); i++) {
 		if (alias_insn_names[i].id == id)
 			return alias_insn_names[i].name;
@@ -8417,7 +8418,7 @@
 mips_reg Mips_map_insn(const char *name)
 {
 	// handle special alias first
-	int i;
+	unsigned int i;
 
 	for (i = 0; i < ARR_SIZE(alias_insn_names); i++) {
 		if (!strcasecmp(alias_insn_names[i].name, name))
diff --git a/arch/PowerPC/PPCMapping.c b/arch/PowerPC/PPCMapping.c
index 47a873b..31aeab3 100644
--- a/arch/PowerPC/PPCMapping.c
+++ b/arch/PowerPC/PPCMapping.c
@@ -5159,11 +5159,12 @@
 const char *PPC_insn_name(csh handle, unsigned int id)
 {
 #ifndef CAPSTONE_DIET
+	unsigned int i;
+
 	if (id >= PPC_INS_MAX)
 		return NULL;
 
 	// handle special alias first
-	int i;
 	for (i = 0; i < ARR_SIZE(alias_insn_names); i++) {
 		if (alias_insn_names[i].id == id)
 			return alias_insn_names[i].name;
diff --git a/arch/Sparc/Sparc.h b/arch/Sparc/Sparc.h
new file mode 100644
index 0000000..01331e7
--- /dev/null
+++ b/arch/Sparc/Sparc.h
@@ -0,0 +1,63 @@
+//===-- Sparc.h - Top-level interface for Sparc representation --*- C++ -*-===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file contains the entry points for global functions defined in the LLVM
+// Sparc back-end.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SPARC_TARGET_SPARC_H
+#define CS_SPARC_TARGET_SPARC_H
+
+#include "../../include/sparc.h"
+
+inline static const char *SPARCCondCodeToString(sparc_cc CC)
+{
+	switch (CC) {
+		default:	return NULL;	// unreachable
+		case SPARC_CC_ICC_A:  return "a";
+		case SPARC_CC_ICC_N:   return "n";
+		case SPARC_CC_ICC_NE:  return "ne";
+		case SPARC_CC_ICC_E:   return "e";
+		case SPARC_CC_ICC_G:   return "g";
+		case SPARC_CC_ICC_LE:  return "le";
+		case SPARC_CC_ICC_GE:  return "ge";
+		case SPARC_CC_ICC_L:   return "l";
+		case SPARC_CC_ICC_GU:  return "gu";
+		case SPARC_CC_ICC_LEU: return "leu";
+		case SPARC_CC_ICC_CC:  return "cc";
+		case SPARC_CC_ICC_CS:  return "cs";
+		case SPARC_CC_ICC_POS: return "pos";
+		case SPARC_CC_ICC_NEG: return "neg";
+		case SPARC_CC_ICC_VC:  return "vc";
+		case SPARC_CC_ICC_VS:  return "vs";
+
+		case SPARC_CC_FCC_A:   return "a";
+		case SPARC_CC_FCC_N:   return "n";
+		case SPARC_CC_FCC_U:   return "u";
+		case SPARC_CC_FCC_G:   return "g";
+		case SPARC_CC_FCC_UG:  return "ug";
+		case SPARC_CC_FCC_L:   return "l";
+		case SPARC_CC_FCC_UL:  return "ul";
+		case SPARC_CC_FCC_LG:  return "lg";
+		case SPARC_CC_FCC_NE:  return "ne";
+		case SPARC_CC_FCC_E:   return "e";
+		case SPARC_CC_FCC_UE:  return "ue";
+		case SPARC_CC_FCC_GE:  return "ge";
+		case SPARC_CC_FCC_UGE: return "uge";
+		case SPARC_CC_FCC_LE:  return "le";
+		case SPARC_CC_FCC_ULE: return "ule";
+		case SPARC_CC_FCC_O:   return "o";
+	}
+}
+
+#endif
diff --git a/arch/Sparc/SparcDisassembler.c b/arch/Sparc/SparcDisassembler.c
new file mode 100644
index 0000000..77821b4
--- /dev/null
+++ b/arch/Sparc/SparcDisassembler.c
@@ -0,0 +1,495 @@
+//===------ SparcDisassembler.cpp - Disassembler for PowerPC ------*- C++ -*-===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>	// DEBUG
+#include <stdlib.h>
+#include <string.h>
+
+#include "../../cs_priv.h"
+
+#include "../../SubtargetFeature.h"
+#include "../../MCInst.h"
+#include "../../MCInstrDesc.h"
+#include "../../MCFixedLenDisassembler.h"
+#include "../../MCRegisterInfo.h"
+#include "../../MCDisassembler.h"
+#include "../../MathExtras.h"
+
+
+#define GET_REGINFO_MC_DESC
+#define GET_REGINFO_ENUM
+#include "SparcGenRegisterInfo.inc"
+static const unsigned IntRegDecoderTable[] = {
+	SP_G0,  SP_G1,  SP_G2,  SP_G3,
+	SP_G4,  SP_G5,  SP_G6,  SP_G7,
+	SP_O0,  SP_O1,  SP_O2,  SP_O3,
+	SP_O4,  SP_O5,  SP_O6,  SP_O7,
+	SP_L0,  SP_L1,  SP_L2,  SP_L3,
+	SP_L4,  SP_L5,  SP_L6,  SP_L7,
+	SP_I0,  SP_I1,  SP_I2,  SP_I3,
+	SP_I4,  SP_I5,  SP_I6,  SP_I7
+};
+
+static const unsigned FPRegDecoderTable[] = {
+	SP_F0,   SP_F1,   SP_F2,   SP_F3,
+	SP_F4,   SP_F5,   SP_F6,   SP_F7,
+	SP_F8,   SP_F9,   SP_F10,  SP_F11,
+	SP_F12,  SP_F13,  SP_F14,  SP_F15,
+	SP_F16,  SP_F17,  SP_F18,  SP_F19,
+	SP_F20,  SP_F21,  SP_F22,  SP_F23,
+	SP_F24,  SP_F25,  SP_F26,  SP_F27,
+	SP_F28,  SP_F29,  SP_F30,  SP_F31
+};
+
+static const unsigned DFPRegDecoderTable[] = {
+	SP_D0,   SP_D16,  SP_D1,   SP_D17,
+	SP_D2,   SP_D18,  SP_D3,   SP_D19,
+	SP_D4,   SP_D20,  SP_D5,   SP_D21,
+	SP_D6,   SP_D22,  SP_D7,   SP_D23,
+	SP_D8,   SP_D24,  SP_D9,   SP_D25,
+	SP_D10,  SP_D26,  SP_D11,  SP_D27,
+	SP_D12,  SP_D28,  SP_D13,  SP_D29,
+	SP_D14,  SP_D30,  SP_D15,  SP_D31
+};
+
+static const unsigned QFPRegDecoderTable[] = {
+	SP_Q0,  SP_Q8,   ~0U,  ~0U,
+	SP_Q1,  SP_Q9,   ~0U,  ~0U,
+	SP_Q2,  SP_Q10,  ~0U,  ~0U,
+	SP_Q3,  SP_Q11,  ~0U,  ~0U,
+	SP_Q4,  SP_Q12,  ~0U,  ~0U,
+	SP_Q5,  SP_Q13,  ~0U,  ~0U,
+	SP_Q6,  SP_Q14,  ~0U,  ~0U,
+	SP_Q7,  SP_Q15,  ~0U,  ~0U
+};
+
+static const unsigned FCCRegDecoderTable[] = {
+	SP_FCC0, SP_FCC1, SP_FCC2, SP_FCC3
+};
+
+static uint64_t getFeatureBits(int mode)
+{
+	// support everything
+	return (uint64_t)-1;
+}
+
+static DecodeStatus DecodeIntRegsRegisterClass(MCInst *Inst, unsigned RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned Reg;
+
+	if (RegNo > 31)
+		return MCDisassembler_Fail;
+
+	Reg = IntRegDecoderTable[RegNo];
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Reg));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeI64RegsRegisterClass(MCInst *Inst, unsigned RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned Reg;
+
+	if (RegNo > 31)
+		return MCDisassembler_Fail;
+
+	Reg = IntRegDecoderTable[RegNo];
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Reg));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeFPRegsRegisterClass(MCInst *Inst, unsigned RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned Reg;
+
+	if (RegNo > 31)
+		return MCDisassembler_Fail;
+
+	Reg = FPRegDecoderTable[RegNo];
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Reg));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeDFPRegsRegisterClass(MCInst *Inst, unsigned RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned Reg;
+
+	if (RegNo > 31)
+		return MCDisassembler_Fail;
+
+	Reg = DFPRegDecoderTable[RegNo];
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Reg));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeQFPRegsRegisterClass(MCInst *Inst, unsigned RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned Reg;
+
+	if (RegNo > 31)
+		return MCDisassembler_Fail;
+
+	Reg = QFPRegDecoderTable[RegNo];
+	if (Reg == ~0U)
+		return MCDisassembler_Fail;
+
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Reg));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeFCCRegsRegisterClass(MCInst *Inst, unsigned RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	if (RegNo > 3)
+		return MCDisassembler_Fail;
+
+	MCInst_addOperand(Inst, MCOperand_CreateReg(FCCRegDecoderTable[RegNo]));
+
+	return MCDisassembler_Success;
+}
+
+
+static DecodeStatus DecodeLoadInt(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder);
+static DecodeStatus DecodeLoadFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder);
+static DecodeStatus DecodeLoadDFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder);
+static DecodeStatus DecodeLoadQFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder);
+static DecodeStatus DecodeStoreInt(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder);
+static DecodeStatus DecodeStoreFP(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder);
+static DecodeStatus DecodeStoreDFP(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder);
+static DecodeStatus DecodeStoreQFP(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder);
+static DecodeStatus DecodeCall(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder);
+static DecodeStatus DecodeSIMM13(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder);
+static DecodeStatus DecodeJMPL(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder);
+static DecodeStatus DecodeReturn(MCInst *MI, unsigned insn, uint64_t Address,
+		const void *Decoder);
+static DecodeStatus DecodeSWAP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder);
+
+
+#define GET_SUBTARGETINFO_ENUM
+#include "SparcGenSubtargetInfo.inc"
+#include "SparcGenDisassemblerTables.inc"
+
+/// readInstruction - read four bytes and return 32 bit word.
+static DecodeStatus readInstruction32(unsigned char *code, size_t len, uint32_t *Insn)
+{
+	uint8_t Bytes[4];
+
+	if (len < 4)
+		// not enough data
+		return MCDisassembler_Fail;
+
+	memcpy(Bytes, code, 4);
+
+	// Encoded as a big-endian 32-bit word in the stream.
+	*Insn = (Bytes[3] <<  0) |
+		(Bytes[2] <<  8) |
+		(Bytes[1] << 16) |
+		(Bytes[0] << 24);
+
+	return MCDisassembler_Success;
+}
+
+bool Sparc_getInstruction(csh ud, unsigned char *code, size_t code_len, MCInst *MI,
+		uint16_t *size, uint64_t address, void *info)
+{
+	uint32_t Insn;
+	DecodeStatus Result;
+	
+	Result = readInstruction32(code, code_len, &Insn);
+	if (Result == MCDisassembler_Fail)
+		return MCDisassembler_Fail;
+
+	Result = decodeInstruction_4(DecoderTableSparc32, MI, Insn, address,
+			(MCRegisterInfo *)info, 0);
+	if (Result != MCDisassembler_Fail) {
+		*size = 4;
+		return Result;
+	}
+
+	return MCDisassembler_Fail;
+}
+
+typedef DecodeStatus (*DecodeFunc)(MCInst *MI, unsigned insn, uint64_t Address,
+		const void *Decoder);
+
+static DecodeStatus DecodeMem(MCInst *MI, unsigned insn, uint64_t Address,
+		const void *Decoder,
+		bool isLoad, DecodeFunc DecodeRD)
+{
+	DecodeStatus status;
+	unsigned rd = fieldFromInstruction_4(insn, 25, 5);
+	unsigned rs1 = fieldFromInstruction_4(insn, 14, 5);
+	bool isImm = fieldFromInstruction_4(insn, 13, 1);
+	unsigned rs2 = 0;
+	unsigned simm13 = 0;
+
+	if (isImm)
+		simm13 = SignExtend32(fieldFromInstruction_4(insn, 0, 13), 13);
+	else
+		rs2 = fieldFromInstruction_4(insn, 0, 5);
+
+	if (isLoad) {
+		status = DecodeRD(MI, rd, Address, Decoder);
+		if (status != MCDisassembler_Success)
+			return status;
+	}
+
+	// Decode rs1.
+	status = DecodeIntRegsRegisterClass(MI, rs1, Address, Decoder);
+	if (status != MCDisassembler_Success)
+		return status;
+
+	// Decode imm|rs2.
+	if (isImm)
+		MCInst_addOperand(MI, MCOperand_CreateImm(simm13));
+	else {
+		status = DecodeIntRegsRegisterClass(MI, rs2, Address, Decoder);
+		if (status != MCDisassembler_Success)
+			return status;
+	}
+
+	if (!isLoad) {
+		status = DecodeRD(MI, rd, Address, Decoder);
+		if (status != MCDisassembler_Success)
+			return status;
+	}
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeLoadInt(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, true,
+			DecodeIntRegsRegisterClass);
+}
+
+static DecodeStatus DecodeLoadFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, true,
+			DecodeFPRegsRegisterClass);
+}
+
+static DecodeStatus DecodeLoadDFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, true,
+			DecodeDFPRegsRegisterClass);
+}
+
+static DecodeStatus DecodeLoadQFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, true,
+			DecodeQFPRegsRegisterClass);
+}
+
+static DecodeStatus DecodeStoreInt(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, false,
+			DecodeIntRegsRegisterClass);
+}
+
+static DecodeStatus DecodeStoreFP(MCInst *Inst, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, false,
+			DecodeFPRegsRegisterClass);
+}
+
+static DecodeStatus DecodeStoreDFP(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, false,
+			DecodeDFPRegsRegisterClass);
+}
+
+static DecodeStatus DecodeStoreQFP(MCInst *Inst, unsigned insn,
+		uint64_t Address, const void *Decoder)
+{
+	return DecodeMem(Inst, insn, Address, Decoder, false,
+			DecodeQFPRegsRegisterClass);
+}
+
+static DecodeStatus DecodeCall(MCInst *MI, unsigned insn,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned tgt = fieldFromInstruction_4(insn, 0, 30);
+	tgt <<= 2;
+
+	MCInst_addOperand(MI, MCOperand_CreateImm(tgt));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeSIMM13(MCInst *MI, unsigned insn,
+		uint64_t Address, const void *Decoder)
+{
+	unsigned tgt = SignExtend32(fieldFromInstruction_4(insn, 0, 13), 13);
+
+	MCInst_addOperand(MI, MCOperand_CreateImm(tgt));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeJMPL(MCInst *MI, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	DecodeStatus status;
+	unsigned rd = fieldFromInstruction_4(insn, 25, 5);
+	unsigned rs1 = fieldFromInstruction_4(insn, 14, 5);
+	unsigned isImm = fieldFromInstruction_4(insn, 13, 1);
+	unsigned rs2 = 0;
+	unsigned simm13 = 0;
+
+	if (isImm)
+		simm13 = SignExtend32(fieldFromInstruction_4(insn, 0, 13), 13);
+	else
+		rs2 = fieldFromInstruction_4(insn, 0, 5);
+
+	// Decode RD.
+	status = DecodeIntRegsRegisterClass(MI, rd, Address, Decoder);
+	if (status != MCDisassembler_Success)
+		return status;
+
+	// Decode RS1.
+	status = DecodeIntRegsRegisterClass(MI, rs1, Address, Decoder);
+	if (status != MCDisassembler_Success)
+		return status;
+
+	// Decode RS1 | SIMM13.
+	if (isImm)
+		MCInst_addOperand(MI, MCOperand_CreateImm(simm13));
+	else {
+		status = DecodeIntRegsRegisterClass(MI, rs2, Address, Decoder);
+		if (status != MCDisassembler_Success)
+			return status;
+	}
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeReturn(MCInst *MI, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	DecodeStatus status;
+	unsigned rs1 = fieldFromInstruction_4(insn, 14, 5);
+	unsigned isImm = fieldFromInstruction_4(insn, 13, 1);
+	unsigned rs2 = 0;
+	unsigned simm13 = 0;
+	if (isImm)
+		simm13 = SignExtend32(fieldFromInstruction_4(insn, 0, 13), 13);
+	else
+		rs2 = fieldFromInstruction_4(insn, 0, 5);
+
+	// Decode RS1.
+	status = DecodeIntRegsRegisterClass(MI, rs1, Address, Decoder);
+	if (status != MCDisassembler_Success)
+		return status;
+
+	// Decode RS2 | SIMM13.
+	if (isImm)
+		MCInst_addOperand(MI, MCOperand_CreateImm(simm13));
+	else {
+		status = DecodeIntRegsRegisterClass(MI, rs2, Address, Decoder);
+		if (status != MCDisassembler_Success)
+			return status;
+	}
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeSWAP(MCInst *MI, unsigned insn, uint64_t Address,
+		const void *Decoder)
+{
+	DecodeStatus status;
+	unsigned rd = fieldFromInstruction_4(insn, 25, 5);
+	unsigned rs1 = fieldFromInstruction_4(insn, 14, 5);
+	unsigned isImm = fieldFromInstruction_4(insn, 13, 1);
+	unsigned rs2 = 0;
+	unsigned simm13 = 0;
+
+	if (isImm)
+		simm13 = SignExtend32(fieldFromInstruction_4(insn, 0, 13), 13);
+	else
+		rs2 = fieldFromInstruction_4(insn, 0, 5);
+
+	// Decode RD.
+	status = DecodeIntRegsRegisterClass(MI, rd, Address, Decoder);
+	if (status != MCDisassembler_Success)
+		return status;
+
+	// Decode RS1.
+	status = DecodeIntRegsRegisterClass(MI, rs1, Address, Decoder);
+	if (status != MCDisassembler_Success)
+		return status;
+
+	// Decode RS1 | SIMM13.
+	if (isImm)
+		MCInst_addOperand(MI, MCOperand_CreateImm(simm13));
+	else {
+		status = DecodeIntRegsRegisterClass(MI, rs2, Address, Decoder);
+		if (status != MCDisassembler_Success)
+			return status;
+	}
+
+	return MCDisassembler_Success;
+}
+
+void Sparc_init(MCRegisterInfo *MRI)
+{
+	/*
+	InitMCRegisterInfo(SparcRegDesc, 119, RA, PC,
+			SparcMCRegisterClasses, 8,
+			SparcRegUnitRoots,
+			86,
+			SparcRegDiffLists,
+			SparcRegStrings,
+			SparcSubRegIdxLists,
+			7,
+			SparcSubRegIdxRanges,
+			SparcRegEncodingTable);
+	*/
+
+	MCRegisterInfo_InitMCRegisterInfo(MRI, SparcRegDesc, 119,
+			0, 0,
+			SparcMCRegisterClasses, 8,
+			0, 0,
+			SparcRegDiffLists,
+			0,
+			SparcSubRegIdxLists, 7,
+			0);
+}
+
diff --git a/arch/Sparc/SparcDisassembler.h b/arch/Sparc/SparcDisassembler.h
new file mode 100644
index 0000000..bafa230
--- /dev/null
+++ b/arch/Sparc/SparcDisassembler.h
@@ -0,0 +1,19 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SPARCDISASSEMBLER_H
+#define CS_SPARCDISASSEMBLER_H
+
+#include <stdint.h>
+
+#include "../../include/capstone.h"
+#include "../../MCRegisterInfo.h"
+#include "../../MCInst.h"
+
+void Sparc_init(MCRegisterInfo *MRI);
+
+bool Sparc_getInstruction(csh ud, const uint8_t *code, size_t code_len,
+		MCInst *instr, uint16_t *size, uint64_t address, void *info);
+
+#endif
+
diff --git a/arch/Sparc/SparcGenAsmWriter.inc b/arch/Sparc/SparcGenAsmWriter.inc
new file mode 100644
index 0000000..f53ec1b
--- /dev/null
+++ b/arch/Sparc/SparcGenAsmWriter.inc
@@ -0,0 +1,1251 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Assembly Writer Source Fragment                                             *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>	// debug
+#include <inttypes.h>
+
+
+/// printInstruction - This method is automatically generated by tablegen
+/// from the instruction set description.
+static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
+{
+  static const uint32_t OpInfo[] = {
+    0U,	// PHI
+    0U,	// INLINEASM
+    0U,	// CFI_INSTRUCTION
+    0U,	// EH_LABEL
+    0U,	// GC_LABEL
+    0U,	// KILL
+    0U,	// EXTRACT_SUBREG
+    0U,	// INSERT_SUBREG
+    0U,	// IMPLICIT_DEF
+    0U,	// SUBREG_TO_REG
+    0U,	// COPY_TO_REGCLASS
+    2452U,	// DBG_VALUE
+    0U,	// REG_SEQUENCE
+    0U,	// COPY
+    2445U,	// BUNDLE
+    2462U,	// LIFETIME_START
+    2432U,	// LIFETIME_END
+    0U,	// STACKMAP
+    0U,	// PATCHPOINT
+    4688U,	// ADDCCri
+    4688U,	// ADDCCrr
+    5925U,	// ADDCri
+    5925U,	// ADDCrr
+    4772U,	// ADDEri
+    4772U,	// ADDErr
+    4786U,	// ADDXC
+    4678U,	// ADDXCCC
+    4808U,	// ADDXri
+    4808U,	// ADDXrr
+    4808U,	// ADDri
+    4808U,	// ADDrr
+    74166U,	// ADJCALLSTACKDOWN
+    74185U,	// ADJCALLSTACKUP
+    5497U,	// ALIGNADDR
+    5127U,	// ALIGNADDRL
+    4695U,	// ANDCCri
+    4695U,	// ANDCCrr
+    4718U,	// ANDNCCri
+    4718U,	// ANDNCCrr
+    5182U,	// ANDNri
+    5182U,	// ANDNrr
+    5182U,	// ANDXNrr
+    4876U,	// ANDXri
+    4876U,	// ANDXrr
+    4876U,	// ANDri
+    4876U,	// ANDrr
+    4502U,	// ARRAY16
+    4255U,	// ARRAY32
+    4526U,	// ARRAY8
+    0U,	// ATOMIC_LOAD_ADD_32
+    0U,	// ATOMIC_LOAD_ADD_64
+    0U,	// ATOMIC_LOAD_AND_32
+    0U,	// ATOMIC_LOAD_AND_64
+    0U,	// ATOMIC_LOAD_MAX_32
+    0U,	// ATOMIC_LOAD_MAX_64
+    0U,	// ATOMIC_LOAD_MIN_32
+    0U,	// ATOMIC_LOAD_MIN_64
+    0U,	// ATOMIC_LOAD_NAND_32
+    0U,	// ATOMIC_LOAD_NAND_64
+    0U,	// ATOMIC_LOAD_OR_32
+    0U,	// ATOMIC_LOAD_OR_64
+    0U,	// ATOMIC_LOAD_SUB_32
+    0U,	// ATOMIC_LOAD_SUB_64
+    0U,	// ATOMIC_LOAD_UMAX_32
+    0U,	// ATOMIC_LOAD_UMAX_64
+    0U,	// ATOMIC_LOAD_UMIN_32
+    0U,	// ATOMIC_LOAD_UMIN_64
+    0U,	// ATOMIC_LOAD_XOR_32
+    0U,	// ATOMIC_LOAD_XOR_64
+    0U,	// ATOMIC_SWAP_64
+    74271U,	// BA
+    1194492U,	// BCOND
+    1260028U,	// BCONDA
+    17659U,	// BINDri
+    17659U,	// BINDrr
+    5065U,	// BMASK
+    145915U,	// BPFCC
+    211451U,	// BPFCCA
+    276987U,	// BPFCCANT
+    342523U,	// BPFCCNT
+    2106465U,	// BPGEZapn
+    2105838U,	// BPGEZapt
+    2106532U,	// BPGEZnapn
+    2107288U,	// BPGEZnapt
+    2106489U,	// BPGZapn
+    2105856U,	// BPGZapt
+    2106552U,	// BPGZnapn
+    2107384U,	// BPGZnapt
+    1456636U,	// BPICC
+    473596U,	// BPICCA
+    539132U,	// BPICCANT
+    604668U,	// BPICCNT
+    2106477U,	// BPLEZapn
+    2105847U,	// BPLEZapt
+    2106542U,	// BPLEZnapn
+    2107337U,	// BPLEZnapt
+    2106500U,	// BPLZapn
+    2105864U,	// BPLZapt
+    2106561U,	// BPLZnapn
+    2107428U,	// BPLZnapt
+    2106511U,	// BPNZapn
+    2105872U,	// BPNZapt
+    2106570U,	// BPNZnapn
+    2107472U,	// BPNZnapt
+    1718780U,	// BPXCC
+    735740U,	// BPXCCA
+    801276U,	// BPXCCANT
+    866812U,	// BPXCCNT
+    2106522U,	// BPZapn
+    2105880U,	// BPZapt
+    2106579U,	// BPZnapn
+    2107505U,	// BPZnapt
+    4983U,	// BSHUFFLE
+    74742U,	// CALL
+    17398U,	// CALLri
+    17398U,	// CALLrr
+    924148U,	// CASXrr
+    924129U,	// CASrr
+    74001U,	// CMASK16
+    73833U,	// CMASK32
+    74150U,	// CMASK8
+    2106607U,	// CMPri
+    2106607U,	// CMPrr
+    4332U,	// EDGE16
+    5081U,	// EDGE16L
+    5198U,	// EDGE16LN
+    5165U,	// EDGE16N
+    4164U,	// EDGE32
+    5072U,	// EDGE32L
+    5188U,	// EDGE32LN
+    5156U,	// EDGE32N
+    4511U,	// EDGE8
+    5090U,	// EDGE8L
+    5208U,	// EDGE8LN
+    5174U,	// EDGE8N
+    1053516U,	// FABSD
+    1054031U,	// FABSQ
+    1054376U,	// FABSS
+    4813U,	// FADDD
+    5383U,	// FADDQ
+    5645U,	// FADDS
+    4648U,	// FALIGNADATA
+    4875U,	// FAND
+    4112U,	// FANDNOT1
+    5544U,	// FANDNOT1S
+    4271U,	// FANDNOT2
+    5591U,	// FANDNOT2S
+    5677U,	// FANDS
+    1194491U,	// FBCOND
+    1260027U,	// FBCONDA
+    4394U,	// FCHKSM16
+    2106173U,	// FCMPD
+    4413U,	// FCMPEQ16
+    4226U,	// FCMPEQ32
+    4432U,	// FCMPGT16
+    4245U,	// FCMPGT32
+    4340U,	// FCMPLE16
+    4172U,	// FCMPLE32
+    4350U,	// FCMPNE16
+    4182U,	// FCMPNE32
+    2106696U,	// FCMPQ
+    2107005U,	// FCMPS
+    4960U,	// FDIVD
+    5475U,	// FDIVQ
+    5815U,	// FDIVS
+    5405U,	// FDMULQ
+    1053620U,	// FDTOI
+    1053996U,	// FDTOQ
+    1054305U,	// FDTOS
+    1054536U,	// FDTOX
+    1053464U,	// FEXPAND
+    4820U,	// FHADDD
+    5652U,	// FHADDS
+    4800U,	// FHSUBD
+    5637U,	// FHSUBS
+    1053473U,	// FITOD
+    1054003U,	// FITOQ
+    1054312U,	// FITOS
+    6300484U,	// FLCMPD
+    6301316U,	// FLCMPS
+    2606U,	// FLUSHW
+    4404U,	// FMEAN16
+    1053543U,	// FMOVD
+    1006078U,	// FMOVD_FCC
+    23484926U,	// FMOVD_ICC
+    23747070U,	// FMOVD_XCC
+    1054058U,	// FMOVQ
+    1006102U,	// FMOVQ_FCC
+    23484950U,	// FMOVQ_ICC
+    23747094U,	// FMOVQ_XCC
+    6018U,	// FMOVRGEZD
+    6029U,	// FMOVRGEZQ
+    6056U,	// FMOVRGEZS
+    6116U,	// FMOVRGZD
+    6126U,	// FMOVRGZQ
+    6150U,	// FMOVRGZS
+    6067U,	// FMOVRLEZD
+    6078U,	// FMOVRLEZQ
+    6105U,	// FMOVRLEZS
+    6160U,	// FMOVRLZD
+    6170U,	// FMOVRLZQ
+    6194U,	// FMOVRLZS
+    6204U,	// FMOVRNZD
+    6214U,	// FMOVRNZQ
+    6238U,	// FMOVRNZS
+    6009U,	// FMOVRZD
+    6248U,	// FMOVRZQ
+    6269U,	// FMOVRZS
+    1054398U,	// FMOVS
+    1006114U,	// FMOVS_FCC
+    23484962U,	// FMOVS_ICC
+    23747106U,	// FMOVS_XCC
+    4490U,	// FMUL8SUX16
+    4465U,	// FMUL8ULX16
+    4442U,	// FMUL8X16
+    5098U,	// FMUL8X16AL
+    5849U,	// FMUL8X16AU
+    4860U,	// FMULD
+    4477U,	// FMULD8SUX16
+    4452U,	// FMULD8ULX16
+    5413U,	// FMULQ
+    5714U,	// FMULS
+    4837U,	// FNADDD
+    5669U,	// FNADDS
+    4881U,	// FNAND
+    5684U,	// FNANDS
+    1053429U,	// FNEGD
+    1053974U,	// FNEGQ
+    1054283U,	// FNEGS
+    4828U,	// FNHADDD
+    5660U,	// FNHADDS
+    4828U,	// FNMULD
+    5660U,	// FNMULS
+    5513U,	// FNOR
+    5778U,	// FNORS
+    1052698U,	// FNOT1
+    1054131U,	// FNOT1S
+    1052857U,	// FNOT2
+    1054178U,	// FNOT2S
+    5660U,	// FNSMULD
+    74625U,	// FONE
+    75324U,	// FONES
+    5508U,	// FOR
+    4129U,	// FORNOT1
+    5563U,	// FORNOT1S
+    4288U,	// FORNOT2
+    5610U,	// FORNOT2S
+    5772U,	// FORS
+    1052936U,	// FPACK16
+    4192U,	// FPACK32
+    1054507U,	// FPACKFIX
+    4323U,	// FPADD16
+    5620U,	// FPADD16S
+    4155U,	// FPADD32
+    5573U,	// FPADD32S
+    4297U,	// FPADD64
+    4974U,	// FPMERGE
+    4314U,	// FPSUB16
+    4580U,	// FPSUB16S
+    4146U,	// FPSUB32
+    4570U,	// FPSUB32S
+    1053480U,	// FQTOD
+    1053627U,	// FQTOI
+    1054319U,	// FQTOS
+    1054552U,	// FQTOX
+    4423U,	// FSLAS16
+    4236U,	// FSLAS32
+    4378U,	// FSLL16
+    4210U,	// FSLL32
+    4867U,	// FSMULD
+    1053523U,	// FSQRTD
+    1054038U,	// FSQRTQ
+    1054383U,	// FSQRTS
+    4306U,	// FSRA16
+    4138U,	// FSRA32
+    1052681U,	// FSRC1
+    1054112U,	// FSRC1S
+    1052840U,	// FSRC2
+    1054159U,	// FSRC2S
+    4386U,	// FSRL16
+    4218U,	// FSRL32
+    1053487U,	// FSTOD
+    1053634U,	// FSTOI
+    1054010U,	// FSTOQ
+    1054559U,	// FSTOX
+    4793U,	// FSUBD
+    5376U,	// FSUBQ
+    5630U,	// FSUBS
+    5519U,	// FXNOR
+    5785U,	// FXNORS
+    5526U,	// FXOR
+    5793U,	// FXORS
+    1053494U,	// FXTOD
+    1054017U,	// FXTOQ
+    1054326U,	// FXTOS
+    74984U,	// FZERO
+    75353U,	// FZEROS
+    24584U,	// GETPCX
+    1078273U,	// JMPLri
+    1078273U,	// JMPLrr
+    1997243U,	// LDDFri
+    1997243U,	// LDDFrr
+    1997249U,	// LDFri
+    1997249U,	// LDFrr
+    1997275U,	// LDQFri
+    1997275U,	// LDQFrr
+    1997229U,	// LDSBri
+    1997229U,	// LDSBrr
+    1997254U,	// LDSHri
+    1997254U,	// LDSHrr
+    1997287U,	// LDSWri
+    1997287U,	// LDSWrr
+    1997236U,	// LDUBri
+    1997236U,	// LDUBrr
+    1997261U,	// LDUHri
+    1997261U,	// LDUHrr
+    1997294U,	// LDXri
+    1997294U,	// LDXrr
+    1997249U,	// LDri
+    1997249U,	// LDrr
+    33480U,	// LEAX_ADDri
+    33480U,	// LEA_ADDri
+    1054405U,	// LZCNT
+    75121U,	// MEMBARi
+    1054543U,	// MOVDTOX
+    1006122U,	// MOVFCCri
+    1006122U,	// MOVFCCrr
+    23484970U,	// MOVICCri
+    23484970U,	// MOVICCrr
+    6047U,	// MOVRGEZri
+    6047U,	// MOVRGEZrr
+    6142U,	// MOVRGZri
+    6142U,	// MOVRGZrr
+    6096U,	// MOVRLEZri
+    6096U,	// MOVRLEZrr
+    6186U,	// MOVRLZri
+    6186U,	// MOVRLZrr
+    6230U,	// MOVRNZri
+    6230U,	// MOVRNZrr
+    6262U,	// MOVRRZri
+    6262U,	// MOVRRZrr
+    1054469U,	// MOVSTOSW
+    1054479U,	// MOVSTOUW
+    1054543U,	// MOVWTOS
+    23747114U,	// MOVXCCri
+    23747114U,	// MOVXCCrr
+    1054543U,	// MOVXTOD
+    5954U,	// MULXri
+    5954U,	// MULXrr
+    2578U,	// NOP
+    4735U,	// ORCCri
+    4735U,	// ORCCrr
+    4726U,	// ORNCCri
+    4726U,	// ORNCCrr
+    5339U,	// ORNri
+    5339U,	// ORNrr
+    5339U,	// ORXNrr
+    5509U,	// ORXri
+    5509U,	// ORXrr
+    5509U,	// ORri
+    5509U,	// ORrr
+    5836U,	// PDIST
+    5344U,	// PDISTN
+    1053356U,	// POPCrr
+    73729U,	// RDY
+    4999U,	// RESTOREri
+    4999U,	// RESTORErr
+    76132U,	// RET
+    76141U,	// RETL
+    18131U,	// RETTri
+    18131U,	// RETTrr
+    5008U,	// SAVEri
+    5008U,	// SAVErr
+    4748U,	// SDIVCCri
+    4748U,	// SDIVCCrr
+    5995U,	// SDIVXri
+    5995U,	// SDIVXrr
+    5861U,	// SDIVri
+    5861U,	// SDIVrr
+    2182U,	// SELECT_CC_DFP_FCC
+    2293U,	// SELECT_CC_DFP_ICC
+    2238U,	// SELECT_CC_FP_FCC
+    2349U,	// SELECT_CC_FP_ICC
+    2265U,	// SELECT_CC_Int_FCC
+    2376U,	// SELECT_CC_Int_ICC
+    2210U,	// SELECT_CC_QFP_FCC
+    2321U,	// SELECT_CC_QFP_ICC
+    1053595U,	// SETHIXi
+    1053595U,	// SETHIi
+    2569U,	// SHUTDOWN
+    2564U,	// SIAM
+    5941U,	// SLLXri
+    5941U,	// SLLXrr
+    5116U,	// SLLri
+    5116U,	// SLLrr
+    4702U,	// SMULCCri
+    4702U,	// SMULCCrr
+    5144U,	// SMULri
+    5144U,	// SMULrr
+    5913U,	// SRAXri
+    5913U,	// SRAXrr
+    4643U,	// SRAri
+    4643U,	// SRArr
+    5947U,	// SRLXri
+    5947U,	// SRLXrr
+    5139U,	// SRLri
+    5139U,	// SRLrr
+    2588U,	// STBAR
+    37428U,	// STBri
+    37428U,	// STBrr
+    37723U,	// STDFri
+    37723U,	// STDFrr
+    38607U,	// STFri
+    38607U,	// STFrr
+    37782U,	// STHri
+    37782U,	// STHrr
+    38238U,	// STQFri
+    38238U,	// STQFrr
+    38758U,	// STXri
+    38758U,	// STXrr
+    38607U,	// STri
+    38607U,	// STrr
+    4671U,	// SUBCCri
+    4671U,	// SUBCCrr
+    5919U,	// SUBCri
+    5919U,	// SUBCrr
+    4764U,	// SUBEri
+    4764U,	// SUBErr
+    4665U,	// SUBXri
+    4665U,	// SUBXrr
+    4665U,	// SUBri
+    4665U,	// SUBrr
+    1997268U,	// SWAPri
+    1997268U,	// SWAPrr
+    2422U,	// TA3
+    2427U,	// TA5
+    5883U,	// TADDCCTVri
+    5883U,	// TADDCCTVrr
+    4687U,	// TADDCCri
+    4687U,	// TADDCCrr
+    9873960U,	// TICCri
+    9873960U,	// TICCrr
+    37753544U,	// TLS_ADDXrr
+    37753544U,	// TLS_ADDrr
+    2106358U,	// TLS_CALL
+    39746030U,	// TLS_LDXrr
+    39745985U,	// TLS_LDrr
+    5873U,	// TSUBCCTVri
+    5873U,	// TSUBCCTVrr
+    4670U,	// TSUBCCri
+    4670U,	// TSUBCCrr
+    10136104U,	// TXCCri
+    10136104U,	// TXCCrr
+    4756U,	// UDIVCCri
+    4756U,	// UDIVCCrr
+    6002U,	// UDIVXri
+    6002U,	// UDIVXrr
+    5867U,	// UDIVri
+    5867U,	// UDIVrr
+    4710U,	// UMULCCri
+    4710U,	// UMULCCrr
+    5026U,	// UMULXHI
+    5150U,	// UMULri
+    5150U,	// UMULrr
+    74996U,	// UNIMP
+    6300477U,	// V9FCMPD
+    6300397U,	// V9FCMPED
+    6300942U,	// V9FCMPEQ
+    6301251U,	// V9FCMPES
+    6301000U,	// V9FCMPQ
+    6301309U,	// V9FCMPS
+    47614U,	// V9FMOVD_FCC
+    47638U,	// V9FMOVQ_FCC
+    47650U,	// V9FMOVS_FCC
+    47658U,	// V9MOVFCCri
+    47658U,	// V9MOVFCCrr
+    14689692U,	// WRYri
+    14689692U,	// WRYrr
+    5953U,	// XMULX
+    5035U,	// XMULXHI
+    4733U,	// XNORCCri
+    4733U,	// XNORCCrr
+    5520U,	// XNORXrr
+    5520U,	// XNORri
+    5520U,	// XNORrr
+    4741U,	// XORCCri
+    4741U,	// XORCCrr
+    5527U,	// XORXri
+    5527U,	// XORXrr
+    5527U,	// XORri
+    5527U,	// XORrr
+    0U
+  };
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 'r', 'd', 32, '%', 'y', ',', 32, 0,
+  /* 8 */ 'f', 's', 'r', 'c', '1', 32, 0,
+  /* 15 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '1', 32, 0,
+  /* 25 */ 'f', 'n', 'o', 't', '1', 32, 0,
+  /* 32 */ 'f', 'o', 'r', 'n', 'o', 't', '1', 32, 0,
+  /* 41 */ 'f', 's', 'r', 'a', '3', '2', 32, 0,
+  /* 49 */ 'f', 'p', 's', 'u', 'b', '3', '2', 32, 0,
+  /* 58 */ 'f', 'p', 'a', 'd', 'd', '3', '2', 32, 0,
+  /* 67 */ 'e', 'd', 'g', 'e', '3', '2', 32, 0,
+  /* 75 */ 'f', 'c', 'm', 'p', 'l', 'e', '3', '2', 32, 0,
+  /* 85 */ 'f', 'c', 'm', 'p', 'n', 'e', '3', '2', 32, 0,
+  /* 95 */ 'f', 'p', 'a', 'c', 'k', '3', '2', 32, 0,
+  /* 104 */ 'c', 'm', 'a', 's', 'k', '3', '2', 32, 0,
+  /* 113 */ 'f', 's', 'l', 'l', '3', '2', 32, 0,
+  /* 121 */ 'f', 's', 'r', 'l', '3', '2', 32, 0,
+  /* 129 */ 'f', 'c', 'm', 'p', 'e', 'q', '3', '2', 32, 0,
+  /* 139 */ 'f', 's', 'l', 'a', 's', '3', '2', 32, 0,
+  /* 148 */ 'f', 'c', 'm', 'p', 'g', 't', '3', '2', 32, 0,
+  /* 158 */ 'a', 'r', 'r', 'a', 'y', '3', '2', 32, 0,
+  /* 167 */ 'f', 's', 'r', 'c', '2', 32, 0,
+  /* 174 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '2', 32, 0,
+  /* 184 */ 'f', 'n', 'o', 't', '2', 32, 0,
+  /* 191 */ 'f', 'o', 'r', 'n', 'o', 't', '2', 32, 0,
+  /* 200 */ 'f', 'p', 'a', 'd', 'd', '6', '4', 32, 0,
+  /* 209 */ 'f', 's', 'r', 'a', '1', '6', 32, 0,
+  /* 217 */ 'f', 'p', 's', 'u', 'b', '1', '6', 32, 0,
+  /* 226 */ 'f', 'p', 'a', 'd', 'd', '1', '6', 32, 0,
+  /* 235 */ 'e', 'd', 'g', 'e', '1', '6', 32, 0,
+  /* 243 */ 'f', 'c', 'm', 'p', 'l', 'e', '1', '6', 32, 0,
+  /* 253 */ 'f', 'c', 'm', 'p', 'n', 'e', '1', '6', 32, 0,
+  /* 263 */ 'f', 'p', 'a', 'c', 'k', '1', '6', 32, 0,
+  /* 272 */ 'c', 'm', 'a', 's', 'k', '1', '6', 32, 0,
+  /* 281 */ 'f', 's', 'l', 'l', '1', '6', 32, 0,
+  /* 289 */ 'f', 's', 'r', 'l', '1', '6', 32, 0,
+  /* 297 */ 'f', 'c', 'h', 'k', 's', 'm', '1', '6', 32, 0,
+  /* 307 */ 'f', 'm', 'e', 'a', 'n', '1', '6', 32, 0,
+  /* 316 */ 'f', 'c', 'm', 'p', 'e', 'q', '1', '6', 32, 0,
+  /* 326 */ 'f', 's', 'l', 'a', 's', '1', '6', 32, 0,
+  /* 335 */ 'f', 'c', 'm', 'p', 'g', 't', '1', '6', 32, 0,
+  /* 345 */ 'f', 'm', 'u', 'l', '8', 'x', '1', '6', 32, 0,
+  /* 355 */ 'f', 'm', 'u', 'l', 'd', '8', 'u', 'l', 'x', '1', '6', 32, 0,
+  /* 368 */ 'f', 'm', 'u', 'l', '8', 'u', 'l', 'x', '1', '6', 32, 0,
+  /* 380 */ 'f', 'm', 'u', 'l', 'd', '8', 's', 'u', 'x', '1', '6', 32, 0,
+  /* 393 */ 'f', 'm', 'u', 'l', '8', 's', 'u', 'x', '1', '6', 32, 0,
+  /* 405 */ 'a', 'r', 'r', 'a', 'y', '1', '6', 32, 0,
+  /* 414 */ 'e', 'd', 'g', 'e', '8', 32, 0,
+  /* 421 */ 'c', 'm', 'a', 's', 'k', '8', 32, 0,
+  /* 429 */ 'a', 'r', 'r', 'a', 'y', '8', 32, 0,
+  /* 437 */ '!', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 32, 0,
+  /* 456 */ '!', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 32, 0,
+  /* 473 */ 'f', 'p', 's', 'u', 'b', '3', '2', 'S', 32, 0,
+  /* 483 */ 'f', 'p', 's', 'u', 'b', '1', '6', 'S', 32, 0,
+  /* 493 */ 'b', 'r', 'g', 'e', 'z', ',', 'a', 32, 0,
+  /* 502 */ 'b', 'r', 'l', 'e', 'z', ',', 'a', 32, 0,
+  /* 511 */ 'b', 'r', 'g', 'z', ',', 'a', 32, 0,
+  /* 519 */ 'b', 'r', 'l', 'z', ',', 'a', 32, 0,
+  /* 527 */ 'b', 'r', 'n', 'z', ',', 'a', 32, 0,
+  /* 535 */ 'b', 'r', 'z', ',', 'a', 32, 0,
+  /* 542 */ 'b', 'a', 32, 0,
+  /* 546 */ 's', 'r', 'a', 32, 0,
+  /* 551 */ 'f', 'a', 'l', 'i', 'g', 'n', 'd', 'a', 't', 'a', 32, 0,
+  /* 563 */ 's', 't', 'b', 32, 0,
+  /* 568 */ 's', 'u', 'b', 32, 0,
+  /* 573 */ 't', 's', 'u', 'b', 'c', 'c', 32, 0,
+  /* 581 */ 'a', 'd', 'd', 'x', 'c', 'c', 'c', 32, 0,
+  /* 590 */ 't', 'a', 'd', 'd', 'c', 'c', 32, 0,
+  /* 598 */ 'a', 'n', 'd', 'c', 'c', 32, 0,
+  /* 605 */ 's', 'm', 'u', 'l', 'c', 'c', 32, 0,
+  /* 613 */ 'u', 'm', 'u', 'l', 'c', 'c', 32, 0,
+  /* 621 */ 'a', 'n', 'd', 'n', 'c', 'c', 32, 0,
+  /* 629 */ 'o', 'r', 'n', 'c', 'c', 32, 0,
+  /* 636 */ 'x', 'n', 'o', 'r', 'c', 'c', 32, 0,
+  /* 644 */ 'x', 'o', 'r', 'c', 'c', 32, 0,
+  /* 651 */ 's', 'd', 'i', 'v', 'c', 'c', 32, 0,
+  /* 659 */ 'u', 'd', 'i', 'v', 'c', 'c', 32, 0,
+  /* 667 */ 's', 'u', 'b', 'x', 'c', 'c', 32, 0,
+  /* 675 */ 'a', 'd', 'd', 'x', 'c', 'c', 32, 0,
+  /* 683 */ 'p', 'o', 'p', 'c', 32, 0,
+  /* 689 */ 'a', 'd', 'd', 'x', 'c', 32, 0,
+  /* 696 */ 'f', 's', 'u', 'b', 'd', 32, 0,
+  /* 703 */ 'f', 'h', 's', 'u', 'b', 'd', 32, 0,
+  /* 711 */ 'a', 'd', 'd', 32, 0,
+  /* 716 */ 'f', 'a', 'd', 'd', 'd', 32, 0,
+  /* 723 */ 'f', 'h', 'a', 'd', 'd', 'd', 32, 0,
+  /* 731 */ 'f', 'n', 'h', 'a', 'd', 'd', 'd', 32, 0,
+  /* 740 */ 'f', 'n', 'a', 'd', 'd', 'd', 32, 0,
+  /* 748 */ 'f', 'c', 'm', 'p', 'e', 'd', 32, 0,
+  /* 756 */ 'f', 'n', 'e', 'g', 'd', 32, 0,
+  /* 763 */ 'f', 'm', 'u', 'l', 'd', 32, 0,
+  /* 770 */ 'f', 's', 'm', 'u', 'l', 'd', 32, 0,
+  /* 778 */ 'f', 'a', 'n', 'd', 32, 0,
+  /* 784 */ 'f', 'n', 'a', 'n', 'd', 32, 0,
+  /* 791 */ 'f', 'e', 'x', 'p', 'a', 'n', 'd', 32, 0,
+  /* 800 */ 'f', 'i', 't', 'o', 'd', 32, 0,
+  /* 807 */ 'f', 'q', 't', 'o', 'd', 32, 0,
+  /* 814 */ 'f', 's', 't', 'o', 'd', 32, 0,
+  /* 821 */ 'f', 'x', 't', 'o', 'd', 32, 0,
+  /* 828 */ 'f', 'c', 'm', 'p', 'd', 32, 0,
+  /* 835 */ 'f', 'l', 'c', 'm', 'p', 'd', 32, 0,
+  /* 843 */ 'f', 'a', 'b', 's', 'd', 32, 0,
+  /* 850 */ 'f', 's', 'q', 'r', 't', 'd', 32, 0,
+  /* 858 */ 's', 't', 'd', 32, 0,
+  /* 863 */ 'f', 'd', 'i', 'v', 'd', 32, 0,
+  /* 870 */ 'f', 'm', 'o', 'v', 'd', 32, 0,
+  /* 877 */ 'f', 'p', 'm', 'e', 'r', 'g', 'e', 32, 0,
+  /* 886 */ 'b', 's', 'h', 'u', 'f', 'f', 'l', 'e', 32, 0,
+  /* 896 */ 'f', 'o', 'n', 'e', 32, 0,
+  /* 902 */ 'r', 'e', 's', 't', 'o', 'r', 'e', 32, 0,
+  /* 911 */ 's', 'a', 'v', 'e', 32, 0,
+  /* 917 */ 's', 't', 'h', 32, 0,
+  /* 922 */ 's', 'e', 't', 'h', 'i', 32, 0,
+  /* 929 */ 'u', 'm', 'u', 'l', 'x', 'h', 'i', 32, 0,
+  /* 938 */ 'x', 'm', 'u', 'l', 'x', 'h', 'i', 32, 0,
+  /* 947 */ 'f', 'd', 't', 'o', 'i', 32, 0,
+  /* 954 */ 'f', 'q', 't', 'o', 'i', 32, 0,
+  /* 961 */ 'f', 's', 't', 'o', 'i', 32, 0,
+  /* 968 */ 'b', 'm', 'a', 's', 'k', 32, 0,
+  /* 975 */ 'e', 'd', 'g', 'e', '3', '2', 'l', 32, 0,
+  /* 984 */ 'e', 'd', 'g', 'e', '1', '6', 'l', 32, 0,
+  /* 993 */ 'e', 'd', 'g', 'e', '8', 'l', 32, 0,
+  /* 1001 */ 'f', 'm', 'u', 'l', '8', 'x', '1', '6', 'a', 'l', 32, 0,
+  /* 1013 */ 'c', 'a', 'l', 'l', 32, 0,
+  /* 1019 */ 's', 'l', 'l', 32, 0,
+  /* 1024 */ 'j', 'm', 'p', 'l', 32, 0,
+  /* 1030 */ 'a', 'l', 'i', 'g', 'n', 'a', 'd', 'd', 'r', 'l', 32, 0,
+  /* 1042 */ 's', 'r', 'l', 32, 0,
+  /* 1047 */ 's', 'm', 'u', 'l', 32, 0,
+  /* 1053 */ 'u', 'm', 'u', 'l', 32, 0,
+  /* 1059 */ 'e', 'd', 'g', 'e', '3', '2', 'n', 32, 0,
+  /* 1068 */ 'e', 'd', 'g', 'e', '1', '6', 'n', 32, 0,
+  /* 1077 */ 'e', 'd', 'g', 'e', '8', 'n', 32, 0,
+  /* 1085 */ 'a', 'n', 'd', 'n', 32, 0,
+  /* 1091 */ 'e', 'd', 'g', 'e', '3', '2', 'l', 'n', 32, 0,
+  /* 1101 */ 'e', 'd', 'g', 'e', '1', '6', 'l', 'n', 32, 0,
+  /* 1111 */ 'e', 'd', 'g', 'e', '8', 'l', 'n', 32, 0,
+  /* 1120 */ 'b', 'r', 'g', 'e', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
+  /* 1132 */ 'b', 'r', 'l', 'e', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
+  /* 1144 */ 'b', 'r', 'g', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
+  /* 1155 */ 'b', 'r', 'l', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
+  /* 1166 */ 'b', 'r', 'n', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
+  /* 1177 */ 'b', 'r', 'z', ',', 'a', ',', 'p', 'n', 32, 0,
+  /* 1187 */ 'b', 'r', 'g', 'e', 'z', ',', 'p', 'n', 32, 0,
+  /* 1197 */ 'b', 'r', 'l', 'e', 'z', ',', 'p', 'n', 32, 0,
+  /* 1207 */ 'b', 'r', 'g', 'z', ',', 'p', 'n', 32, 0,
+  /* 1216 */ 'b', 'r', 'l', 'z', ',', 'p', 'n', 32, 0,
+  /* 1225 */ 'b', 'r', 'n', 'z', ',', 'p', 'n', 32, 0,
+  /* 1234 */ 'b', 'r', 'z', ',', 'p', 'n', 32, 0,
+  /* 1242 */ 'o', 'r', 'n', 32, 0,
+  /* 1247 */ 'p', 'd', 'i', 's', 't', 'n', 32, 0,
+  /* 1255 */ 'f', 'z', 'e', 'r', 'o', 32, 0,
+  /* 1262 */ 'c', 'm', 'p', 32, 0,
+  /* 1267 */ 'u', 'n', 'i', 'm', 'p', 32, 0,
+  /* 1274 */ 'j', 'm', 'p', 32, 0,
+  /* 1279 */ 'f', 's', 'u', 'b', 'q', 32, 0,
+  /* 1286 */ 'f', 'a', 'd', 'd', 'q', 32, 0,
+  /* 1293 */ 'f', 'c', 'm', 'p', 'e', 'q', 32, 0,
+  /* 1301 */ 'f', 'n', 'e', 'g', 'q', 32, 0,
+  /* 1308 */ 'f', 'd', 'm', 'u', 'l', 'q', 32, 0,
+  /* 1316 */ 'f', 'm', 'u', 'l', 'q', 32, 0,
+  /* 1323 */ 'f', 'd', 't', 'o', 'q', 32, 0,
+  /* 1330 */ 'f', 'i', 't', 'o', 'q', 32, 0,
+  /* 1337 */ 'f', 's', 't', 'o', 'q', 32, 0,
+  /* 1344 */ 'f', 'x', 't', 'o', 'q', 32, 0,
+  /* 1351 */ 'f', 'c', 'm', 'p', 'q', 32, 0,
+  /* 1358 */ 'f', 'a', 'b', 's', 'q', 32, 0,
+  /* 1365 */ 'f', 's', 'q', 'r', 't', 'q', 32, 0,
+  /* 1373 */ 's', 't', 'q', 32, 0,
+  /* 1378 */ 'f', 'd', 'i', 'v', 'q', 32, 0,
+  /* 1385 */ 'f', 'm', 'o', 'v', 'q', 32, 0,
+  /* 1392 */ 'm', 'e', 'm', 'b', 'a', 'r', 32, 0,
+  /* 1400 */ 'a', 'l', 'i', 'g', 'n', 'a', 'd', 'd', 'r', 32, 0,
+  /* 1411 */ 'f', 'o', 'r', 32, 0,
+  /* 1416 */ 'f', 'n', 'o', 'r', 32, 0,
+  /* 1422 */ 'f', 'x', 'n', 'o', 'r', 32, 0,
+  /* 1429 */ 'f', 'x', 'o', 'r', 32, 0,
+  /* 1435 */ 'w', 'r', 32, 0,
+  /* 1439 */ 'f', 's', 'r', 'c', '1', 's', 32, 0,
+  /* 1447 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '1', 's', 32, 0,
+  /* 1458 */ 'f', 'n', 'o', 't', '1', 's', 32, 0,
+  /* 1466 */ 'f', 'o', 'r', 'n', 'o', 't', '1', 's', 32, 0,
+  /* 1476 */ 'f', 'p', 'a', 'd', 'd', '3', '2', 's', 32, 0,
+  /* 1486 */ 'f', 's', 'r', 'c', '2', 's', 32, 0,
+  /* 1494 */ 'f', 'a', 'n', 'd', 'n', 'o', 't', '2', 's', 32, 0,
+  /* 1505 */ 'f', 'n', 'o', 't', '2', 's', 32, 0,
+  /* 1513 */ 'f', 'o', 'r', 'n', 'o', 't', '2', 's', 32, 0,
+  /* 1523 */ 'f', 'p', 'a', 'd', 'd', '1', '6', 's', 32, 0,
+  /* 1533 */ 'f', 's', 'u', 'b', 's', 32, 0,
+  /* 1540 */ 'f', 'h', 's', 'u', 'b', 's', 32, 0,
+  /* 1548 */ 'f', 'a', 'd', 'd', 's', 32, 0,
+  /* 1555 */ 'f', 'h', 'a', 'd', 'd', 's', 32, 0,
+  /* 1563 */ 'f', 'n', 'h', 'a', 'd', 'd', 's', 32, 0,
+  /* 1572 */ 'f', 'n', 'a', 'd', 'd', 's', 32, 0,
+  /* 1580 */ 'f', 'a', 'n', 'd', 's', 32, 0,
+  /* 1587 */ 'f', 'n', 'a', 'n', 'd', 's', 32, 0,
+  /* 1595 */ 'f', 'o', 'n', 'e', 's', 32, 0,
+  /* 1602 */ 'f', 'c', 'm', 'p', 'e', 's', 32, 0,
+  /* 1610 */ 'f', 'n', 'e', 'g', 's', 32, 0,
+  /* 1617 */ 'f', 'm', 'u', 'l', 's', 32, 0,
+  /* 1624 */ 'f', 'z', 'e', 'r', 'o', 's', 32, 0,
+  /* 1632 */ 'f', 'd', 't', 'o', 's', 32, 0,
+  /* 1639 */ 'f', 'i', 't', 'o', 's', 32, 0,
+  /* 1646 */ 'f', 'q', 't', 'o', 's', 32, 0,
+  /* 1653 */ 'f', 'x', 't', 'o', 's', 32, 0,
+  /* 1660 */ 'f', 'c', 'm', 'p', 's', 32, 0,
+  /* 1667 */ 'f', 'l', 'c', 'm', 'p', 's', 32, 0,
+  /* 1675 */ 'f', 'o', 'r', 's', 32, 0,
+  /* 1681 */ 'f', 'n', 'o', 'r', 's', 32, 0,
+  /* 1688 */ 'f', 'x', 'n', 'o', 'r', 's', 32, 0,
+  /* 1696 */ 'f', 'x', 'o', 'r', 's', 32, 0,
+  /* 1703 */ 'f', 'a', 'b', 's', 's', 32, 0,
+  /* 1710 */ 'f', 's', 'q', 'r', 't', 's', 32, 0,
+  /* 1718 */ 'f', 'd', 'i', 'v', 's', 32, 0,
+  /* 1725 */ 'f', 'm', 'o', 'v', 's', 32, 0,
+  /* 1732 */ 'l', 'z', 'c', 'n', 't', 32, 0,
+  /* 1739 */ 'p', 'd', 'i', 's', 't', 32, 0,
+  /* 1746 */ 'r', 'e', 't', 't', 32, 0,
+  /* 1752 */ 'f', 'm', 'u', 'l', '8', 'x', '1', '6', 'a', 'u', 32, 0,
+  /* 1764 */ 's', 'd', 'i', 'v', 32, 0,
+  /* 1770 */ 'u', 'd', 'i', 'v', 32, 0,
+  /* 1776 */ 't', 's', 'u', 'b', 'c', 'c', 't', 'v', 32, 0,
+  /* 1786 */ 't', 'a', 'd', 'd', 'c', 'c', 't', 'v', 32, 0,
+  /* 1796 */ 'm', 'o', 'v', 's', 't', 'o', 's', 'w', 32, 0,
+  /* 1806 */ 'm', 'o', 'v', 's', 't', 'o', 'u', 'w', 32, 0,
+  /* 1816 */ 's', 'r', 'a', 'x', 32, 0,
+  /* 1822 */ 's', 'u', 'b', 'x', 32, 0,
+  /* 1828 */ 'a', 'd', 'd', 'x', 32, 0,
+  /* 1834 */ 'f', 'p', 'a', 'c', 'k', 'f', 'i', 'x', 32, 0,
+  /* 1844 */ 's', 'l', 'l', 'x', 32, 0,
+  /* 1850 */ 's', 'r', 'l', 'x', 32, 0,
+  /* 1856 */ 'x', 'm', 'u', 'l', 'x', 32, 0,
+  /* 1863 */ 'f', 'd', 't', 'o', 'x', 32, 0,
+  /* 1870 */ 'm', 'o', 'v', 'd', 't', 'o', 'x', 32, 0,
+  /* 1879 */ 'f', 'q', 't', 'o', 'x', 32, 0,
+  /* 1886 */ 'f', 's', 't', 'o', 'x', 32, 0,
+  /* 1893 */ 's', 't', 'x', 32, 0,
+  /* 1898 */ 's', 'd', 'i', 'v', 'x', 32, 0,
+  /* 1905 */ 'u', 'd', 'i', 'v', 'x', 32, 0,
+  /* 1912 */ 'f', 'm', 'o', 'v', 'r', 'd', 'z', 32, 0,
+  /* 1921 */ 'f', 'm', 'o', 'v', 'r', 'd', 'g', 'e', 'z', 32, 0,
+  /* 1932 */ 'f', 'm', 'o', 'v', 'r', 'q', 'g', 'e', 'z', 32, 0,
+  /* 1943 */ 'b', 'r', 'g', 'e', 'z', 32, 0,
+  /* 1950 */ 'm', 'o', 'v', 'r', 'g', 'e', 'z', 32, 0,
+  /* 1959 */ 'f', 'm', 'o', 'v', 'r', 's', 'g', 'e', 'z', 32, 0,
+  /* 1970 */ 'f', 'm', 'o', 'v', 'r', 'd', 'l', 'e', 'z', 32, 0,
+  /* 1981 */ 'f', 'm', 'o', 'v', 'r', 'q', 'l', 'e', 'z', 32, 0,
+  /* 1992 */ 'b', 'r', 'l', 'e', 'z', 32, 0,
+  /* 1999 */ 'm', 'o', 'v', 'r', 'l', 'e', 'z', 32, 0,
+  /* 2008 */ 'f', 'm', 'o', 'v', 'r', 's', 'l', 'e', 'z', 32, 0,
+  /* 2019 */ 'f', 'm', 'o', 'v', 'r', 'd', 'g', 'z', 32, 0,
+  /* 2029 */ 'f', 'm', 'o', 'v', 'r', 'q', 'g', 'z', 32, 0,
+  /* 2039 */ 'b', 'r', 'g', 'z', 32, 0,
+  /* 2045 */ 'm', 'o', 'v', 'r', 'g', 'z', 32, 0,
+  /* 2053 */ 'f', 'm', 'o', 'v', 'r', 's', 'g', 'z', 32, 0,
+  /* 2063 */ 'f', 'm', 'o', 'v', 'r', 'd', 'l', 'z', 32, 0,
+  /* 2073 */ 'f', 'm', 'o', 'v', 'r', 'q', 'l', 'z', 32, 0,
+  /* 2083 */ 'b', 'r', 'l', 'z', 32, 0,
+  /* 2089 */ 'm', 'o', 'v', 'r', 'l', 'z', 32, 0,
+  /* 2097 */ 'f', 'm', 'o', 'v', 'r', 's', 'l', 'z', 32, 0,
+  /* 2107 */ 'f', 'm', 'o', 'v', 'r', 'd', 'n', 'z', 32, 0,
+  /* 2117 */ 'f', 'm', 'o', 'v', 'r', 'q', 'n', 'z', 32, 0,
+  /* 2127 */ 'b', 'r', 'n', 'z', 32, 0,
+  /* 2133 */ 'm', 'o', 'v', 'r', 'n', 'z', 32, 0,
+  /* 2141 */ 'f', 'm', 'o', 'v', 'r', 's', 'n', 'z', 32, 0,
+  /* 2151 */ 'f', 'm', 'o', 'v', 'r', 'q', 'z', 32, 0,
+  /* 2160 */ 'b', 'r', 'z', 32, 0,
+  /* 2165 */ 'm', 'o', 'v', 'r', 'z', 32, 0,
+  /* 2172 */ 'f', 'm', 'o', 'v', 'r', 's', 'z', 32, 0,
+  /* 2181 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'D', 'F', 'P', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2209 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'Q', 'F', 'P', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2237 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'F', 'P', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2264 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'I', 'n', 't', '_', 'F', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2292 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'D', 'F', 'P', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2320 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'Q', 'F', 'P', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2348 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'F', 'P', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2375 */ ';', 32, 'S', 'E', 'L', 'E', 'C', 'T', '_', 'C', 'C', '_', 'I', 'n', 't', '_', 'I', 'C', 'C', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2403 */ 'j', 'm', 'p', 32, '%', 'i', '7', '+', 0,
+  /* 2412 */ 'j', 'm', 'p', 32, '%', 'o', '7', '+', 0,
+  /* 2421 */ 't', 'a', 32, '3', 0,
+  /* 2426 */ 't', 'a', 32, '5', 0,
+  /* 2431 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
+  /* 2444 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
+  /* 2451 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
+  /* 2461 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
+  /* 2476 */ 'l', 'd', 's', 'b', 32, '[', 0,
+  /* 2483 */ 'l', 'd', 'u', 'b', 32, '[', 0,
+  /* 2490 */ 'l', 'd', 'd', 32, '[', 0,
+  /* 2496 */ 'l', 'd', 32, '[', 0,
+  /* 2501 */ 'l', 'd', 's', 'h', 32, '[', 0,
+  /* 2508 */ 'l', 'd', 'u', 'h', 32, '[', 0,
+  /* 2515 */ 's', 'w', 'a', 'p', 32, '[', 0,
+  /* 2522 */ 'l', 'd', 'q', 32, '[', 0,
+  /* 2528 */ 'c', 'a', 's', 32, '[', 0,
+  /* 2534 */ 'l', 'd', 's', 'w', 32, '[', 0,
+  /* 2541 */ 'l', 'd', 'x', 32, '[', 0,
+  /* 2547 */ 'c', 'a', 's', 'x', 32, '[', 0,
+  /* 2554 */ 'f', 'b', 0,
+  /* 2557 */ 'f', 'm', 'o', 'v', 'd', 0,
+  /* 2563 */ 's', 'i', 'a', 'm', 0,
+  /* 2568 */ 's', 'h', 'u', 't', 'd', 'o', 'w', 'n', 0,
+  /* 2577 */ 'n', 'o', 'p', 0,
+  /* 2581 */ 'f', 'm', 'o', 'v', 'q', 0,
+  /* 2587 */ 's', 't', 'b', 'a', 'r', 0,
+  /* 2593 */ 'f', 'm', 'o', 'v', 's', 0,
+  /* 2599 */ 't', 0,
+  /* 2601 */ 'm', 'o', 'v', 0,
+  /* 2605 */ 'f', 'l', 'u', 's', 'h', 'w', 0,
+  };
+#endif
+
+  // Emit the opcode for the instruction.
+  uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
+#ifndef CAPSTONE_DIET
+  // assert(Bits != 0 && "Cannot print this instruction.");
+  SStream_concat(O, "%s", AsmStrs+(Bits & 4095)-1);
+#endif
+
+
+  // Fragment 0 encoded into 4 bits for 12 unique commands.
+  // printf("Frag-0: %u\n", (Bits >> 12) & 15);
+  switch ((Bits >> 12) & 15) {
+  default:   // unreachable.
+  case 0:
+    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, FLUSHW, NOP, SELECT_C...
+    return;
+    break;
+  case 1:
+    // ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
+    printOperand(MI, 1, O); 
+    break;
+  case 2:
+    // ADJCALLSTACKDOWN, ADJCALLSTACKUP, BA, BPGEZapn, BPGEZapt, BPGEZnapn, B...
+    printOperand(MI, 0, O); 
+    break;
+  case 3:
+    // BCOND, BCONDA, BPFCC, BPFCCA, BPFCCANT, BPFCCNT, BPICC, BPICCA, BPICCA...
+    printCCOperand(MI, 1, O); 
+    break;
+  case 4:
+    // BINDri, BINDrr, CALLri, CALLrr, RETTri, RETTrr
+    printMemOperand(MI, 0, O, NULL); 
+    return;
+    break;
+  case 5:
+    // FMOVD_FCC, FMOVD_ICC, FMOVD_XCC, FMOVQ_FCC, FMOVQ_ICC, FMOVQ_XCC, FMOV...
+    printCCOperand(MI, 3, O); 
+    break;
+  case 6:
+    // GETPCX
+    printGetPCX(MI, 0, O); 
+    return;
+    break;
+  case 7:
+    // JMPLri, JMPLrr, LDDFri, LDDFrr, LDFri, LDFrr, LDQFri, LDQFrr, LDSBri, ...
+    printMemOperand(MI, 1, O, NULL); 
+    break;
+  case 8:
+    // LEAX_ADDri, LEA_ADDri
+    printMemOperand(MI, 1, O, "arith"); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 9:
+    // STBri, STBrr, STDFri, STDFrr, STFri, STFrr, STHri, STHrr, STQFri, STQF...
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", ["); 
+    printMemOperand(MI, 0, O, NULL); 
+    SStream_concat(O, "%s", "]"); 
+    return;
+    break;
+  case 10:
+    // TICCri, TICCrr, TXCCri, TXCCrr
+    printCCOperand(MI, 2, O); 
+    break;
+  case 11:
+    // V9FMOVD_FCC, V9FMOVQ_FCC, V9FMOVS_FCC, V9MOVFCCri, V9MOVFCCrr
+    printCCOperand(MI, 4, O); 
+    SStream_concat(O, "%s", " "); 
+    printOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 1 encoded into 4 bits for 16 unique commands.
+  // printf("Frag-1: %u\n", (Bits >> 16) & 15);
+  switch ((Bits >> 16) & 15) {
+  default:   // unreachable.
+  case 0:
+    // ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 1:
+    // ADJCALLSTACKDOWN, ADJCALLSTACKUP, BA, CALL, CMASK16, CMASK32, CMASK8, ...
+    return;
+    break;
+  case 2:
+    // BCOND, BPFCC, FBCOND
+    SStream_concat(O, "%s", " "); 
+    break;
+  case 3:
+    // BCONDA, BPFCCA, FBCONDA
+    SStream_concat(O, "%s", ",a "); 
+    break;
+  case 4:
+    // BPFCCANT
+    SStream_concat(O, "%s", ",a,pn "); 
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 5:
+    // BPFCCNT
+    SStream_concat(O, "%s", ",pn "); 
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 6:
+    // BPICC, FMOVD_ICC, FMOVQ_ICC, FMOVS_ICC, MOVICCri, MOVICCrr, TICCri, TI...
+    SStream_concat(O, "%s", " %icc, "); 
+    break;
+  case 7:
+    // BPICCA
+    SStream_concat(O, "%s", ",a %icc, "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 8:
+    // BPICCANT
+    SStream_concat(O, "%s", ",a,pn %icc, "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 9:
+    // BPICCNT
+    SStream_concat(O, "%s", ",pn %icc, "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 10:
+    // BPXCC, FMOVD_XCC, FMOVQ_XCC, FMOVS_XCC, MOVXCCri, MOVXCCrr, TXCCri, TX...
+    SStream_concat(O, "%s", " %xcc, "); 
+    break;
+  case 11:
+    // BPXCCA
+    SStream_concat(O, "%s", ",a %xcc, "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 12:
+    // BPXCCANT
+    SStream_concat(O, "%s", ",a,pn %xcc, "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 13:
+    // BPXCCNT
+    SStream_concat(O, "%s", ",pn %xcc, "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 14:
+    // CASXrr, CASrr, LDDFri, LDDFrr, LDFri, LDFrr, LDQFri, LDQFrr, LDSBri, L...
+    SStream_concat(O, "%s", "], "); 
+    break;
+  case 15:
+    // FMOVD_FCC, FMOVQ_FCC, FMOVS_FCC, MOVFCCri, MOVFCCrr
+    SStream_concat(O, "%s", " %fcc0, "); 
+    printOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 2 encoded into 2 bits for 3 unique commands.
+  // printf("Frag-2: %u\n", (Bits >> 20) & 3);
+  switch ((Bits >> 20) & 3) {
+  default:   // unreachable.
+  case 0:
+    // ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    break;
+  case 1:
+    // BCOND, BCONDA, BPICC, BPXCC, FABSD, FABSQ, FABSS, FBCOND, FBCONDA, FDT...
+    printOperand(MI, 0, O); 
+    break;
+  case 2:
+    // BPGEZapn, BPGEZapt, BPGEZnapn, BPGEZnapt, BPGZapn, BPGZapt, BPGZnapn, ...
+    printOperand(MI, 1, O); 
+    break;
+  }
+
+
+  // Fragment 3 encoded into 2 bits for 4 unique commands.
+  // printf("Frag-3: %u\n", (Bits >> 22) & 3);
+  switch ((Bits >> 22) & 3) {
+  default:   // unreachable.
+  case 0:
+    // ADDCCri, ADDCCrr, ADDCri, ADDCrr, ADDEri, ADDErr, ADDXC, ADDXCCC, ADDX...
+    return;
+    break;
+  case 1:
+    // FLCMPD, FLCMPS, FMOVD_ICC, FMOVD_XCC, FMOVQ_ICC, FMOVQ_XCC, FMOVS_ICC,...
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 2:
+    // TICCri, TICCrr, TXCCri, TXCCrr
+    SStream_concat(O, "%s", " + "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 3:
+    // WRYri, WRYrr
+    SStream_concat(O, "%s", ", %y"); 
+    return;
+    break;
+  }
+
+
+  // Fragment 4 encoded into 2 bits for 3 unique commands.
+  // printf("Frag-4: %u\n", (Bits >> 24) & 3);
+  switch ((Bits >> 24) & 3) {
+  default:   // unreachable.
+  case 0:
+    // FLCMPD, FLCMPS, V9FCMPD, V9FCMPED, V9FCMPEQ, V9FCMPES, V9FCMPQ, V9FCMP...
+    printOperand(MI, 2, O); 
+    return;
+    break;
+  case 1:
+    // FMOVD_ICC, FMOVD_XCC, FMOVQ_ICC, FMOVQ_XCC, FMOVS_ICC, FMOVS_XCC, MOVI...
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 2:
+    // TLS_ADDXrr, TLS_ADDrr, TLS_LDXrr, TLS_LDrr
+    printOperand(MI, 3, O); 
+    return;
+    break;
+  }
+}
+
+
+/// getRegisterName - This method is automatically generated by tblgen
+/// from the register set description.  This returns the assembler name
+/// for the specified register.
+static const char *getRegisterName(unsigned RegNo)
+{
+  // assert(RegNo && RegNo < 119 && "Invalid register number!");
+
+#ifndef CAPSTONE_DIET
+  static const char AsmStrs[] = {
+  /* 0 */ 'f', '1', '0', 0,
+  /* 4 */ 'f', '2', '0', 0,
+  /* 8 */ 'f', '3', '0', 0,
+  /* 12 */ 'f', '4', '0', 0,
+  /* 16 */ 'f', '5', '0', 0,
+  /* 20 */ 'f', '6', '0', 0,
+  /* 24 */ 'f', 'c', 'c', '0', 0,
+  /* 29 */ 'f', '0', 0,
+  /* 32 */ 'g', '0', 0,
+  /* 35 */ 'i', '0', 0,
+  /* 38 */ 'l', '0', 0,
+  /* 41 */ 'o', '0', 0,
+  /* 44 */ 'f', '1', '1', 0,
+  /* 48 */ 'f', '2', '1', 0,
+  /* 52 */ 'f', '3', '1', 0,
+  /* 56 */ 'f', 'c', 'c', '1', 0,
+  /* 61 */ 'f', '1', 0,
+  /* 64 */ 'g', '1', 0,
+  /* 67 */ 'i', '1', 0,
+  /* 70 */ 'l', '1', 0,
+  /* 73 */ 'o', '1', 0,
+  /* 76 */ 'f', '1', '2', 0,
+  /* 80 */ 'f', '2', '2', 0,
+  /* 84 */ 'f', '3', '2', 0,
+  /* 88 */ 'f', '4', '2', 0,
+  /* 92 */ 'f', '5', '2', 0,
+  /* 96 */ 'f', '6', '2', 0,
+  /* 100 */ 'f', 'c', 'c', '2', 0,
+  /* 105 */ 'f', '2', 0,
+  /* 108 */ 'g', '2', 0,
+  /* 111 */ 'i', '2', 0,
+  /* 114 */ 'l', '2', 0,
+  /* 117 */ 'o', '2', 0,
+  /* 120 */ 'f', '1', '3', 0,
+  /* 124 */ 'f', '2', '3', 0,
+  /* 128 */ 'f', 'c', 'c', '3', 0,
+  /* 133 */ 'f', '3', 0,
+  /* 136 */ 'g', '3', 0,
+  /* 139 */ 'i', '3', 0,
+  /* 142 */ 'l', '3', 0,
+  /* 145 */ 'o', '3', 0,
+  /* 148 */ 'f', '1', '4', 0,
+  /* 152 */ 'f', '2', '4', 0,
+  /* 156 */ 'f', '3', '4', 0,
+  /* 160 */ 'f', '4', '4', 0,
+  /* 164 */ 'f', '5', '4', 0,
+  /* 168 */ 'f', '4', 0,
+  /* 171 */ 'g', '4', 0,
+  /* 174 */ 'i', '4', 0,
+  /* 177 */ 'l', '4', 0,
+  /* 180 */ 'o', '4', 0,
+  /* 183 */ 'f', '1', '5', 0,
+  /* 187 */ 'f', '2', '5', 0,
+  /* 191 */ 'f', '5', 0,
+  /* 194 */ 'g', '5', 0,
+  /* 197 */ 'i', '5', 0,
+  /* 200 */ 'l', '5', 0,
+  /* 203 */ 'o', '5', 0,
+  /* 206 */ 'f', '1', '6', 0,
+  /* 210 */ 'f', '2', '6', 0,
+  /* 214 */ 'f', '3', '6', 0,
+  /* 218 */ 'f', '4', '6', 0,
+  /* 222 */ 'f', '5', '6', 0,
+  /* 226 */ 'f', '6', 0,
+  /* 229 */ 'g', '6', 0,
+  /* 232 */ 'l', '6', 0,
+  /* 235 */ 'f', '1', '7', 0,
+  /* 239 */ 'f', '2', '7', 0,
+  /* 243 */ 'f', '7', 0,
+  /* 246 */ 'g', '7', 0,
+  /* 249 */ 'i', '7', 0,
+  /* 252 */ 'l', '7', 0,
+  /* 255 */ 'o', '7', 0,
+  /* 258 */ 'f', '1', '8', 0,
+  /* 262 */ 'f', '2', '8', 0,
+  /* 266 */ 'f', '3', '8', 0,
+  /* 270 */ 'f', '4', '8', 0,
+  /* 274 */ 'f', '5', '8', 0,
+  /* 278 */ 'f', '8', 0,
+  /* 281 */ 'f', '1', '9', 0,
+  /* 285 */ 'f', '2', '9', 0,
+  /* 289 */ 'f', '9', 0,
+  /* 292 */ 'i', 'c', 'c', 0,
+  /* 296 */ 'f', 'p', 0,
+  /* 299 */ 's', 'p', 0,
+  /* 302 */ 'y', 0,
+  };
+
+  static const uint32_t RegAsmOffset[] = {
+    292, 302, 29, 105, 168, 226, 278, 0, 76, 148, 206, 258, 4, 80, 
+    152, 210, 262, 8, 84, 156, 214, 266, 12, 88, 160, 218, 270, 16, 
+    92, 164, 222, 274, 20, 96, 29, 61, 105, 133, 168, 191, 226, 243, 
+    278, 289, 0, 44, 76, 120, 148, 183, 206, 235, 258, 281, 4, 48, 
+    80, 124, 152, 187, 210, 239, 262, 285, 8, 52, 24, 56, 100, 128, 
+    32, 64, 108, 136, 171, 194, 229, 246, 35, 67, 111, 139, 174, 197, 
+    296, 249, 38, 70, 114, 142, 177, 200, 232, 252, 41, 73, 117, 145, 
+    180, 203, 299, 255, 29, 168, 278, 76, 206, 4, 152, 262, 84, 214, 
+    12, 160, 270, 92, 222, 20, 
+  };
+
+  //int i;
+  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
+  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
+  //printf("*************************\n");
+  return AsmStrs+RegAsmOffset[RegNo-1];
+#else
+  return NULL;
+#endif
+}
+
+#ifdef PRINT_ALIAS_INSTR
+#undef PRINT_ALIAS_INSTR
+
+static char *printAliasInstr(MCInst *MI, SStream *OS, void *info)
+{
+#define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg)))
+  const char *AsmString;
+  char *tmp, *AsmMnem, *AsmOps, *c;
+  switch (MCInst_getOpcode(MI)) {
+  default: return NULL;
+  case SP_RESTORErr:
+    if (MCInst_getNumOperands(MI) == 3 &&
+        MCOperand_getReg(MCInst_getOperand(MI, 0)) == SP_G0 &&
+        MCOperand_getReg(MCInst_getOperand(MI, 1)) == SP_G0 &&
+        MCOperand_getReg(MCInst_getOperand(MI, 2)) == SP_G0) {
+      // (RESTORErr G0, G0, G0)
+      AsmString = "restore";
+      break;
+    }
+    return NULL;
+  case SP_RET:
+    if (MCInst_getNumOperands(MI) == 1 &&
+        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
+        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 8) {
+      // (RET 8)
+      AsmString = "ret";
+      break;
+    }
+    return NULL;
+  case SP_RETL:
+    if (MCInst_getNumOperands(MI) == 1 &&
+        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
+        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 8) {
+      // (RETL 8)
+      AsmString = "retl";
+      break;
+    }
+    return NULL;
+  }
+
+  tmp = cs_strdup(AsmString);
+  AsmMnem = tmp;
+  AsmOps = strchr(tmp, ' ');
+  if (AsmOps) {
+    *AsmOps = '\0';
+    AsmOps += 1;
+  }
+  SStream_concat(OS, "%s", AsmMnem);
+  if (AsmOps) {
+    SStream_concat(OS, "\t");
+    for (c = AsmOps; *c; c++) {
+      if (*c == '$') {
+        c += 1;
+        printOperand(MI, *c - 1, OS);
+      } else {
+        SStream_concat(OS, "%c", *c);
+      }
+    }
+  }
+  return tmp;
+}
+
+#endif // PRINT_ALIAS_INSTR
diff --git a/arch/Sparc/SparcGenDisassemblerTables.inc b/arch/Sparc/SparcGenDisassemblerTables.inc
new file mode 100644
index 0000000..772e267
--- /dev/null
+++ b/arch/Sparc/SparcGenDisassemblerTables.inc
@@ -0,0 +1,2019 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|* * Sparc Disassembler                                                         *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include "../../MCInst.h"
+#include "../../LEB128.h"
+
+// Helper function for extracting fields from encoded instructions.
+#define FieldFromInstruction(fname, InsnType) \
+static InsnType fname(InsnType insn, unsigned startBit, unsigned numBits) \
+{ \
+  InsnType fieldMask; \
+  if (numBits == sizeof(InsnType)*8) \
+    fieldMask = (InsnType)(-1LL); \
+  else \
+    fieldMask = (((InsnType)1 << numBits) - 1) << startBit; \
+  return (insn & fieldMask) >> startBit; \
+}
+
+static uint8_t DecoderTableSparc32[] = {
+/* 0 */       MCD_OPC_ExtractField, 30, 2,  // Inst{31-30} ...
+/* 3 */       MCD_OPC_FilterValue, 0, 13, 2, // Skip to: 532
+/* 7 */       MCD_OPC_ExtractField, 22, 3,  // Inst{24-22} ...
+/* 10 */      MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 24
+/* 14 */      MCD_OPC_CheckField, 25, 5, 0, 160, 22, // Skip to: 5812
+/* 20 */      MCD_OPC_Decode, 208, 3, 0, // Opcode: UNIMP
+/* 24 */      MCD_OPC_FilterValue, 1, 103, 0, // Skip to: 131
+/* 28 */      MCD_OPC_ExtractField, 19, 3,  // Inst{21-19} ...
+/* 31 */      MCD_OPC_FilterValue, 0, 25, 0, // Skip to: 60
+/* 35 */      MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 38 */      MCD_OPC_FilterValue, 0, 7, 0, // Skip to: 49
+/* 42 */      MCD_OPC_CheckPredicate, 0, 134, 22, // Skip to: 5812
+/* 46 */      MCD_OPC_Decode, 91, 1, // Opcode: BPICCNT
+/* 49 */      MCD_OPC_FilterValue, 1, 127, 22, // Skip to: 5812
+/* 53 */      MCD_OPC_CheckPredicate, 0, 123, 22, // Skip to: 5812
+/* 57 */      MCD_OPC_Decode, 90, 1, // Opcode: BPICCANT
+/* 60 */      MCD_OPC_FilterValue, 1, 25, 0, // Skip to: 89
+/* 64 */      MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 67 */      MCD_OPC_FilterValue, 0, 7, 0, // Skip to: 78
+/* 71 */      MCD_OPC_CheckPredicate, 0, 105, 22, // Skip to: 5812
+/* 75 */      MCD_OPC_Decode, 88, 1, // Opcode: BPICC
+/* 78 */      MCD_OPC_FilterValue, 1, 98, 22, // Skip to: 5812
+/* 82 */      MCD_OPC_CheckPredicate, 0, 94, 22, // Skip to: 5812
+/* 86 */      MCD_OPC_Decode, 89, 1, // Opcode: BPICCA
+/* 89 */      MCD_OPC_FilterValue, 4, 17, 0, // Skip to: 110
+/* 93 */      MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 96 */      MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 103
+/* 100 */     MCD_OPC_Decode, 107, 1, // Opcode: BPXCCNT
+/* 103 */     MCD_OPC_FilterValue, 1, 73, 22, // Skip to: 5812
+/* 107 */     MCD_OPC_Decode, 106, 1, // Opcode: BPXCCANT
+/* 110 */     MCD_OPC_FilterValue, 5, 66, 22, // Skip to: 5812
+/* 114 */     MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 117 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 124
+/* 121 */     MCD_OPC_Decode, 104, 1, // Opcode: BPXCC
+/* 124 */     MCD_OPC_FilterValue, 1, 52, 22, // Skip to: 5812
+/* 128 */     MCD_OPC_Decode, 105, 1, // Opcode: BPXCCA
+/* 131 */     MCD_OPC_FilterValue, 2, 26, 0, // Skip to: 161
+/* 135 */     MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 138 */     MCD_OPC_FilterValue, 0, 12, 0, // Skip to: 154
+/* 142 */     MCD_OPC_CheckField, 25, 4, 8, 3, 0, // Skip to: 151
+/* 148 */     MCD_OPC_Decode, 70, 0, // Opcode: BA
+/* 151 */     MCD_OPC_Decode, 71, 2, // Opcode: BCOND
+/* 154 */     MCD_OPC_FilterValue, 1, 22, 22, // Skip to: 5812
+/* 158 */     MCD_OPC_Decode, 72, 2, // Opcode: BCONDA
+/* 161 */     MCD_OPC_FilterValue, 3, 255, 0, // Skip to: 420
+/* 165 */     MCD_OPC_ExtractField, 25, 5,  // Inst{29-25} ...
+/* 168 */     MCD_OPC_FilterValue, 1, 17, 0, // Skip to: 189
+/* 172 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 175 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 182
+/* 179 */     MCD_OPC_Decode, 110, 3, // Opcode: BPZnapn
+/* 182 */     MCD_OPC_FilterValue, 1, 250, 21, // Skip to: 5812
+/* 186 */     MCD_OPC_Decode, 111, 3, // Opcode: BPZnapt
+/* 189 */     MCD_OPC_FilterValue, 2, 17, 0, // Skip to: 210
+/* 193 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 196 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 203
+/* 200 */     MCD_OPC_Decode, 94, 3, // Opcode: BPLEZnapn
+/* 203 */     MCD_OPC_FilterValue, 1, 229, 21, // Skip to: 5812
+/* 207 */     MCD_OPC_Decode, 95, 3, // Opcode: BPLEZnapt
+/* 210 */     MCD_OPC_FilterValue, 3, 17, 0, // Skip to: 231
+/* 214 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 217 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 224
+/* 221 */     MCD_OPC_Decode, 98, 3, // Opcode: BPLZnapn
+/* 224 */     MCD_OPC_FilterValue, 1, 208, 21, // Skip to: 5812
+/* 228 */     MCD_OPC_Decode, 99, 3, // Opcode: BPLZnapt
+/* 231 */     MCD_OPC_FilterValue, 5, 17, 0, // Skip to: 252
+/* 235 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 238 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 245
+/* 242 */     MCD_OPC_Decode, 102, 3, // Opcode: BPNZnapn
+/* 245 */     MCD_OPC_FilterValue, 1, 187, 21, // Skip to: 5812
+/* 249 */     MCD_OPC_Decode, 103, 3, // Opcode: BPNZnapt
+/* 252 */     MCD_OPC_FilterValue, 6, 17, 0, // Skip to: 273
+/* 256 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 259 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 266
+/* 263 */     MCD_OPC_Decode, 86, 3, // Opcode: BPGZnapn
+/* 266 */     MCD_OPC_FilterValue, 1, 166, 21, // Skip to: 5812
+/* 270 */     MCD_OPC_Decode, 87, 3, // Opcode: BPGZnapt
+/* 273 */     MCD_OPC_FilterValue, 7, 17, 0, // Skip to: 294
+/* 277 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 280 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 287
+/* 284 */     MCD_OPC_Decode, 82, 3, // Opcode: BPGEZnapn
+/* 287 */     MCD_OPC_FilterValue, 1, 145, 21, // Skip to: 5812
+/* 291 */     MCD_OPC_Decode, 83, 3, // Opcode: BPGEZnapt
+/* 294 */     MCD_OPC_FilterValue, 17, 17, 0, // Skip to: 315
+/* 298 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 301 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 308
+/* 305 */     MCD_OPC_Decode, 108, 3, // Opcode: BPZapn
+/* 308 */     MCD_OPC_FilterValue, 1, 124, 21, // Skip to: 5812
+/* 312 */     MCD_OPC_Decode, 109, 3, // Opcode: BPZapt
+/* 315 */     MCD_OPC_FilterValue, 18, 17, 0, // Skip to: 336
+/* 319 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 322 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 329
+/* 326 */     MCD_OPC_Decode, 92, 3, // Opcode: BPLEZapn
+/* 329 */     MCD_OPC_FilterValue, 1, 103, 21, // Skip to: 5812
+/* 333 */     MCD_OPC_Decode, 93, 3, // Opcode: BPLEZapt
+/* 336 */     MCD_OPC_FilterValue, 19, 17, 0, // Skip to: 357
+/* 340 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 343 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 350
+/* 347 */     MCD_OPC_Decode, 96, 3, // Opcode: BPLZapn
+/* 350 */     MCD_OPC_FilterValue, 1, 82, 21, // Skip to: 5812
+/* 354 */     MCD_OPC_Decode, 97, 3, // Opcode: BPLZapt
+/* 357 */     MCD_OPC_FilterValue, 21, 17, 0, // Skip to: 378
+/* 361 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 364 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 371
+/* 368 */     MCD_OPC_Decode, 100, 3, // Opcode: BPNZapn
+/* 371 */     MCD_OPC_FilterValue, 1, 61, 21, // Skip to: 5812
+/* 375 */     MCD_OPC_Decode, 101, 3, // Opcode: BPNZapt
+/* 378 */     MCD_OPC_FilterValue, 22, 17, 0, // Skip to: 399
+/* 382 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 385 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 392
+/* 389 */     MCD_OPC_Decode, 84, 3, // Opcode: BPGZapn
+/* 392 */     MCD_OPC_FilterValue, 1, 40, 21, // Skip to: 5812
+/* 396 */     MCD_OPC_Decode, 85, 3, // Opcode: BPGZapt
+/* 399 */     MCD_OPC_FilterValue, 23, 33, 21, // Skip to: 5812
+/* 403 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 406 */     MCD_OPC_FilterValue, 0, 3, 0, // Skip to: 413
+/* 410 */     MCD_OPC_Decode, 80, 3, // Opcode: BPGEZapn
+/* 413 */     MCD_OPC_FilterValue, 1, 19, 21, // Skip to: 5812
+/* 417 */     MCD_OPC_Decode, 81, 3, // Opcode: BPGEZapt
+/* 420 */     MCD_OPC_FilterValue, 4, 20, 0, // Skip to: 444
+/* 424 */     MCD_OPC_CheckField, 25, 5, 0, 10, 0, // Skip to: 440
+/* 430 */     MCD_OPC_CheckField, 0, 22, 0, 4, 0, // Skip to: 440
+/* 436 */     MCD_OPC_Decode, 221, 2, 4, // Opcode: NOP
+/* 440 */     MCD_OPC_Decode, 132, 3, 5, // Opcode: SETHIi
+/* 444 */     MCD_OPC_FilterValue, 5, 61, 0, // Skip to: 509
+/* 448 */     MCD_OPC_ExtractField, 19, 1,  // Inst{19} ...
+/* 451 */     MCD_OPC_FilterValue, 0, 25, 0, // Skip to: 480
+/* 455 */     MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 458 */     MCD_OPC_FilterValue, 0, 7, 0, // Skip to: 469
+/* 462 */     MCD_OPC_CheckPredicate, 0, 226, 20, // Skip to: 5812
+/* 466 */     MCD_OPC_Decode, 79, 6, // Opcode: BPFCCNT
+/* 469 */     MCD_OPC_FilterValue, 1, 219, 20, // Skip to: 5812
+/* 473 */     MCD_OPC_CheckPredicate, 0, 215, 20, // Skip to: 5812
+/* 477 */     MCD_OPC_Decode, 78, 6, // Opcode: BPFCCANT
+/* 480 */     MCD_OPC_FilterValue, 1, 208, 20, // Skip to: 5812
+/* 484 */     MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 487 */     MCD_OPC_FilterValue, 0, 7, 0, // Skip to: 498
+/* 491 */     MCD_OPC_CheckPredicate, 0, 197, 20, // Skip to: 5812
+/* 495 */     MCD_OPC_Decode, 76, 6, // Opcode: BPFCC
+/* 498 */     MCD_OPC_FilterValue, 1, 190, 20, // Skip to: 5812
+/* 502 */     MCD_OPC_CheckPredicate, 0, 186, 20, // Skip to: 5812
+/* 506 */     MCD_OPC_Decode, 77, 6, // Opcode: BPFCCA
+/* 509 */     MCD_OPC_FilterValue, 6, 179, 20, // Skip to: 5812
+/* 513 */     MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 516 */     MCD_OPC_FilterValue, 0, 4, 0, // Skip to: 524
+/* 520 */     MCD_OPC_Decode, 148, 1, 2, // Opcode: FBCOND
+/* 524 */     MCD_OPC_FilterValue, 1, 164, 20, // Skip to: 5812
+/* 528 */     MCD_OPC_Decode, 149, 1, 2, // Opcode: FBCONDA
+/* 532 */     MCD_OPC_FilterValue, 1, 3, 0, // Skip to: 539
+/* 536 */     MCD_OPC_Decode, 113, 7, // Opcode: CALL
+/* 539 */     MCD_OPC_FilterValue, 2, 84, 18, // Skip to: 5235
+/* 543 */     MCD_OPC_ExtractField, 19, 6,  // Inst{24-19} ...
+/* 546 */     MCD_OPC_FilterValue, 0, 23, 0, // Skip to: 573
+/* 550 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 553 */     MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 566
+/* 557 */     MCD_OPC_CheckField, 5, 8, 0, 129, 20, // Skip to: 5812
+/* 563 */     MCD_OPC_Decode, 30, 8, // Opcode: ADDrr
+/* 566 */     MCD_OPC_FilterValue, 1, 122, 20, // Skip to: 5812
+/* 570 */     MCD_OPC_Decode, 29, 9, // Opcode: ADDri
+/* 573 */     MCD_OPC_FilterValue, 1, 23, 0, // Skip to: 600
+/* 577 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 580 */     MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 593
+/* 584 */     MCD_OPC_CheckField, 5, 8, 0, 102, 20, // Skip to: 5812
+/* 590 */     MCD_OPC_Decode, 45, 8, // Opcode: ANDrr
+/* 593 */     MCD_OPC_FilterValue, 1, 95, 20, // Skip to: 5812
+/* 597 */     MCD_OPC_Decode, 44, 9, // Opcode: ANDri
+/* 600 */     MCD_OPC_FilterValue, 2, 25, 0, // Skip to: 629
+/* 604 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 607 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 621
+/* 611 */     MCD_OPC_CheckField, 5, 8, 0, 75, 20, // Skip to: 5812
+/* 617 */     MCD_OPC_Decode, 232, 2, 8, // Opcode: ORrr
+/* 621 */     MCD_OPC_FilterValue, 1, 67, 20, // Skip to: 5812
+/* 625 */     MCD_OPC_Decode, 231, 2, 9, // Opcode: ORri
+/* 629 */     MCD_OPC_FilterValue, 3, 25, 0, // Skip to: 658
+/* 633 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 636 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 650
+/* 640 */     MCD_OPC_CheckField, 5, 8, 0, 46, 20, // Skip to: 5812
+/* 646 */     MCD_OPC_Decode, 234, 3, 8, // Opcode: XORrr
+/* 650 */     MCD_OPC_FilterValue, 1, 38, 20, // Skip to: 5812
+/* 654 */     MCD_OPC_Decode, 233, 3, 9, // Opcode: XORri
+/* 658 */     MCD_OPC_FilterValue, 4, 25, 0, // Skip to: 687
+/* 662 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 665 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 679
+/* 669 */     MCD_OPC_CheckField, 5, 8, 0, 17, 20, // Skip to: 5812
+/* 675 */     MCD_OPC_Decode, 175, 3, 8, // Opcode: SUBrr
+/* 679 */     MCD_OPC_FilterValue, 1, 9, 20, // Skip to: 5812
+/* 683 */     MCD_OPC_Decode, 174, 3, 9, // Opcode: SUBri
+/* 687 */     MCD_OPC_FilterValue, 5, 23, 0, // Skip to: 714
+/* 691 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 694 */     MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 707
+/* 698 */     MCD_OPC_CheckField, 5, 8, 0, 244, 19, // Skip to: 5812
+/* 704 */     MCD_OPC_Decode, 40, 8, // Opcode: ANDNrr
+/* 707 */     MCD_OPC_FilterValue, 1, 237, 19, // Skip to: 5812
+/* 711 */     MCD_OPC_Decode, 39, 9, // Opcode: ANDNri
+/* 714 */     MCD_OPC_FilterValue, 6, 25, 0, // Skip to: 743
+/* 718 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 721 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 735
+/* 725 */     MCD_OPC_CheckField, 5, 8, 0, 217, 19, // Skip to: 5812
+/* 731 */     MCD_OPC_Decode, 227, 2, 8, // Opcode: ORNrr
+/* 735 */     MCD_OPC_FilterValue, 1, 209, 19, // Skip to: 5812
+/* 739 */     MCD_OPC_Decode, 226, 2, 9, // Opcode: ORNri
+/* 743 */     MCD_OPC_FilterValue, 7, 25, 0, // Skip to: 772
+/* 747 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 750 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 764
+/* 754 */     MCD_OPC_CheckField, 5, 8, 0, 188, 19, // Skip to: 5812
+/* 760 */     MCD_OPC_Decode, 228, 3, 8, // Opcode: XNORrr
+/* 764 */     MCD_OPC_FilterValue, 1, 180, 19, // Skip to: 5812
+/* 768 */     MCD_OPC_Decode, 227, 3, 9, // Opcode: XNORri
+/* 772 */     MCD_OPC_FilterValue, 8, 23, 0, // Skip to: 799
+/* 776 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 779 */     MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 792
+/* 783 */     MCD_OPC_CheckField, 5, 8, 0, 159, 19, // Skip to: 5812
+/* 789 */     MCD_OPC_Decode, 22, 8, // Opcode: ADDCrr
+/* 792 */     MCD_OPC_FilterValue, 1, 152, 19, // Skip to: 5812
+/* 796 */     MCD_OPC_Decode, 21, 9, // Opcode: ADDCri
+/* 799 */     MCD_OPC_FilterValue, 9, 25, 0, // Skip to: 828
+/* 803 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 806 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 820
+/* 810 */     MCD_OPC_CheckField, 5, 8, 0, 132, 19, // Skip to: 5812
+/* 816 */     MCD_OPC_Decode, 220, 2, 10, // Opcode: MULXrr
+/* 820 */     MCD_OPC_FilterValue, 1, 124, 19, // Skip to: 5812
+/* 824 */     MCD_OPC_Decode, 219, 2, 11, // Opcode: MULXri
+/* 828 */     MCD_OPC_FilterValue, 10, 25, 0, // Skip to: 857
+/* 832 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 835 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 849
+/* 839 */     MCD_OPC_CheckField, 5, 8, 0, 103, 19, // Skip to: 5812
+/* 845 */     MCD_OPC_Decode, 207, 3, 8, // Opcode: UMULrr
+/* 849 */     MCD_OPC_FilterValue, 1, 95, 19, // Skip to: 5812
+/* 853 */     MCD_OPC_Decode, 206, 3, 9, // Opcode: UMULri
+/* 857 */     MCD_OPC_FilterValue, 11, 25, 0, // Skip to: 886
+/* 861 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 864 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 878
+/* 868 */     MCD_OPC_CheckField, 5, 8, 0, 74, 19, // Skip to: 5812
+/* 874 */     MCD_OPC_Decode, 142, 3, 8, // Opcode: SMULrr
+/* 878 */     MCD_OPC_FilterValue, 1, 66, 19, // Skip to: 5812
+/* 882 */     MCD_OPC_Decode, 141, 3, 9, // Opcode: SMULri
+/* 886 */     MCD_OPC_FilterValue, 12, 25, 0, // Skip to: 915
+/* 890 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 893 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 907
+/* 897 */     MCD_OPC_CheckField, 5, 8, 0, 45, 19, // Skip to: 5812
+/* 903 */     MCD_OPC_Decode, 169, 3, 8, // Opcode: SUBCrr
+/* 907 */     MCD_OPC_FilterValue, 1, 37, 19, // Skip to: 5812
+/* 911 */     MCD_OPC_Decode, 168, 3, 9, // Opcode: SUBCri
+/* 915 */     MCD_OPC_FilterValue, 13, 25, 0, // Skip to: 944
+/* 919 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 922 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 936
+/* 926 */     MCD_OPC_CheckField, 5, 8, 0, 16, 19, // Skip to: 5812
+/* 932 */     MCD_OPC_Decode, 200, 3, 10, // Opcode: UDIVXrr
+/* 936 */     MCD_OPC_FilterValue, 1, 8, 19, // Skip to: 5812
+/* 940 */     MCD_OPC_Decode, 199, 3, 11, // Opcode: UDIVXri
+/* 944 */     MCD_OPC_FilterValue, 14, 25, 0, // Skip to: 973
+/* 948 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 951 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 965
+/* 955 */     MCD_OPC_CheckField, 5, 8, 0, 243, 18, // Skip to: 5812
+/* 961 */     MCD_OPC_Decode, 202, 3, 8, // Opcode: UDIVrr
+/* 965 */     MCD_OPC_FilterValue, 1, 235, 18, // Skip to: 5812
+/* 969 */     MCD_OPC_Decode, 201, 3, 9, // Opcode: UDIVri
+/* 973 */     MCD_OPC_FilterValue, 15, 25, 0, // Skip to: 1002
+/* 977 */     MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 980 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 994
+/* 984 */     MCD_OPC_CheckField, 5, 8, 0, 214, 18, // Skip to: 5812
+/* 990 */     MCD_OPC_Decode, 250, 2, 8, // Opcode: SDIVrr
+/* 994 */     MCD_OPC_FilterValue, 1, 206, 18, // Skip to: 5812
+/* 998 */     MCD_OPC_Decode, 249, 2, 9, // Opcode: SDIVri
+/* 1002 */    MCD_OPC_FilterValue, 16, 23, 0, // Skip to: 1029
+/* 1006 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1009 */    MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 1022
+/* 1013 */    MCD_OPC_CheckField, 5, 8, 0, 185, 18, // Skip to: 5812
+/* 1019 */    MCD_OPC_Decode, 20, 8, // Opcode: ADDCCrr
+/* 1022 */    MCD_OPC_FilterValue, 1, 178, 18, // Skip to: 5812
+/* 1026 */    MCD_OPC_Decode, 19, 9, // Opcode: ADDCCri
+/* 1029 */    MCD_OPC_FilterValue, 17, 23, 0, // Skip to: 1056
+/* 1033 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1036 */    MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 1049
+/* 1040 */    MCD_OPC_CheckField, 5, 8, 0, 158, 18, // Skip to: 5812
+/* 1046 */    MCD_OPC_Decode, 36, 8, // Opcode: ANDCCrr
+/* 1049 */    MCD_OPC_FilterValue, 1, 151, 18, // Skip to: 5812
+/* 1053 */    MCD_OPC_Decode, 35, 9, // Opcode: ANDCCri
+/* 1056 */    MCD_OPC_FilterValue, 18, 25, 0, // Skip to: 1085
+/* 1060 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1063 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1077
+/* 1067 */    MCD_OPC_CheckField, 5, 8, 0, 131, 18, // Skip to: 5812
+/* 1073 */    MCD_OPC_Decode, 223, 2, 8, // Opcode: ORCCrr
+/* 1077 */    MCD_OPC_FilterValue, 1, 123, 18, // Skip to: 5812
+/* 1081 */    MCD_OPC_Decode, 222, 2, 9, // Opcode: ORCCri
+/* 1085 */    MCD_OPC_FilterValue, 19, 25, 0, // Skip to: 1114
+/* 1089 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1092 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1106
+/* 1096 */    MCD_OPC_CheckField, 5, 8, 0, 102, 18, // Skip to: 5812
+/* 1102 */    MCD_OPC_Decode, 230, 3, 8, // Opcode: XORCCrr
+/* 1106 */    MCD_OPC_FilterValue, 1, 94, 18, // Skip to: 5812
+/* 1110 */    MCD_OPC_Decode, 229, 3, 9, // Opcode: XORCCri
+/* 1114 */    MCD_OPC_FilterValue, 20, 44, 0, // Skip to: 1162
+/* 1118 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1121 */    MCD_OPC_FilterValue, 0, 20, 0, // Skip to: 1145
+/* 1125 */    MCD_OPC_ExtractField, 5, 8,  // Inst{12-5} ...
+/* 1128 */    MCD_OPC_FilterValue, 0, 72, 18, // Skip to: 5812
+/* 1132 */    MCD_OPC_CheckField, 25, 5, 0, 3, 0, // Skip to: 1141
+/* 1138 */    MCD_OPC_Decode, 122, 12, // Opcode: CMPrr
+/* 1141 */    MCD_OPC_Decode, 167, 3, 8, // Opcode: SUBCCrr
+/* 1145 */    MCD_OPC_FilterValue, 1, 55, 18, // Skip to: 5812
+/* 1149 */    MCD_OPC_CheckField, 25, 5, 0, 3, 0, // Skip to: 1158
+/* 1155 */    MCD_OPC_Decode, 121, 13, // Opcode: CMPri
+/* 1158 */    MCD_OPC_Decode, 166, 3, 9, // Opcode: SUBCCri
+/* 1162 */    MCD_OPC_FilterValue, 21, 23, 0, // Skip to: 1189
+/* 1166 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1169 */    MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 1182
+/* 1173 */    MCD_OPC_CheckField, 5, 8, 0, 25, 18, // Skip to: 5812
+/* 1179 */    MCD_OPC_Decode, 38, 8, // Opcode: ANDNCCrr
+/* 1182 */    MCD_OPC_FilterValue, 1, 18, 18, // Skip to: 5812
+/* 1186 */    MCD_OPC_Decode, 37, 9, // Opcode: ANDNCCri
+/* 1189 */    MCD_OPC_FilterValue, 22, 25, 0, // Skip to: 1218
+/* 1193 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1196 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1210
+/* 1200 */    MCD_OPC_CheckField, 5, 8, 0, 254, 17, // Skip to: 5812
+/* 1206 */    MCD_OPC_Decode, 225, 2, 8, // Opcode: ORNCCrr
+/* 1210 */    MCD_OPC_FilterValue, 1, 246, 17, // Skip to: 5812
+/* 1214 */    MCD_OPC_Decode, 224, 2, 9, // Opcode: ORNCCri
+/* 1218 */    MCD_OPC_FilterValue, 23, 25, 0, // Skip to: 1247
+/* 1222 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1225 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1239
+/* 1229 */    MCD_OPC_CheckField, 5, 8, 0, 225, 17, // Skip to: 5812
+/* 1235 */    MCD_OPC_Decode, 225, 3, 8, // Opcode: XNORCCrr
+/* 1239 */    MCD_OPC_FilterValue, 1, 217, 17, // Skip to: 5812
+/* 1243 */    MCD_OPC_Decode, 224, 3, 9, // Opcode: XNORCCri
+/* 1247 */    MCD_OPC_FilterValue, 24, 23, 0, // Skip to: 1274
+/* 1251 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1254 */    MCD_OPC_FilterValue, 0, 9, 0, // Skip to: 1267
+/* 1258 */    MCD_OPC_CheckField, 5, 8, 0, 196, 17, // Skip to: 5812
+/* 1264 */    MCD_OPC_Decode, 24, 8, // Opcode: ADDErr
+/* 1267 */    MCD_OPC_FilterValue, 1, 189, 17, // Skip to: 5812
+/* 1271 */    MCD_OPC_Decode, 23, 9, // Opcode: ADDEri
+/* 1274 */    MCD_OPC_FilterValue, 26, 25, 0, // Skip to: 1303
+/* 1278 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1281 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1295
+/* 1285 */    MCD_OPC_CheckField, 5, 8, 0, 169, 17, // Skip to: 5812
+/* 1291 */    MCD_OPC_Decode, 204, 3, 8, // Opcode: UMULCCrr
+/* 1295 */    MCD_OPC_FilterValue, 1, 161, 17, // Skip to: 5812
+/* 1299 */    MCD_OPC_Decode, 203, 3, 9, // Opcode: UMULCCri
+/* 1303 */    MCD_OPC_FilterValue, 27, 25, 0, // Skip to: 1332
+/* 1307 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1310 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1324
+/* 1314 */    MCD_OPC_CheckField, 5, 8, 0, 140, 17, // Skip to: 5812
+/* 1320 */    MCD_OPC_Decode, 140, 3, 8, // Opcode: SMULCCrr
+/* 1324 */    MCD_OPC_FilterValue, 1, 132, 17, // Skip to: 5812
+/* 1328 */    MCD_OPC_Decode, 139, 3, 9, // Opcode: SMULCCri
+/* 1332 */    MCD_OPC_FilterValue, 28, 25, 0, // Skip to: 1361
+/* 1336 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1339 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1353
+/* 1343 */    MCD_OPC_CheckField, 5, 8, 0, 111, 17, // Skip to: 5812
+/* 1349 */    MCD_OPC_Decode, 171, 3, 8, // Opcode: SUBErr
+/* 1353 */    MCD_OPC_FilterValue, 1, 103, 17, // Skip to: 5812
+/* 1357 */    MCD_OPC_Decode, 170, 3, 9, // Opcode: SUBEri
+/* 1361 */    MCD_OPC_FilterValue, 30, 25, 0, // Skip to: 1390
+/* 1365 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1368 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1382
+/* 1372 */    MCD_OPC_CheckField, 5, 8, 0, 82, 17, // Skip to: 5812
+/* 1378 */    MCD_OPC_Decode, 198, 3, 8, // Opcode: UDIVCCrr
+/* 1382 */    MCD_OPC_FilterValue, 1, 74, 17, // Skip to: 5812
+/* 1386 */    MCD_OPC_Decode, 197, 3, 9, // Opcode: UDIVCCri
+/* 1390 */    MCD_OPC_FilterValue, 31, 25, 0, // Skip to: 1419
+/* 1394 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1397 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1411
+/* 1401 */    MCD_OPC_CheckField, 5, 8, 0, 53, 17, // Skip to: 5812
+/* 1407 */    MCD_OPC_Decode, 246, 2, 8, // Opcode: SDIVCCrr
+/* 1411 */    MCD_OPC_FilterValue, 1, 45, 17, // Skip to: 5812
+/* 1415 */    MCD_OPC_Decode, 245, 2, 9, // Opcode: SDIVCCri
+/* 1419 */    MCD_OPC_FilterValue, 32, 25, 0, // Skip to: 1448
+/* 1423 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1426 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1440
+/* 1430 */    MCD_OPC_CheckField, 5, 8, 0, 24, 17, // Skip to: 5812
+/* 1436 */    MCD_OPC_Decode, 183, 3, 8, // Opcode: TADDCCrr
+/* 1440 */    MCD_OPC_FilterValue, 1, 16, 17, // Skip to: 5812
+/* 1444 */    MCD_OPC_Decode, 182, 3, 9, // Opcode: TADDCCri
+/* 1448 */    MCD_OPC_FilterValue, 33, 25, 0, // Skip to: 1477
+/* 1452 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1455 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1469
+/* 1459 */    MCD_OPC_CheckField, 5, 8, 0, 251, 16, // Skip to: 5812
+/* 1465 */    MCD_OPC_Decode, 194, 3, 8, // Opcode: TSUBCCrr
+/* 1469 */    MCD_OPC_FilterValue, 1, 243, 16, // Skip to: 5812
+/* 1473 */    MCD_OPC_Decode, 193, 3, 9, // Opcode: TSUBCCri
+/* 1477 */    MCD_OPC_FilterValue, 34, 25, 0, // Skip to: 1506
+/* 1481 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1484 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1498
+/* 1488 */    MCD_OPC_CheckField, 5, 8, 0, 222, 16, // Skip to: 5812
+/* 1494 */    MCD_OPC_Decode, 181, 3, 8, // Opcode: TADDCCTVrr
+/* 1498 */    MCD_OPC_FilterValue, 1, 214, 16, // Skip to: 5812
+/* 1502 */    MCD_OPC_Decode, 180, 3, 9, // Opcode: TADDCCTVri
+/* 1506 */    MCD_OPC_FilterValue, 35, 25, 0, // Skip to: 1535
+/* 1510 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1513 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1527
+/* 1517 */    MCD_OPC_CheckField, 5, 8, 0, 193, 16, // Skip to: 5812
+/* 1523 */    MCD_OPC_Decode, 192, 3, 8, // Opcode: TSUBCCTVrr
+/* 1527 */    MCD_OPC_FilterValue, 1, 185, 16, // Skip to: 5812
+/* 1531 */    MCD_OPC_Decode, 191, 3, 9, // Opcode: TSUBCCTVri
+/* 1535 */    MCD_OPC_FilterValue, 37, 50, 0, // Skip to: 1589
+/* 1539 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1542 */    MCD_OPC_FilterValue, 0, 25, 0, // Skip to: 1571
+/* 1546 */    MCD_OPC_ExtractField, 12, 1,  // Inst{12} ...
+/* 1549 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1563
+/* 1553 */    MCD_OPC_CheckField, 5, 7, 0, 157, 16, // Skip to: 5812
+/* 1559 */    MCD_OPC_Decode, 138, 3, 8, // Opcode: SLLrr
+/* 1563 */    MCD_OPC_FilterValue, 1, 149, 16, // Skip to: 5812
+/* 1567 */    MCD_OPC_Decode, 136, 3, 14, // Opcode: SLLXrr
+/* 1571 */    MCD_OPC_FilterValue, 1, 141, 16, // Skip to: 5812
+/* 1575 */    MCD_OPC_CheckField, 12, 1, 1, 4, 0, // Skip to: 1585
+/* 1581 */    MCD_OPC_Decode, 135, 3, 15, // Opcode: SLLXri
+/* 1585 */    MCD_OPC_Decode, 137, 3, 9, // Opcode: SLLri
+/* 1589 */    MCD_OPC_FilterValue, 38, 50, 0, // Skip to: 1643
+/* 1593 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1596 */    MCD_OPC_FilterValue, 0, 25, 0, // Skip to: 1625
+/* 1600 */    MCD_OPC_ExtractField, 12, 1,  // Inst{12} ...
+/* 1603 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1617
+/* 1607 */    MCD_OPC_CheckField, 5, 7, 0, 103, 16, // Skip to: 5812
+/* 1613 */    MCD_OPC_Decode, 150, 3, 8, // Opcode: SRLrr
+/* 1617 */    MCD_OPC_FilterValue, 1, 95, 16, // Skip to: 5812
+/* 1621 */    MCD_OPC_Decode, 148, 3, 14, // Opcode: SRLXrr
+/* 1625 */    MCD_OPC_FilterValue, 1, 87, 16, // Skip to: 5812
+/* 1629 */    MCD_OPC_CheckField, 12, 1, 1, 4, 0, // Skip to: 1639
+/* 1635 */    MCD_OPC_Decode, 147, 3, 15, // Opcode: SRLXri
+/* 1639 */    MCD_OPC_Decode, 149, 3, 9, // Opcode: SRLri
+/* 1643 */    MCD_OPC_FilterValue, 39, 50, 0, // Skip to: 1697
+/* 1647 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1650 */    MCD_OPC_FilterValue, 0, 25, 0, // Skip to: 1679
+/* 1654 */    MCD_OPC_ExtractField, 12, 1,  // Inst{12} ...
+/* 1657 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1671
+/* 1661 */    MCD_OPC_CheckField, 5, 7, 0, 49, 16, // Skip to: 5812
+/* 1667 */    MCD_OPC_Decode, 146, 3, 8, // Opcode: SRArr
+/* 1671 */    MCD_OPC_FilterValue, 1, 41, 16, // Skip to: 5812
+/* 1675 */    MCD_OPC_Decode, 144, 3, 14, // Opcode: SRAXrr
+/* 1679 */    MCD_OPC_FilterValue, 1, 33, 16, // Skip to: 5812
+/* 1683 */    MCD_OPC_CheckField, 12, 1, 1, 4, 0, // Skip to: 1693
+/* 1689 */    MCD_OPC_Decode, 143, 3, 15, // Opcode: SRAXri
+/* 1693 */    MCD_OPC_Decode, 145, 3, 9, // Opcode: SRAri
+/* 1697 */    MCD_OPC_FilterValue, 40, 55, 0, // Skip to: 1756
+/* 1701 */    MCD_OPC_ExtractField, 13, 6,  // Inst{18-13} ...
+/* 1704 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1718
+/* 1708 */    MCD_OPC_CheckField, 0, 13, 0, 2, 16, // Skip to: 5812
+/* 1714 */    MCD_OPC_Decode, 236, 2, 4, // Opcode: RDY
+/* 1718 */    MCD_OPC_FilterValue, 30, 16, 0, // Skip to: 1738
+/* 1722 */    MCD_OPC_CheckField, 25, 5, 0, 244, 15, // Skip to: 5812
+/* 1728 */    MCD_OPC_CheckField, 0, 13, 0, 238, 15, // Skip to: 5812
+/* 1734 */    MCD_OPC_Decode, 151, 3, 4, // Opcode: STBAR
+/* 1738 */    MCD_OPC_FilterValue, 31, 230, 15, // Skip to: 5812
+/* 1742 */    MCD_OPC_CheckPredicate, 0, 226, 15, // Skip to: 5812
+/* 1746 */    MCD_OPC_CheckField, 25, 5, 0, 220, 15, // Skip to: 5812
+/* 1752 */    MCD_OPC_Decode, 195, 2, 16, // Opcode: MEMBARi
+/* 1756 */    MCD_OPC_FilterValue, 43, 20, 0, // Skip to: 1780
+/* 1760 */    MCD_OPC_CheckPredicate, 0, 208, 15, // Skip to: 5812
+/* 1764 */    MCD_OPC_CheckField, 25, 5, 0, 202, 15, // Skip to: 5812
+/* 1770 */    MCD_OPC_CheckField, 0, 19, 0, 196, 15, // Skip to: 5812
+/* 1776 */    MCD_OPC_Decode, 180, 1, 4, // Opcode: FLUSHW
+/* 1780 */    MCD_OPC_FilterValue, 44, 123, 0, // Skip to: 1907
+/* 1784 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1787 */    MCD_OPC_FilterValue, 0, 56, 0, // Skip to: 1847
+/* 1791 */    MCD_OPC_ExtractField, 18, 1,  // Inst{18} ...
+/* 1794 */    MCD_OPC_FilterValue, 0, 22, 0, // Skip to: 1820
+/* 1798 */    MCD_OPC_CheckPredicate, 0, 10, 0, // Skip to: 1812
+/* 1802 */    MCD_OPC_CheckField, 11, 2, 0, 4, 0, // Skip to: 1812
+/* 1808 */    MCD_OPC_Decode, 198, 2, 17, // Opcode: MOVFCCrr
+/* 1812 */    MCD_OPC_CheckPredicate, 0, 156, 15, // Skip to: 5812
+/* 1816 */    MCD_OPC_Decode, 219, 3, 18, // Opcode: V9MOVFCCrr
+/* 1820 */    MCD_OPC_FilterValue, 1, 148, 15, // Skip to: 5812
+/* 1824 */    MCD_OPC_ExtractField, 11, 2,  // Inst{12-11} ...
+/* 1827 */    MCD_OPC_FilterValue, 0, 8, 0, // Skip to: 1839
+/* 1831 */    MCD_OPC_CheckPredicate, 0, 137, 15, // Skip to: 5812
+/* 1835 */    MCD_OPC_Decode, 200, 2, 17, // Opcode: MOVICCrr
+/* 1839 */    MCD_OPC_FilterValue, 2, 129, 15, // Skip to: 5812
+/* 1843 */    MCD_OPC_Decode, 217, 2, 17, // Opcode: MOVXCCrr
+/* 1847 */    MCD_OPC_FilterValue, 1, 121, 15, // Skip to: 5812
+/* 1851 */    MCD_OPC_ExtractField, 18, 1,  // Inst{18} ...
+/* 1854 */    MCD_OPC_FilterValue, 0, 22, 0, // Skip to: 1880
+/* 1858 */    MCD_OPC_CheckPredicate, 0, 10, 0, // Skip to: 1872
+/* 1862 */    MCD_OPC_CheckField, 11, 2, 0, 4, 0, // Skip to: 1872
+/* 1868 */    MCD_OPC_Decode, 197, 2, 19, // Opcode: MOVFCCri
+/* 1872 */    MCD_OPC_CheckPredicate, 0, 96, 15, // Skip to: 5812
+/* 1876 */    MCD_OPC_Decode, 218, 3, 20, // Opcode: V9MOVFCCri
+/* 1880 */    MCD_OPC_FilterValue, 1, 88, 15, // Skip to: 5812
+/* 1884 */    MCD_OPC_ExtractField, 11, 2,  // Inst{12-11} ...
+/* 1887 */    MCD_OPC_FilterValue, 0, 8, 0, // Skip to: 1899
+/* 1891 */    MCD_OPC_CheckPredicate, 0, 77, 15, // Skip to: 5812
+/* 1895 */    MCD_OPC_Decode, 199, 2, 19, // Opcode: MOVICCri
+/* 1899 */    MCD_OPC_FilterValue, 2, 69, 15, // Skip to: 5812
+/* 1903 */    MCD_OPC_Decode, 216, 2, 19, // Opcode: MOVXCCri
+/* 1907 */    MCD_OPC_FilterValue, 45, 25, 0, // Skip to: 1936
+/* 1911 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 1914 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1928
+/* 1918 */    MCD_OPC_CheckField, 5, 8, 0, 48, 15, // Skip to: 5812
+/* 1924 */    MCD_OPC_Decode, 248, 2, 10, // Opcode: SDIVXrr
+/* 1928 */    MCD_OPC_FilterValue, 1, 40, 15, // Skip to: 5812
+/* 1932 */    MCD_OPC_Decode, 247, 2, 11, // Opcode: SDIVXri
+/* 1936 */    MCD_OPC_FilterValue, 46, 14, 0, // Skip to: 1954
+/* 1940 */    MCD_OPC_CheckPredicate, 0, 28, 15, // Skip to: 5812
+/* 1944 */    MCD_OPC_CheckField, 5, 14, 0, 22, 15, // Skip to: 5812
+/* 1950 */    MCD_OPC_Decode, 235, 2, 4, // Opcode: POPCrr
+/* 1954 */    MCD_OPC_FilterValue, 47, 135, 0, // Skip to: 2093
+/* 1958 */    MCD_OPC_ExtractField, 10, 4,  // Inst{13-10} ...
+/* 1961 */    MCD_OPC_FilterValue, 1, 10, 0, // Skip to: 1975
+/* 1965 */    MCD_OPC_CheckField, 5, 5, 0, 1, 15, // Skip to: 5812
+/* 1971 */    MCD_OPC_Decode, 212, 2, 14, // Opcode: MOVRRZrr
+/* 1975 */    MCD_OPC_FilterValue, 2, 10, 0, // Skip to: 1989
+/* 1979 */    MCD_OPC_CheckField, 5, 5, 0, 243, 14, // Skip to: 5812
+/* 1985 */    MCD_OPC_Decode, 206, 2, 14, // Opcode: MOVRLEZrr
+/* 1989 */    MCD_OPC_FilterValue, 3, 10, 0, // Skip to: 2003
+/* 1993 */    MCD_OPC_CheckField, 5, 5, 0, 229, 14, // Skip to: 5812
+/* 1999 */    MCD_OPC_Decode, 208, 2, 14, // Opcode: MOVRLZrr
+/* 2003 */    MCD_OPC_FilterValue, 5, 10, 0, // Skip to: 2017
+/* 2007 */    MCD_OPC_CheckField, 5, 5, 0, 215, 14, // Skip to: 5812
+/* 2013 */    MCD_OPC_Decode, 210, 2, 14, // Opcode: MOVRNZrr
+/* 2017 */    MCD_OPC_FilterValue, 6, 10, 0, // Skip to: 2031
+/* 2021 */    MCD_OPC_CheckField, 5, 5, 0, 201, 14, // Skip to: 5812
+/* 2027 */    MCD_OPC_Decode, 204, 2, 14, // Opcode: MOVRGZrr
+/* 2031 */    MCD_OPC_FilterValue, 7, 10, 0, // Skip to: 2045
+/* 2035 */    MCD_OPC_CheckField, 5, 5, 0, 187, 14, // Skip to: 5812
+/* 2041 */    MCD_OPC_Decode, 202, 2, 14, // Opcode: MOVRGEZrr
+/* 2045 */    MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 2053
+/* 2049 */    MCD_OPC_Decode, 211, 2, 21, // Opcode: MOVRRZri
+/* 2053 */    MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 2061
+/* 2057 */    MCD_OPC_Decode, 205, 2, 21, // Opcode: MOVRLEZri
+/* 2061 */    MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 2069
+/* 2065 */    MCD_OPC_Decode, 207, 2, 21, // Opcode: MOVRLZri
+/* 2069 */    MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 2077
+/* 2073 */    MCD_OPC_Decode, 209, 2, 21, // Opcode: MOVRNZri
+/* 2077 */    MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 2085
+/* 2081 */    MCD_OPC_Decode, 203, 2, 21, // Opcode: MOVRGZri
+/* 2085 */    MCD_OPC_FilterValue, 15, 139, 14, // Skip to: 5812
+/* 2089 */    MCD_OPC_Decode, 201, 2, 21, // Opcode: MOVRGEZri
+/* 2093 */    MCD_OPC_FilterValue, 48, 37, 0, // Skip to: 2134
+/* 2097 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 2100 */    MCD_OPC_FilterValue, 0, 16, 0, // Skip to: 2120
+/* 2104 */    MCD_OPC_CheckField, 25, 5, 0, 118, 14, // Skip to: 5812
+/* 2110 */    MCD_OPC_CheckField, 5, 8, 0, 112, 14, // Skip to: 5812
+/* 2116 */    MCD_OPC_Decode, 221, 3, 12, // Opcode: WRYrr
+/* 2120 */    MCD_OPC_FilterValue, 1, 104, 14, // Skip to: 5812
+/* 2124 */    MCD_OPC_CheckField, 25, 5, 0, 98, 14, // Skip to: 5812
+/* 2130 */    MCD_OPC_Decode, 220, 3, 13, // Opcode: WRYri
+/* 2134 */    MCD_OPC_FilterValue, 52, 197, 2, // Skip to: 2847
+/* 2138 */    MCD_OPC_ExtractField, 5, 9,  // Inst{13-5} ...
+/* 2141 */    MCD_OPC_FilterValue, 1, 10, 0, // Skip to: 2155
+/* 2145 */    MCD_OPC_CheckField, 14, 5, 0, 77, 14, // Skip to: 5812
+/* 2151 */    MCD_OPC_Decode, 208, 1, 22, // Opcode: FMOVS
+/* 2155 */    MCD_OPC_FilterValue, 2, 14, 0, // Skip to: 2173
+/* 2159 */    MCD_OPC_CheckPredicate, 0, 65, 14, // Skip to: 5812
+/* 2163 */    MCD_OPC_CheckField, 14, 5, 0, 59, 14, // Skip to: 5812
+/* 2169 */    MCD_OPC_Decode, 182, 1, 23, // Opcode: FMOVD
+/* 2173 */    MCD_OPC_FilterValue, 3, 14, 0, // Skip to: 2191
+/* 2177 */    MCD_OPC_CheckPredicate, 0, 47, 14, // Skip to: 5812
+/* 2181 */    MCD_OPC_CheckField, 14, 5, 0, 41, 14, // Skip to: 5812
+/* 2187 */    MCD_OPC_Decode, 186, 1, 24, // Opcode: FMOVQ
+/* 2191 */    MCD_OPC_FilterValue, 5, 10, 0, // Skip to: 2205
+/* 2195 */    MCD_OPC_CheckField, 14, 5, 0, 27, 14, // Skip to: 5812
+/* 2201 */    MCD_OPC_Decode, 228, 1, 22, // Opcode: FNEGS
+/* 2205 */    MCD_OPC_FilterValue, 6, 14, 0, // Skip to: 2223
+/* 2209 */    MCD_OPC_CheckPredicate, 0, 15, 14, // Skip to: 5812
+/* 2213 */    MCD_OPC_CheckField, 14, 5, 0, 9, 14, // Skip to: 5812
+/* 2219 */    MCD_OPC_Decode, 226, 1, 23, // Opcode: FNEGD
+/* 2223 */    MCD_OPC_FilterValue, 7, 14, 0, // Skip to: 2241
+/* 2227 */    MCD_OPC_CheckPredicate, 0, 253, 13, // Skip to: 5812
+/* 2231 */    MCD_OPC_CheckField, 14, 5, 0, 247, 13, // Skip to: 5812
+/* 2237 */    MCD_OPC_Decode, 227, 1, 24, // Opcode: FNEGQ
+/* 2241 */    MCD_OPC_FilterValue, 9, 10, 0, // Skip to: 2255
+/* 2245 */    MCD_OPC_CheckField, 14, 5, 0, 233, 13, // Skip to: 5812
+/* 2251 */    MCD_OPC_Decode, 137, 1, 22, // Opcode: FABSS
+/* 2255 */    MCD_OPC_FilterValue, 10, 14, 0, // Skip to: 2273
+/* 2259 */    MCD_OPC_CheckPredicate, 0, 221, 13, // Skip to: 5812
+/* 2263 */    MCD_OPC_CheckField, 14, 5, 0, 215, 13, // Skip to: 5812
+/* 2269 */    MCD_OPC_Decode, 135, 1, 23, // Opcode: FABSD
+/* 2273 */    MCD_OPC_FilterValue, 11, 14, 0, // Skip to: 2291
+/* 2277 */    MCD_OPC_CheckPredicate, 0, 203, 13, // Skip to: 5812
+/* 2281 */    MCD_OPC_CheckField, 14, 5, 0, 197, 13, // Skip to: 5812
+/* 2287 */    MCD_OPC_Decode, 136, 1, 24, // Opcode: FABSQ
+/* 2291 */    MCD_OPC_FilterValue, 41, 10, 0, // Skip to: 2305
+/* 2295 */    MCD_OPC_CheckField, 14, 5, 0, 183, 13, // Skip to: 5812
+/* 2301 */    MCD_OPC_Decode, 144, 2, 22, // Opcode: FSQRTS
+/* 2305 */    MCD_OPC_FilterValue, 42, 10, 0, // Skip to: 2319
+/* 2309 */    MCD_OPC_CheckField, 14, 5, 0, 169, 13, // Skip to: 5812
+/* 2315 */    MCD_OPC_Decode, 142, 2, 23, // Opcode: FSQRTD
+/* 2319 */    MCD_OPC_FilterValue, 43, 10, 0, // Skip to: 2333
+/* 2323 */    MCD_OPC_CheckField, 14, 5, 0, 155, 13, // Skip to: 5812
+/* 2329 */    MCD_OPC_Decode, 143, 2, 24, // Opcode: FSQRTQ
+/* 2333 */    MCD_OPC_FilterValue, 65, 4, 0, // Skip to: 2341
+/* 2337 */    MCD_OPC_Decode, 140, 1, 25, // Opcode: FADDS
+/* 2341 */    MCD_OPC_FilterValue, 66, 4, 0, // Skip to: 2349
+/* 2345 */    MCD_OPC_Decode, 138, 1, 26, // Opcode: FADDD
+/* 2349 */    MCD_OPC_FilterValue, 67, 4, 0, // Skip to: 2357
+/* 2353 */    MCD_OPC_Decode, 139, 1, 27, // Opcode: FADDQ
+/* 2357 */    MCD_OPC_FilterValue, 69, 4, 0, // Skip to: 2365
+/* 2361 */    MCD_OPC_Decode, 159, 2, 25, // Opcode: FSUBS
+/* 2365 */    MCD_OPC_FilterValue, 70, 4, 0, // Skip to: 2373
+/* 2369 */    MCD_OPC_Decode, 157, 2, 26, // Opcode: FSUBD
+/* 2373 */    MCD_OPC_FilterValue, 71, 4, 0, // Skip to: 2381
+/* 2377 */    MCD_OPC_Decode, 158, 2, 27, // Opcode: FSUBQ
+/* 2381 */    MCD_OPC_FilterValue, 73, 4, 0, // Skip to: 2389
+/* 2385 */    MCD_OPC_Decode, 221, 1, 25, // Opcode: FMULS
+/* 2389 */    MCD_OPC_FilterValue, 74, 4, 0, // Skip to: 2397
+/* 2393 */    MCD_OPC_Decode, 217, 1, 26, // Opcode: FMULD
+/* 2397 */    MCD_OPC_FilterValue, 75, 4, 0, // Skip to: 2405
+/* 2401 */    MCD_OPC_Decode, 220, 1, 27, // Opcode: FMULQ
+/* 2405 */    MCD_OPC_FilterValue, 77, 4, 0, // Skip to: 2413
+/* 2409 */    MCD_OPC_Decode, 164, 1, 25, // Opcode: FDIVS
+/* 2413 */    MCD_OPC_FilterValue, 78, 4, 0, // Skip to: 2421
+/* 2417 */    MCD_OPC_Decode, 162, 1, 26, // Opcode: FDIVD
+/* 2421 */    MCD_OPC_FilterValue, 79, 4, 0, // Skip to: 2429
+/* 2425 */    MCD_OPC_Decode, 163, 1, 27, // Opcode: FDIVQ
+/* 2429 */    MCD_OPC_FilterValue, 81, 8, 0, // Skip to: 2441
+/* 2433 */    MCD_OPC_CheckPredicate, 1, 47, 13, // Skip to: 5812
+/* 2437 */    MCD_OPC_Decode, 223, 1, 26, // Opcode: FNADDS
+/* 2441 */    MCD_OPC_FilterValue, 82, 8, 0, // Skip to: 2453
+/* 2445 */    MCD_OPC_CheckPredicate, 1, 35, 13, // Skip to: 5812
+/* 2449 */    MCD_OPC_Decode, 222, 1, 26, // Opcode: FNADDD
+/* 2453 */    MCD_OPC_FilterValue, 89, 8, 0, // Skip to: 2465
+/* 2457 */    MCD_OPC_CheckPredicate, 1, 23, 13, // Skip to: 5812
+/* 2461 */    MCD_OPC_Decode, 232, 1, 26, // Opcode: FNMULS
+/* 2465 */    MCD_OPC_FilterValue, 90, 8, 0, // Skip to: 2477
+/* 2469 */    MCD_OPC_CheckPredicate, 1, 11, 13, // Skip to: 5812
+/* 2473 */    MCD_OPC_Decode, 231, 1, 26, // Opcode: FNMULD
+/* 2477 */    MCD_OPC_FilterValue, 97, 8, 0, // Skip to: 2489
+/* 2481 */    MCD_OPC_CheckPredicate, 1, 255, 12, // Skip to: 5812
+/* 2485 */    MCD_OPC_Decode, 172, 1, 26, // Opcode: FHADDS
+/* 2489 */    MCD_OPC_FilterValue, 98, 8, 0, // Skip to: 2501
+/* 2493 */    MCD_OPC_CheckPredicate, 1, 243, 12, // Skip to: 5812
+/* 2497 */    MCD_OPC_Decode, 171, 1, 26, // Opcode: FHADDD
+/* 2501 */    MCD_OPC_FilterValue, 101, 8, 0, // Skip to: 2513
+/* 2505 */    MCD_OPC_CheckPredicate, 1, 231, 12, // Skip to: 5812
+/* 2509 */    MCD_OPC_Decode, 174, 1, 26, // Opcode: FHSUBS
+/* 2513 */    MCD_OPC_FilterValue, 102, 8, 0, // Skip to: 2525
+/* 2517 */    MCD_OPC_CheckPredicate, 1, 219, 12, // Skip to: 5812
+/* 2521 */    MCD_OPC_Decode, 173, 1, 26, // Opcode: FHSUBD
+/* 2525 */    MCD_OPC_FilterValue, 105, 4, 0, // Skip to: 2533
+/* 2529 */    MCD_OPC_Decode, 141, 2, 28, // Opcode: FSMULD
+/* 2533 */    MCD_OPC_FilterValue, 110, 4, 0, // Skip to: 2541
+/* 2537 */    MCD_OPC_Decode, 165, 1, 29, // Opcode: FDMULQ
+/* 2541 */    MCD_OPC_FilterValue, 113, 8, 0, // Skip to: 2553
+/* 2545 */    MCD_OPC_CheckPredicate, 1, 191, 12, // Skip to: 5812
+/* 2549 */    MCD_OPC_Decode, 230, 1, 26, // Opcode: FNHADDS
+/* 2553 */    MCD_OPC_FilterValue, 114, 8, 0, // Skip to: 2565
+/* 2557 */    MCD_OPC_CheckPredicate, 1, 179, 12, // Skip to: 5812
+/* 2561 */    MCD_OPC_Decode, 229, 1, 26, // Opcode: FNHADDD
+/* 2565 */    MCD_OPC_FilterValue, 121, 8, 0, // Skip to: 2577
+/* 2569 */    MCD_OPC_CheckPredicate, 1, 167, 12, // Skip to: 5812
+/* 2573 */    MCD_OPC_Decode, 239, 1, 26, // Opcode: FNSMULD
+/* 2577 */    MCD_OPC_FilterValue, 129, 1, 10, 0, // Skip to: 2592
+/* 2582 */    MCD_OPC_CheckField, 14, 5, 0, 152, 12, // Skip to: 5812
+/* 2588 */    MCD_OPC_Decode, 156, 2, 30, // Opcode: FSTOX
+/* 2592 */    MCD_OPC_FilterValue, 130, 1, 10, 0, // Skip to: 2607
+/* 2597 */    MCD_OPC_CheckField, 14, 5, 0, 137, 12, // Skip to: 5812
+/* 2603 */    MCD_OPC_Decode, 169, 1, 23, // Opcode: FDTOX
+/* 2607 */    MCD_OPC_FilterValue, 131, 1, 10, 0, // Skip to: 2622
+/* 2612 */    MCD_OPC_CheckField, 14, 5, 0, 122, 12, // Skip to: 5812
+/* 2618 */    MCD_OPC_Decode, 136, 2, 31, // Opcode: FQTOX
+/* 2622 */    MCD_OPC_FilterValue, 132, 1, 10, 0, // Skip to: 2637
+/* 2627 */    MCD_OPC_CheckField, 14, 5, 0, 107, 12, // Skip to: 5812
+/* 2633 */    MCD_OPC_Decode, 166, 2, 32, // Opcode: FXTOS
+/* 2637 */    MCD_OPC_FilterValue, 136, 1, 10, 0, // Skip to: 2652
+/* 2642 */    MCD_OPC_CheckField, 14, 5, 0, 92, 12, // Skip to: 5812
+/* 2648 */    MCD_OPC_Decode, 164, 2, 23, // Opcode: FXTOD
+/* 2652 */    MCD_OPC_FilterValue, 140, 1, 10, 0, // Skip to: 2667
+/* 2657 */    MCD_OPC_CheckField, 14, 5, 0, 77, 12, // Skip to: 5812
+/* 2663 */    MCD_OPC_Decode, 165, 2, 33, // Opcode: FXTOQ
+/* 2667 */    MCD_OPC_FilterValue, 196, 1, 10, 0, // Skip to: 2682
+/* 2672 */    MCD_OPC_CheckField, 14, 5, 0, 62, 12, // Skip to: 5812
+/* 2678 */    MCD_OPC_Decode, 177, 1, 22, // Opcode: FITOS
+/* 2682 */    MCD_OPC_FilterValue, 198, 1, 10, 0, // Skip to: 2697
+/* 2687 */    MCD_OPC_CheckField, 14, 5, 0, 47, 12, // Skip to: 5812
+/* 2693 */    MCD_OPC_Decode, 168, 1, 32, // Opcode: FDTOS
+/* 2697 */    MCD_OPC_FilterValue, 199, 1, 10, 0, // Skip to: 2712
+/* 2702 */    MCD_OPC_CheckField, 14, 5, 0, 32, 12, // Skip to: 5812
+/* 2708 */    MCD_OPC_Decode, 135, 2, 34, // Opcode: FQTOS
+/* 2712 */    MCD_OPC_FilterValue, 200, 1, 10, 0, // Skip to: 2727
+/* 2717 */    MCD_OPC_CheckField, 14, 5, 0, 17, 12, // Skip to: 5812
+/* 2723 */    MCD_OPC_Decode, 175, 1, 30, // Opcode: FITOD
+/* 2727 */    MCD_OPC_FilterValue, 201, 1, 10, 0, // Skip to: 2742
+/* 2732 */    MCD_OPC_CheckField, 14, 5, 0, 2, 12, // Skip to: 5812
+/* 2738 */    MCD_OPC_Decode, 153, 2, 30, // Opcode: FSTOD
+/* 2742 */    MCD_OPC_FilterValue, 203, 1, 10, 0, // Skip to: 2757
+/* 2747 */    MCD_OPC_CheckField, 14, 5, 0, 243, 11, // Skip to: 5812
+/* 2753 */    MCD_OPC_Decode, 133, 2, 31, // Opcode: FQTOD
+/* 2757 */    MCD_OPC_FilterValue, 204, 1, 10, 0, // Skip to: 2772
+/* 2762 */    MCD_OPC_CheckField, 14, 5, 0, 228, 11, // Skip to: 5812
+/* 2768 */    MCD_OPC_Decode, 176, 1, 35, // Opcode: FITOQ
+/* 2772 */    MCD_OPC_FilterValue, 205, 1, 10, 0, // Skip to: 2787
+/* 2777 */    MCD_OPC_CheckField, 14, 5, 0, 213, 11, // Skip to: 5812
+/* 2783 */    MCD_OPC_Decode, 155, 2, 35, // Opcode: FSTOQ
+/* 2787 */    MCD_OPC_FilterValue, 206, 1, 10, 0, // Skip to: 2802
+/* 2792 */    MCD_OPC_CheckField, 14, 5, 0, 198, 11, // Skip to: 5812
+/* 2798 */    MCD_OPC_Decode, 167, 1, 33, // Opcode: FDTOQ
+/* 2802 */    MCD_OPC_FilterValue, 209, 1, 10, 0, // Skip to: 2817
+/* 2807 */    MCD_OPC_CheckField, 14, 5, 0, 183, 11, // Skip to: 5812
+/* 2813 */    MCD_OPC_Decode, 154, 2, 22, // Opcode: FSTOI
+/* 2817 */    MCD_OPC_FilterValue, 210, 1, 10, 0, // Skip to: 2832
+/* 2822 */    MCD_OPC_CheckField, 14, 5, 0, 168, 11, // Skip to: 5812
+/* 2828 */    MCD_OPC_Decode, 166, 1, 32, // Opcode: FDTOI
+/* 2832 */    MCD_OPC_FilterValue, 211, 1, 159, 11, // Skip to: 5812
+/* 2837 */    MCD_OPC_CheckField, 14, 5, 0, 153, 11, // Skip to: 5812
+/* 2843 */    MCD_OPC_Decode, 134, 2, 34, // Opcode: FQTOI
+/* 2847 */    MCD_OPC_FilterValue, 53, 70, 2, // Skip to: 3433
+/* 2851 */    MCD_OPC_ExtractField, 5, 6,  // Inst{10-5} ...
+/* 2854 */    MCD_OPC_FilterValue, 1, 75, 0, // Skip to: 2933
+/* 2858 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 2861 */    MCD_OPC_FilterValue, 0, 29, 0, // Skip to: 2894
+/* 2865 */    MCD_OPC_ExtractField, 18, 1,  // Inst{18} ...
+/* 2868 */    MCD_OPC_FilterValue, 0, 124, 11, // Skip to: 5812
+/* 2872 */    MCD_OPC_CheckPredicate, 0, 10, 0, // Skip to: 2886
+/* 2876 */    MCD_OPC_CheckField, 11, 2, 0, 4, 0, // Skip to: 2886
+/* 2882 */    MCD_OPC_Decode, 209, 1, 36, // Opcode: FMOVS_FCC
+/* 2886 */    MCD_OPC_CheckPredicate, 0, 106, 11, // Skip to: 5812
+/* 2890 */    MCD_OPC_Decode, 217, 3, 37, // Opcode: V9FMOVS_FCC
+/* 2894 */    MCD_OPC_FilterValue, 1, 98, 11, // Skip to: 5812
+/* 2898 */    MCD_OPC_ExtractField, 11, 2,  // Inst{12-11} ...
+/* 2901 */    MCD_OPC_FilterValue, 0, 14, 0, // Skip to: 2919
+/* 2905 */    MCD_OPC_CheckPredicate, 0, 87, 11, // Skip to: 5812
+/* 2909 */    MCD_OPC_CheckField, 18, 1, 0, 81, 11, // Skip to: 5812
+/* 2915 */    MCD_OPC_Decode, 210, 1, 36, // Opcode: FMOVS_ICC
+/* 2919 */    MCD_OPC_FilterValue, 2, 73, 11, // Skip to: 5812
+/* 2923 */    MCD_OPC_CheckField, 18, 1, 0, 67, 11, // Skip to: 5812
+/* 2929 */    MCD_OPC_Decode, 211, 1, 36, // Opcode: FMOVS_XCC
+/* 2933 */    MCD_OPC_FilterValue, 2, 75, 0, // Skip to: 3012
+/* 2937 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 2940 */    MCD_OPC_FilterValue, 0, 29, 0, // Skip to: 2973
+/* 2944 */    MCD_OPC_ExtractField, 18, 1,  // Inst{18} ...
+/* 2947 */    MCD_OPC_FilterValue, 0, 45, 11, // Skip to: 5812
+/* 2951 */    MCD_OPC_CheckPredicate, 0, 10, 0, // Skip to: 2965
+/* 2955 */    MCD_OPC_CheckField, 11, 2, 0, 4, 0, // Skip to: 2965
+/* 2961 */    MCD_OPC_Decode, 183, 1, 38, // Opcode: FMOVD_FCC
+/* 2965 */    MCD_OPC_CheckPredicate, 0, 27, 11, // Skip to: 5812
+/* 2969 */    MCD_OPC_Decode, 215, 3, 39, // Opcode: V9FMOVD_FCC
+/* 2973 */    MCD_OPC_FilterValue, 1, 19, 11, // Skip to: 5812
+/* 2977 */    MCD_OPC_ExtractField, 11, 2,  // Inst{12-11} ...
+/* 2980 */    MCD_OPC_FilterValue, 0, 14, 0, // Skip to: 2998
+/* 2984 */    MCD_OPC_CheckPredicate, 0, 8, 11, // Skip to: 5812
+/* 2988 */    MCD_OPC_CheckField, 18, 1, 0, 2, 11, // Skip to: 5812
+/* 2994 */    MCD_OPC_Decode, 184, 1, 38, // Opcode: FMOVD_ICC
+/* 2998 */    MCD_OPC_FilterValue, 2, 250, 10, // Skip to: 5812
+/* 3002 */    MCD_OPC_CheckField, 18, 1, 0, 244, 10, // Skip to: 5812
+/* 3008 */    MCD_OPC_Decode, 185, 1, 38, // Opcode: FMOVD_XCC
+/* 3012 */    MCD_OPC_FilterValue, 3, 75, 0, // Skip to: 3091
+/* 3016 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 3019 */    MCD_OPC_FilterValue, 0, 29, 0, // Skip to: 3052
+/* 3023 */    MCD_OPC_ExtractField, 18, 1,  // Inst{18} ...
+/* 3026 */    MCD_OPC_FilterValue, 0, 222, 10, // Skip to: 5812
+/* 3030 */    MCD_OPC_CheckPredicate, 0, 10, 0, // Skip to: 3044
+/* 3034 */    MCD_OPC_CheckField, 11, 2, 0, 4, 0, // Skip to: 3044
+/* 3040 */    MCD_OPC_Decode, 187, 1, 40, // Opcode: FMOVQ_FCC
+/* 3044 */    MCD_OPC_CheckPredicate, 0, 204, 10, // Skip to: 5812
+/* 3048 */    MCD_OPC_Decode, 216, 3, 41, // Opcode: V9FMOVQ_FCC
+/* 3052 */    MCD_OPC_FilterValue, 1, 196, 10, // Skip to: 5812
+/* 3056 */    MCD_OPC_ExtractField, 11, 2,  // Inst{12-11} ...
+/* 3059 */    MCD_OPC_FilterValue, 0, 14, 0, // Skip to: 3077
+/* 3063 */    MCD_OPC_CheckPredicate, 0, 185, 10, // Skip to: 5812
+/* 3067 */    MCD_OPC_CheckField, 18, 1, 0, 179, 10, // Skip to: 5812
+/* 3073 */    MCD_OPC_Decode, 188, 1, 40, // Opcode: FMOVQ_ICC
+/* 3077 */    MCD_OPC_FilterValue, 2, 171, 10, // Skip to: 5812
+/* 3081 */    MCD_OPC_CheckField, 18, 1, 0, 165, 10, // Skip to: 5812
+/* 3087 */    MCD_OPC_Decode, 189, 1, 40, // Opcode: FMOVQ_XCC
+/* 3091 */    MCD_OPC_FilterValue, 5, 27, 0, // Skip to: 3122
+/* 3095 */    MCD_OPC_ExtractField, 11, 3,  // Inst{13-11} ...
+/* 3098 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3110
+/* 3102 */    MCD_OPC_CheckPredicate, 0, 146, 10, // Skip to: 5812
+/* 3106 */    MCD_OPC_Decode, 198, 1, 42, // Opcode: FMOVRLEZS
+/* 3110 */    MCD_OPC_FilterValue, 3, 138, 10, // Skip to: 5812
+/* 3114 */    MCD_OPC_CheckPredicate, 0, 134, 10, // Skip to: 5812
+/* 3118 */    MCD_OPC_Decode, 195, 1, 42, // Opcode: FMOVRGZS
+/* 3122 */    MCD_OPC_FilterValue, 6, 27, 0, // Skip to: 3153
+/* 3126 */    MCD_OPC_ExtractField, 11, 3,  // Inst{13-11} ...
+/* 3129 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3141
+/* 3133 */    MCD_OPC_CheckPredicate, 0, 115, 10, // Skip to: 5812
+/* 3137 */    MCD_OPC_Decode, 196, 1, 42, // Opcode: FMOVRLEZD
+/* 3141 */    MCD_OPC_FilterValue, 3, 107, 10, // Skip to: 5812
+/* 3145 */    MCD_OPC_CheckPredicate, 0, 103, 10, // Skip to: 5812
+/* 3149 */    MCD_OPC_Decode, 193, 1, 42, // Opcode: FMOVRGZD
+/* 3153 */    MCD_OPC_FilterValue, 7, 27, 0, // Skip to: 3184
+/* 3157 */    MCD_OPC_ExtractField, 11, 3,  // Inst{13-11} ...
+/* 3160 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3172
+/* 3164 */    MCD_OPC_CheckPredicate, 0, 84, 10, // Skip to: 5812
+/* 3168 */    MCD_OPC_Decode, 197, 1, 42, // Opcode: FMOVRLEZQ
+/* 3172 */    MCD_OPC_FilterValue, 3, 76, 10, // Skip to: 5812
+/* 3176 */    MCD_OPC_CheckPredicate, 0, 72, 10, // Skip to: 5812
+/* 3180 */    MCD_OPC_Decode, 194, 1, 42, // Opcode: FMOVRGZQ
+/* 3184 */    MCD_OPC_FilterValue, 17, 10, 0, // Skip to: 3198
+/* 3188 */    MCD_OPC_CheckField, 11, 3, 1, 58, 10, // Skip to: 5812
+/* 3194 */    MCD_OPC_Decode, 214, 3, 43, // Opcode: V9FCMPS
+/* 3198 */    MCD_OPC_FilterValue, 18, 10, 0, // Skip to: 3212
+/* 3202 */    MCD_OPC_CheckField, 11, 3, 1, 44, 10, // Skip to: 5812
+/* 3208 */    MCD_OPC_Decode, 209, 3, 44, // Opcode: V9FCMPD
+/* 3212 */    MCD_OPC_FilterValue, 19, 10, 0, // Skip to: 3226
+/* 3216 */    MCD_OPC_CheckField, 11, 3, 1, 30, 10, // Skip to: 5812
+/* 3222 */    MCD_OPC_Decode, 213, 3, 45, // Opcode: V9FCMPQ
+/* 3226 */    MCD_OPC_FilterValue, 21, 10, 0, // Skip to: 3240
+/* 3230 */    MCD_OPC_CheckField, 11, 3, 1, 16, 10, // Skip to: 5812
+/* 3236 */    MCD_OPC_Decode, 212, 3, 43, // Opcode: V9FCMPES
+/* 3240 */    MCD_OPC_FilterValue, 22, 10, 0, // Skip to: 3254
+/* 3244 */    MCD_OPC_CheckField, 11, 3, 1, 2, 10, // Skip to: 5812
+/* 3250 */    MCD_OPC_Decode, 210, 3, 44, // Opcode: V9FCMPED
+/* 3254 */    MCD_OPC_FilterValue, 23, 10, 0, // Skip to: 3268
+/* 3258 */    MCD_OPC_CheckField, 11, 3, 1, 244, 9, // Skip to: 5812
+/* 3264 */    MCD_OPC_Decode, 211, 3, 45, // Opcode: V9FCMPEQ
+/* 3268 */    MCD_OPC_FilterValue, 37, 51, 0, // Skip to: 3323
+/* 3272 */    MCD_OPC_ExtractField, 11, 3,  // Inst{13-11} ...
+/* 3275 */    MCD_OPC_FilterValue, 0, 8, 0, // Skip to: 3287
+/* 3279 */    MCD_OPC_CheckPredicate, 0, 225, 9, // Skip to: 5812
+/* 3283 */    MCD_OPC_Decode, 207, 1, 42, // Opcode: FMOVRZS
+/* 3287 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3299
+/* 3291 */    MCD_OPC_CheckPredicate, 0, 213, 9, // Skip to: 5812
+/* 3295 */    MCD_OPC_Decode, 201, 1, 42, // Opcode: FMOVRLZS
+/* 3299 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 3311
+/* 3303 */    MCD_OPC_CheckPredicate, 0, 201, 9, // Skip to: 5812
+/* 3307 */    MCD_OPC_Decode, 204, 1, 42, // Opcode: FMOVRNZS
+/* 3311 */    MCD_OPC_FilterValue, 3, 193, 9, // Skip to: 5812
+/* 3315 */    MCD_OPC_CheckPredicate, 0, 189, 9, // Skip to: 5812
+/* 3319 */    MCD_OPC_Decode, 192, 1, 42, // Opcode: FMOVRGEZS
+/* 3323 */    MCD_OPC_FilterValue, 38, 51, 0, // Skip to: 3378
+/* 3327 */    MCD_OPC_ExtractField, 11, 3,  // Inst{13-11} ...
+/* 3330 */    MCD_OPC_FilterValue, 0, 8, 0, // Skip to: 3342
+/* 3334 */    MCD_OPC_CheckPredicate, 0, 170, 9, // Skip to: 5812
+/* 3338 */    MCD_OPC_Decode, 205, 1, 42, // Opcode: FMOVRZD
+/* 3342 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3354
+/* 3346 */    MCD_OPC_CheckPredicate, 0, 158, 9, // Skip to: 5812
+/* 3350 */    MCD_OPC_Decode, 199, 1, 42, // Opcode: FMOVRLZD
+/* 3354 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 3366
+/* 3358 */    MCD_OPC_CheckPredicate, 0, 146, 9, // Skip to: 5812
+/* 3362 */    MCD_OPC_Decode, 202, 1, 42, // Opcode: FMOVRNZD
+/* 3366 */    MCD_OPC_FilterValue, 3, 138, 9, // Skip to: 5812
+/* 3370 */    MCD_OPC_CheckPredicate, 0, 134, 9, // Skip to: 5812
+/* 3374 */    MCD_OPC_Decode, 190, 1, 42, // Opcode: FMOVRGEZD
+/* 3378 */    MCD_OPC_FilterValue, 39, 126, 9, // Skip to: 5812
+/* 3382 */    MCD_OPC_ExtractField, 11, 3,  // Inst{13-11} ...
+/* 3385 */    MCD_OPC_FilterValue, 0, 8, 0, // Skip to: 3397
+/* 3389 */    MCD_OPC_CheckPredicate, 0, 115, 9, // Skip to: 5812
+/* 3393 */    MCD_OPC_Decode, 206, 1, 42, // Opcode: FMOVRZQ
+/* 3397 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3409
+/* 3401 */    MCD_OPC_CheckPredicate, 0, 103, 9, // Skip to: 5812
+/* 3405 */    MCD_OPC_Decode, 200, 1, 42, // Opcode: FMOVRLZQ
+/* 3409 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 3421
+/* 3413 */    MCD_OPC_CheckPredicate, 0, 91, 9, // Skip to: 5812
+/* 3417 */    MCD_OPC_Decode, 203, 1, 42, // Opcode: FMOVRNZQ
+/* 3421 */    MCD_OPC_FilterValue, 3, 83, 9, // Skip to: 5812
+/* 3425 */    MCD_OPC_CheckPredicate, 0, 79, 9, // Skip to: 5812
+/* 3429 */    MCD_OPC_Decode, 191, 1, 42, // Opcode: FMOVRGEZQ
+/* 3433 */    MCD_OPC_FilterValue, 54, 15, 6, // Skip to: 4988
+/* 3437 */    MCD_OPC_ExtractField, 5, 9,  // Inst{13-5} ...
+/* 3440 */    MCD_OPC_FilterValue, 0, 8, 0, // Skip to: 3452
+/* 3444 */    MCD_OPC_CheckPredicate, 2, 60, 9, // Skip to: 5812
+/* 3448 */    MCD_OPC_Decode, 131, 1, 10, // Opcode: EDGE8
+/* 3452 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 3464
+/* 3456 */    MCD_OPC_CheckPredicate, 3, 48, 9, // Skip to: 5812
+/* 3460 */    MCD_OPC_Decode, 134, 1, 10, // Opcode: EDGE8N
+/* 3464 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 3476
+/* 3468 */    MCD_OPC_CheckPredicate, 2, 36, 9, // Skip to: 5812
+/* 3472 */    MCD_OPC_Decode, 132, 1, 10, // Opcode: EDGE8L
+/* 3476 */    MCD_OPC_FilterValue, 3, 8, 0, // Skip to: 3488
+/* 3480 */    MCD_OPC_CheckPredicate, 3, 24, 9, // Skip to: 5812
+/* 3484 */    MCD_OPC_Decode, 133, 1, 10, // Opcode: EDGE8LN
+/* 3488 */    MCD_OPC_FilterValue, 4, 7, 0, // Skip to: 3499
+/* 3492 */    MCD_OPC_CheckPredicate, 2, 12, 9, // Skip to: 5812
+/* 3496 */    MCD_OPC_Decode, 123, 10, // Opcode: EDGE16
+/* 3499 */    MCD_OPC_FilterValue, 5, 7, 0, // Skip to: 3510
+/* 3503 */    MCD_OPC_CheckPredicate, 3, 1, 9, // Skip to: 5812
+/* 3507 */    MCD_OPC_Decode, 126, 10, // Opcode: EDGE16N
+/* 3510 */    MCD_OPC_FilterValue, 6, 7, 0, // Skip to: 3521
+/* 3514 */    MCD_OPC_CheckPredicate, 2, 246, 8, // Skip to: 5812
+/* 3518 */    MCD_OPC_Decode, 124, 10, // Opcode: EDGE16L
+/* 3521 */    MCD_OPC_FilterValue, 7, 7, 0, // Skip to: 3532
+/* 3525 */    MCD_OPC_CheckPredicate, 3, 235, 8, // Skip to: 5812
+/* 3529 */    MCD_OPC_Decode, 125, 10, // Opcode: EDGE16LN
+/* 3532 */    MCD_OPC_FilterValue, 8, 7, 0, // Skip to: 3543
+/* 3536 */    MCD_OPC_CheckPredicate, 2, 224, 8, // Skip to: 5812
+/* 3540 */    MCD_OPC_Decode, 127, 10, // Opcode: EDGE32
+/* 3543 */    MCD_OPC_FilterValue, 9, 8, 0, // Skip to: 3555
+/* 3547 */    MCD_OPC_CheckPredicate, 3, 213, 8, // Skip to: 5812
+/* 3551 */    MCD_OPC_Decode, 130, 1, 10, // Opcode: EDGE32N
+/* 3555 */    MCD_OPC_FilterValue, 10, 8, 0, // Skip to: 3567
+/* 3559 */    MCD_OPC_CheckPredicate, 2, 201, 8, // Skip to: 5812
+/* 3563 */    MCD_OPC_Decode, 128, 1, 10, // Opcode: EDGE32L
+/* 3567 */    MCD_OPC_FilterValue, 11, 8, 0, // Skip to: 3579
+/* 3571 */    MCD_OPC_CheckPredicate, 3, 189, 8, // Skip to: 5812
+/* 3575 */    MCD_OPC_Decode, 129, 1, 10, // Opcode: EDGE32LN
+/* 3579 */    MCD_OPC_FilterValue, 16, 7, 0, // Skip to: 3590
+/* 3583 */    MCD_OPC_CheckPredicate, 2, 177, 8, // Skip to: 5812
+/* 3587 */    MCD_OPC_Decode, 48, 10, // Opcode: ARRAY8
+/* 3590 */    MCD_OPC_FilterValue, 17, 7, 0, // Skip to: 3601
+/* 3594 */    MCD_OPC_CheckPredicate, 1, 166, 8, // Skip to: 5812
+/* 3598 */    MCD_OPC_Decode, 25, 10, // Opcode: ADDXC
+/* 3601 */    MCD_OPC_FilterValue, 18, 7, 0, // Skip to: 3612
+/* 3605 */    MCD_OPC_CheckPredicate, 2, 155, 8, // Skip to: 5812
+/* 3609 */    MCD_OPC_Decode, 46, 10, // Opcode: ARRAY16
+/* 3612 */    MCD_OPC_FilterValue, 19, 7, 0, // Skip to: 3623
+/* 3616 */    MCD_OPC_CheckPredicate, 1, 144, 8, // Skip to: 5812
+/* 3620 */    MCD_OPC_Decode, 26, 10, // Opcode: ADDXCCC
+/* 3623 */    MCD_OPC_FilterValue, 20, 7, 0, // Skip to: 3634
+/* 3627 */    MCD_OPC_CheckPredicate, 2, 133, 8, // Skip to: 5812
+/* 3631 */    MCD_OPC_Decode, 47, 10, // Opcode: ARRAY32
+/* 3634 */    MCD_OPC_FilterValue, 22, 8, 0, // Skip to: 3646
+/* 3638 */    MCD_OPC_CheckPredicate, 1, 122, 8, // Skip to: 5812
+/* 3642 */    MCD_OPC_Decode, 205, 3, 10, // Opcode: UMULXHI
+/* 3646 */    MCD_OPC_FilterValue, 23, 14, 0, // Skip to: 3664
+/* 3650 */    MCD_OPC_CheckPredicate, 1, 110, 8, // Skip to: 5812
+/* 3654 */    MCD_OPC_CheckField, 14, 5, 0, 104, 8, // Skip to: 5812
+/* 3660 */    MCD_OPC_Decode, 194, 2, 46, // Opcode: LZCNT
+/* 3664 */    MCD_OPC_FilterValue, 24, 7, 0, // Skip to: 3675
+/* 3668 */    MCD_OPC_CheckPredicate, 2, 92, 8, // Skip to: 5812
+/* 3672 */    MCD_OPC_Decode, 33, 10, // Opcode: ALIGNADDR
+/* 3675 */    MCD_OPC_FilterValue, 25, 7, 0, // Skip to: 3686
+/* 3679 */    MCD_OPC_CheckPredicate, 3, 81, 8, // Skip to: 5812
+/* 3683 */    MCD_OPC_Decode, 75, 10, // Opcode: BMASK
+/* 3686 */    MCD_OPC_FilterValue, 26, 7, 0, // Skip to: 3697
+/* 3690 */    MCD_OPC_CheckPredicate, 2, 70, 8, // Skip to: 5812
+/* 3694 */    MCD_OPC_Decode, 34, 10, // Opcode: ALIGNADDRL
+/* 3697 */    MCD_OPC_FilterValue, 27, 19, 0, // Skip to: 3720
+/* 3701 */    MCD_OPC_CheckPredicate, 1, 59, 8, // Skip to: 5812
+/* 3705 */    MCD_OPC_CheckField, 25, 5, 0, 53, 8, // Skip to: 5812
+/* 3711 */    MCD_OPC_CheckField, 14, 5, 0, 47, 8, // Skip to: 5812
+/* 3717 */    MCD_OPC_Decode, 120, 47, // Opcode: CMASK8
+/* 3720 */    MCD_OPC_FilterValue, 28, 7, 0, // Skip to: 3731
+/* 3724 */    MCD_OPC_CheckPredicate, 3, 36, 8, // Skip to: 5812
+/* 3728 */    MCD_OPC_Decode, 112, 26, // Opcode: BSHUFFLE
+/* 3731 */    MCD_OPC_FilterValue, 29, 19, 0, // Skip to: 3754
+/* 3735 */    MCD_OPC_CheckPredicate, 1, 25, 8, // Skip to: 5812
+/* 3739 */    MCD_OPC_CheckField, 25, 5, 0, 19, 8, // Skip to: 5812
+/* 3745 */    MCD_OPC_CheckField, 14, 5, 0, 13, 8, // Skip to: 5812
+/* 3751 */    MCD_OPC_Decode, 118, 47, // Opcode: CMASK16
+/* 3754 */    MCD_OPC_FilterValue, 31, 19, 0, // Skip to: 3777
+/* 3758 */    MCD_OPC_CheckPredicate, 1, 2, 8, // Skip to: 5812
+/* 3762 */    MCD_OPC_CheckField, 25, 5, 0, 252, 7, // Skip to: 5812
+/* 3768 */    MCD_OPC_CheckField, 14, 5, 0, 246, 7, // Skip to: 5812
+/* 3774 */    MCD_OPC_Decode, 119, 47, // Opcode: CMASK32
+/* 3777 */    MCD_OPC_FilterValue, 32, 8, 0, // Skip to: 3789
+/* 3781 */    MCD_OPC_CheckPredicate, 2, 235, 7, // Skip to: 5812
+/* 3785 */    MCD_OPC_Decode, 156, 1, 48, // Opcode: FCMPLE16
+/* 3789 */    MCD_OPC_FilterValue, 33, 8, 0, // Skip to: 3801
+/* 3793 */    MCD_OPC_CheckPredicate, 1, 223, 7, // Skip to: 5812
+/* 3797 */    MCD_OPC_Decode, 139, 2, 26, // Opcode: FSLL16
+/* 3801 */    MCD_OPC_FilterValue, 34, 8, 0, // Skip to: 3813
+/* 3805 */    MCD_OPC_CheckPredicate, 2, 211, 7, // Skip to: 5812
+/* 3809 */    MCD_OPC_Decode, 158, 1, 48, // Opcode: FCMPNE16
+/* 3813 */    MCD_OPC_FilterValue, 35, 8, 0, // Skip to: 3825
+/* 3817 */    MCD_OPC_CheckPredicate, 1, 199, 7, // Skip to: 5812
+/* 3821 */    MCD_OPC_Decode, 151, 2, 26, // Opcode: FSRL16
+/* 3825 */    MCD_OPC_FilterValue, 36, 8, 0, // Skip to: 3837
+/* 3829 */    MCD_OPC_CheckPredicate, 2, 187, 7, // Skip to: 5812
+/* 3833 */    MCD_OPC_Decode, 157, 1, 48, // Opcode: FCMPLE32
+/* 3837 */    MCD_OPC_FilterValue, 37, 8, 0, // Skip to: 3849
+/* 3841 */    MCD_OPC_CheckPredicate, 1, 175, 7, // Skip to: 5812
+/* 3845 */    MCD_OPC_Decode, 140, 2, 26, // Opcode: FSLL32
+/* 3849 */    MCD_OPC_FilterValue, 38, 8, 0, // Skip to: 3861
+/* 3853 */    MCD_OPC_CheckPredicate, 2, 163, 7, // Skip to: 5812
+/* 3857 */    MCD_OPC_Decode, 159, 1, 48, // Opcode: FCMPNE32
+/* 3861 */    MCD_OPC_FilterValue, 39, 8, 0, // Skip to: 3873
+/* 3865 */    MCD_OPC_CheckPredicate, 1, 151, 7, // Skip to: 5812
+/* 3869 */    MCD_OPC_Decode, 152, 2, 26, // Opcode: FSRL32
+/* 3873 */    MCD_OPC_FilterValue, 40, 8, 0, // Skip to: 3885
+/* 3877 */    MCD_OPC_CheckPredicate, 2, 139, 7, // Skip to: 5812
+/* 3881 */    MCD_OPC_Decode, 154, 1, 48, // Opcode: FCMPGT16
+/* 3885 */    MCD_OPC_FilterValue, 41, 8, 0, // Skip to: 3897
+/* 3889 */    MCD_OPC_CheckPredicate, 1, 127, 7, // Skip to: 5812
+/* 3893 */    MCD_OPC_Decode, 137, 2, 26, // Opcode: FSLAS16
+/* 3897 */    MCD_OPC_FilterValue, 42, 8, 0, // Skip to: 3909
+/* 3901 */    MCD_OPC_CheckPredicate, 2, 115, 7, // Skip to: 5812
+/* 3905 */    MCD_OPC_Decode, 152, 1, 48, // Opcode: FCMPEQ16
+/* 3909 */    MCD_OPC_FilterValue, 43, 8, 0, // Skip to: 3921
+/* 3913 */    MCD_OPC_CheckPredicate, 1, 103, 7, // Skip to: 5812
+/* 3917 */    MCD_OPC_Decode, 145, 2, 26, // Opcode: FSRA16
+/* 3921 */    MCD_OPC_FilterValue, 44, 8, 0, // Skip to: 3933
+/* 3925 */    MCD_OPC_CheckPredicate, 2, 91, 7, // Skip to: 5812
+/* 3929 */    MCD_OPC_Decode, 155, 1, 48, // Opcode: FCMPGT32
+/* 3933 */    MCD_OPC_FilterValue, 45, 8, 0, // Skip to: 3945
+/* 3937 */    MCD_OPC_CheckPredicate, 1, 79, 7, // Skip to: 5812
+/* 3941 */    MCD_OPC_Decode, 138, 2, 26, // Opcode: FSLAS32
+/* 3945 */    MCD_OPC_FilterValue, 46, 8, 0, // Skip to: 3957
+/* 3949 */    MCD_OPC_CheckPredicate, 2, 67, 7, // Skip to: 5812
+/* 3953 */    MCD_OPC_Decode, 153, 1, 48, // Opcode: FCMPEQ32
+/* 3957 */    MCD_OPC_FilterValue, 47, 8, 0, // Skip to: 3969
+/* 3961 */    MCD_OPC_CheckPredicate, 1, 55, 7, // Skip to: 5812
+/* 3965 */    MCD_OPC_Decode, 146, 2, 26, // Opcode: FSRA32
+/* 3969 */    MCD_OPC_FilterValue, 49, 8, 0, // Skip to: 3981
+/* 3973 */    MCD_OPC_CheckPredicate, 2, 43, 7, // Skip to: 5812
+/* 3977 */    MCD_OPC_Decode, 214, 1, 26, // Opcode: FMUL8X16
+/* 3981 */    MCD_OPC_FilterValue, 51, 8, 0, // Skip to: 3993
+/* 3985 */    MCD_OPC_CheckPredicate, 2, 31, 7, // Skip to: 5812
+/* 3989 */    MCD_OPC_Decode, 216, 1, 26, // Opcode: FMUL8X16AU
+/* 3993 */    MCD_OPC_FilterValue, 53, 8, 0, // Skip to: 4005
+/* 3997 */    MCD_OPC_CheckPredicate, 2, 19, 7, // Skip to: 5812
+/* 4001 */    MCD_OPC_Decode, 215, 1, 26, // Opcode: FMUL8X16AL
+/* 4005 */    MCD_OPC_FilterValue, 54, 8, 0, // Skip to: 4017
+/* 4009 */    MCD_OPC_CheckPredicate, 2, 7, 7, // Skip to: 5812
+/* 4013 */    MCD_OPC_Decode, 212, 1, 26, // Opcode: FMUL8SUX16
+/* 4017 */    MCD_OPC_FilterValue, 55, 8, 0, // Skip to: 4029
+/* 4021 */    MCD_OPC_CheckPredicate, 2, 251, 6, // Skip to: 5812
+/* 4025 */    MCD_OPC_Decode, 213, 1, 26, // Opcode: FMUL8ULX16
+/* 4029 */    MCD_OPC_FilterValue, 56, 8, 0, // Skip to: 4041
+/* 4033 */    MCD_OPC_CheckPredicate, 2, 239, 6, // Skip to: 5812
+/* 4037 */    MCD_OPC_Decode, 218, 1, 26, // Opcode: FMULD8SUX16
+/* 4041 */    MCD_OPC_FilterValue, 57, 8, 0, // Skip to: 4053
+/* 4045 */    MCD_OPC_CheckPredicate, 2, 227, 6, // Skip to: 5812
+/* 4049 */    MCD_OPC_Decode, 219, 1, 26, // Opcode: FMULD8ULX16
+/* 4053 */    MCD_OPC_FilterValue, 58, 8, 0, // Skip to: 4065
+/* 4057 */    MCD_OPC_CheckPredicate, 2, 215, 6, // Skip to: 5812
+/* 4061 */    MCD_OPC_Decode, 249, 1, 26, // Opcode: FPACK32
+/* 4065 */    MCD_OPC_FilterValue, 59, 14, 0, // Skip to: 4083
+/* 4069 */    MCD_OPC_CheckPredicate, 2, 203, 6, // Skip to: 5812
+/* 4073 */    MCD_OPC_CheckField, 14, 5, 0, 197, 6, // Skip to: 5812
+/* 4079 */    MCD_OPC_Decode, 248, 1, 23, // Opcode: FPACK16
+/* 4083 */    MCD_OPC_FilterValue, 61, 14, 0, // Skip to: 4101
+/* 4087 */    MCD_OPC_CheckPredicate, 2, 185, 6, // Skip to: 5812
+/* 4091 */    MCD_OPC_CheckField, 14, 5, 0, 179, 6, // Skip to: 5812
+/* 4097 */    MCD_OPC_Decode, 250, 1, 23, // Opcode: FPACKFIX
+/* 4101 */    MCD_OPC_FilterValue, 62, 8, 0, // Skip to: 4113
+/* 4105 */    MCD_OPC_CheckPredicate, 2, 167, 6, // Skip to: 5812
+/* 4109 */    MCD_OPC_Decode, 233, 2, 26, // Opcode: PDIST
+/* 4113 */    MCD_OPC_FilterValue, 63, 8, 0, // Skip to: 4125
+/* 4117 */    MCD_OPC_CheckPredicate, 1, 155, 6, // Skip to: 5812
+/* 4121 */    MCD_OPC_Decode, 234, 2, 26, // Opcode: PDISTN
+/* 4125 */    MCD_OPC_FilterValue, 64, 8, 0, // Skip to: 4137
+/* 4129 */    MCD_OPC_CheckPredicate, 1, 143, 6, // Skip to: 5812
+/* 4133 */    MCD_OPC_Decode, 181, 1, 26, // Opcode: FMEAN16
+/* 4137 */    MCD_OPC_FilterValue, 66, 8, 0, // Skip to: 4149
+/* 4141 */    MCD_OPC_CheckPredicate, 1, 131, 6, // Skip to: 5812
+/* 4145 */    MCD_OPC_Decode, 255, 1, 26, // Opcode: FPADD64
+/* 4149 */    MCD_OPC_FilterValue, 68, 8, 0, // Skip to: 4161
+/* 4153 */    MCD_OPC_CheckPredicate, 1, 119, 6, // Skip to: 5812
+/* 4157 */    MCD_OPC_Decode, 150, 1, 26, // Opcode: FCHKSM16
+/* 4161 */    MCD_OPC_FilterValue, 72, 8, 0, // Skip to: 4173
+/* 4165 */    MCD_OPC_CheckPredicate, 2, 107, 6, // Skip to: 5812
+/* 4169 */    MCD_OPC_Decode, 141, 1, 26, // Opcode: FALIGNADATA
+/* 4173 */    MCD_OPC_FilterValue, 75, 8, 0, // Skip to: 4185
+/* 4177 */    MCD_OPC_CheckPredicate, 2, 95, 6, // Skip to: 5812
+/* 4181 */    MCD_OPC_Decode, 128, 2, 26, // Opcode: FPMERGE
+/* 4185 */    MCD_OPC_FilterValue, 77, 14, 0, // Skip to: 4203
+/* 4189 */    MCD_OPC_CheckPredicate, 2, 83, 6, // Skip to: 5812
+/* 4193 */    MCD_OPC_CheckField, 14, 5, 0, 77, 6, // Skip to: 5812
+/* 4199 */    MCD_OPC_Decode, 170, 1, 23, // Opcode: FEXPAND
+/* 4203 */    MCD_OPC_FilterValue, 80, 8, 0, // Skip to: 4215
+/* 4207 */    MCD_OPC_CheckPredicate, 2, 65, 6, // Skip to: 5812
+/* 4211 */    MCD_OPC_Decode, 251, 1, 26, // Opcode: FPADD16
+/* 4215 */    MCD_OPC_FilterValue, 81, 8, 0, // Skip to: 4227
+/* 4219 */    MCD_OPC_CheckPredicate, 2, 53, 6, // Skip to: 5812
+/* 4223 */    MCD_OPC_Decode, 252, 1, 26, // Opcode: FPADD16S
+/* 4227 */    MCD_OPC_FilterValue, 82, 8, 0, // Skip to: 4239
+/* 4231 */    MCD_OPC_CheckPredicate, 2, 41, 6, // Skip to: 5812
+/* 4235 */    MCD_OPC_Decode, 253, 1, 26, // Opcode: FPADD32
+/* 4239 */    MCD_OPC_FilterValue, 83, 8, 0, // Skip to: 4251
+/* 4243 */    MCD_OPC_CheckPredicate, 2, 29, 6, // Skip to: 5812
+/* 4247 */    MCD_OPC_Decode, 254, 1, 26, // Opcode: FPADD32S
+/* 4251 */    MCD_OPC_FilterValue, 84, 8, 0, // Skip to: 4263
+/* 4255 */    MCD_OPC_CheckPredicate, 2, 17, 6, // Skip to: 5812
+/* 4259 */    MCD_OPC_Decode, 129, 2, 26, // Opcode: FPSUB16
+/* 4263 */    MCD_OPC_FilterValue, 85, 8, 0, // Skip to: 4275
+/* 4267 */    MCD_OPC_CheckPredicate, 2, 5, 6, // Skip to: 5812
+/* 4271 */    MCD_OPC_Decode, 130, 2, 26, // Opcode: FPSUB16S
+/* 4275 */    MCD_OPC_FilterValue, 86, 8, 0, // Skip to: 4287
+/* 4279 */    MCD_OPC_CheckPredicate, 2, 249, 5, // Skip to: 5812
+/* 4283 */    MCD_OPC_Decode, 131, 2, 26, // Opcode: FPSUB32
+/* 4287 */    MCD_OPC_FilterValue, 87, 8, 0, // Skip to: 4299
+/* 4291 */    MCD_OPC_CheckPredicate, 2, 237, 5, // Skip to: 5812
+/* 4295 */    MCD_OPC_Decode, 132, 2, 26, // Opcode: FPSUB32S
+/* 4299 */    MCD_OPC_FilterValue, 96, 20, 0, // Skip to: 4323
+/* 4303 */    MCD_OPC_CheckPredicate, 2, 225, 5, // Skip to: 5812
+/* 4307 */    MCD_OPC_CheckField, 14, 5, 0, 219, 5, // Skip to: 5812
+/* 4313 */    MCD_OPC_CheckField, 0, 5, 0, 213, 5, // Skip to: 5812
+/* 4319 */    MCD_OPC_Decode, 167, 2, 49, // Opcode: FZERO
+/* 4323 */    MCD_OPC_FilterValue, 97, 20, 0, // Skip to: 4347
+/* 4327 */    MCD_OPC_CheckPredicate, 2, 201, 5, // Skip to: 5812
+/* 4331 */    MCD_OPC_CheckField, 14, 5, 0, 195, 5, // Skip to: 5812
+/* 4337 */    MCD_OPC_CheckField, 0, 5, 0, 189, 5, // Skip to: 5812
+/* 4343 */    MCD_OPC_Decode, 168, 2, 50, // Opcode: FZEROS
+/* 4347 */    MCD_OPC_FilterValue, 98, 8, 0, // Skip to: 4359
+/* 4351 */    MCD_OPC_CheckPredicate, 2, 177, 5, // Skip to: 5812
+/* 4355 */    MCD_OPC_Decode, 233, 1, 26, // Opcode: FNOR
+/* 4359 */    MCD_OPC_FilterValue, 99, 8, 0, // Skip to: 4371
+/* 4363 */    MCD_OPC_CheckPredicate, 2, 165, 5, // Skip to: 5812
+/* 4367 */    MCD_OPC_Decode, 234, 1, 25, // Opcode: FNORS
+/* 4371 */    MCD_OPC_FilterValue, 100, 8, 0, // Skip to: 4383
+/* 4375 */    MCD_OPC_CheckPredicate, 2, 153, 5, // Skip to: 5812
+/* 4379 */    MCD_OPC_Decode, 145, 1, 26, // Opcode: FANDNOT2
+/* 4383 */    MCD_OPC_FilterValue, 101, 8, 0, // Skip to: 4395
+/* 4387 */    MCD_OPC_CheckPredicate, 2, 141, 5, // Skip to: 5812
+/* 4391 */    MCD_OPC_Decode, 146, 1, 25, // Opcode: FANDNOT2S
+/* 4395 */    MCD_OPC_FilterValue, 102, 14, 0, // Skip to: 4413
+/* 4399 */    MCD_OPC_CheckPredicate, 2, 129, 5, // Skip to: 5812
+/* 4403 */    MCD_OPC_CheckField, 14, 5, 0, 123, 5, // Skip to: 5812
+/* 4409 */    MCD_OPC_Decode, 237, 1, 23, // Opcode: FNOT2
+/* 4413 */    MCD_OPC_FilterValue, 103, 14, 0, // Skip to: 4431
+/* 4417 */    MCD_OPC_CheckPredicate, 2, 111, 5, // Skip to: 5812
+/* 4421 */    MCD_OPC_CheckField, 14, 5, 0, 105, 5, // Skip to: 5812
+/* 4427 */    MCD_OPC_Decode, 238, 1, 22, // Opcode: FNOT2S
+/* 4431 */    MCD_OPC_FilterValue, 104, 8, 0, // Skip to: 4443
+/* 4435 */    MCD_OPC_CheckPredicate, 2, 93, 5, // Skip to: 5812
+/* 4439 */    MCD_OPC_Decode, 143, 1, 26, // Opcode: FANDNOT1
+/* 4443 */    MCD_OPC_FilterValue, 105, 8, 0, // Skip to: 4455
+/* 4447 */    MCD_OPC_CheckPredicate, 2, 81, 5, // Skip to: 5812
+/* 4451 */    MCD_OPC_Decode, 144, 1, 25, // Opcode: FANDNOT1S
+/* 4455 */    MCD_OPC_FilterValue, 106, 14, 0, // Skip to: 4473
+/* 4459 */    MCD_OPC_CheckPredicate, 2, 69, 5, // Skip to: 5812
+/* 4463 */    MCD_OPC_CheckField, 0, 5, 0, 63, 5, // Skip to: 5812
+/* 4469 */    MCD_OPC_Decode, 235, 1, 51, // Opcode: FNOT1
+/* 4473 */    MCD_OPC_FilterValue, 107, 14, 0, // Skip to: 4491
+/* 4477 */    MCD_OPC_CheckPredicate, 2, 51, 5, // Skip to: 5812
+/* 4481 */    MCD_OPC_CheckField, 0, 5, 0, 45, 5, // Skip to: 5812
+/* 4487 */    MCD_OPC_Decode, 236, 1, 52, // Opcode: FNOT1S
+/* 4491 */    MCD_OPC_FilterValue, 108, 8, 0, // Skip to: 4503
+/* 4495 */    MCD_OPC_CheckPredicate, 2, 33, 5, // Skip to: 5812
+/* 4499 */    MCD_OPC_Decode, 162, 2, 26, // Opcode: FXOR
+/* 4503 */    MCD_OPC_FilterValue, 109, 8, 0, // Skip to: 4515
+/* 4507 */    MCD_OPC_CheckPredicate, 2, 21, 5, // Skip to: 5812
+/* 4511 */    MCD_OPC_Decode, 163, 2, 25, // Opcode: FXORS
+/* 4515 */    MCD_OPC_FilterValue, 110, 8, 0, // Skip to: 4527
+/* 4519 */    MCD_OPC_CheckPredicate, 2, 9, 5, // Skip to: 5812
+/* 4523 */    MCD_OPC_Decode, 224, 1, 26, // Opcode: FNAND
+/* 4527 */    MCD_OPC_FilterValue, 111, 8, 0, // Skip to: 4539
+/* 4531 */    MCD_OPC_CheckPredicate, 2, 253, 4, // Skip to: 5812
+/* 4535 */    MCD_OPC_Decode, 225, 1, 25, // Opcode: FNANDS
+/* 4539 */    MCD_OPC_FilterValue, 112, 8, 0, // Skip to: 4551
+/* 4543 */    MCD_OPC_CheckPredicate, 2, 241, 4, // Skip to: 5812
+/* 4547 */    MCD_OPC_Decode, 142, 1, 26, // Opcode: FAND
+/* 4551 */    MCD_OPC_FilterValue, 113, 8, 0, // Skip to: 4563
+/* 4555 */    MCD_OPC_CheckPredicate, 2, 229, 4, // Skip to: 5812
+/* 4559 */    MCD_OPC_Decode, 147, 1, 25, // Opcode: FANDS
+/* 4563 */    MCD_OPC_FilterValue, 114, 8, 0, // Skip to: 4575
+/* 4567 */    MCD_OPC_CheckPredicate, 2, 217, 4, // Skip to: 5812
+/* 4571 */    MCD_OPC_Decode, 160, 2, 26, // Opcode: FXNOR
+/* 4575 */    MCD_OPC_FilterValue, 115, 8, 0, // Skip to: 4587
+/* 4579 */    MCD_OPC_CheckPredicate, 2, 205, 4, // Skip to: 5812
+/* 4583 */    MCD_OPC_Decode, 161, 2, 25, // Opcode: FXNORS
+/* 4587 */    MCD_OPC_FilterValue, 116, 14, 0, // Skip to: 4605
+/* 4591 */    MCD_OPC_CheckPredicate, 2, 193, 4, // Skip to: 5812
+/* 4595 */    MCD_OPC_CheckField, 0, 5, 0, 187, 4, // Skip to: 5812
+/* 4601 */    MCD_OPC_Decode, 147, 2, 51, // Opcode: FSRC1
+/* 4605 */    MCD_OPC_FilterValue, 117, 14, 0, // Skip to: 4623
+/* 4609 */    MCD_OPC_CheckPredicate, 2, 175, 4, // Skip to: 5812
+/* 4613 */    MCD_OPC_CheckField, 0, 5, 0, 169, 4, // Skip to: 5812
+/* 4619 */    MCD_OPC_Decode, 148, 2, 52, // Opcode: FSRC1S
+/* 4623 */    MCD_OPC_FilterValue, 118, 8, 0, // Skip to: 4635
+/* 4627 */    MCD_OPC_CheckPredicate, 2, 157, 4, // Skip to: 5812
+/* 4631 */    MCD_OPC_Decode, 245, 1, 26, // Opcode: FORNOT2
+/* 4635 */    MCD_OPC_FilterValue, 119, 8, 0, // Skip to: 4647
+/* 4639 */    MCD_OPC_CheckPredicate, 2, 145, 4, // Skip to: 5812
+/* 4643 */    MCD_OPC_Decode, 246, 1, 25, // Opcode: FORNOT2S
+/* 4647 */    MCD_OPC_FilterValue, 120, 14, 0, // Skip to: 4665
+/* 4651 */    MCD_OPC_CheckPredicate, 2, 133, 4, // Skip to: 5812
+/* 4655 */    MCD_OPC_CheckField, 14, 5, 0, 127, 4, // Skip to: 5812
+/* 4661 */    MCD_OPC_Decode, 149, 2, 23, // Opcode: FSRC2
+/* 4665 */    MCD_OPC_FilterValue, 121, 14, 0, // Skip to: 4683
+/* 4669 */    MCD_OPC_CheckPredicate, 2, 115, 4, // Skip to: 5812
+/* 4673 */    MCD_OPC_CheckField, 14, 5, 0, 109, 4, // Skip to: 5812
+/* 4679 */    MCD_OPC_Decode, 150, 2, 22, // Opcode: FSRC2S
+/* 4683 */    MCD_OPC_FilterValue, 122, 8, 0, // Skip to: 4695
+/* 4687 */    MCD_OPC_CheckPredicate, 2, 97, 4, // Skip to: 5812
+/* 4691 */    MCD_OPC_Decode, 243, 1, 26, // Opcode: FORNOT1
+/* 4695 */    MCD_OPC_FilterValue, 123, 8, 0, // Skip to: 4707
+/* 4699 */    MCD_OPC_CheckPredicate, 2, 85, 4, // Skip to: 5812
+/* 4703 */    MCD_OPC_Decode, 244, 1, 25, // Opcode: FORNOT1S
+/* 4707 */    MCD_OPC_FilterValue, 124, 8, 0, // Skip to: 4719
+/* 4711 */    MCD_OPC_CheckPredicate, 2, 73, 4, // Skip to: 5812
+/* 4715 */    MCD_OPC_Decode, 242, 1, 26, // Opcode: FOR
+/* 4719 */    MCD_OPC_FilterValue, 125, 8, 0, // Skip to: 4731
+/* 4723 */    MCD_OPC_CheckPredicate, 2, 61, 4, // Skip to: 5812
+/* 4727 */    MCD_OPC_Decode, 247, 1, 25, // Opcode: FORS
+/* 4731 */    MCD_OPC_FilterValue, 126, 20, 0, // Skip to: 4755
+/* 4735 */    MCD_OPC_CheckPredicate, 2, 49, 4, // Skip to: 5812
+/* 4739 */    MCD_OPC_CheckField, 14, 5, 0, 43, 4, // Skip to: 5812
+/* 4745 */    MCD_OPC_CheckField, 0, 5, 0, 37, 4, // Skip to: 5812
+/* 4751 */    MCD_OPC_Decode, 240, 1, 49, // Opcode: FONE
+/* 4755 */    MCD_OPC_FilterValue, 127, 20, 0, // Skip to: 4779
+/* 4759 */    MCD_OPC_CheckPredicate, 2, 25, 4, // Skip to: 5812
+/* 4763 */    MCD_OPC_CheckField, 14, 5, 0, 19, 4, // Skip to: 5812
+/* 4769 */    MCD_OPC_CheckField, 0, 5, 0, 13, 4, // Skip to: 5812
+/* 4775 */    MCD_OPC_Decode, 241, 1, 50, // Opcode: FONES
+/* 4779 */    MCD_OPC_FilterValue, 128, 1, 26, 0, // Skip to: 4810
+/* 4784 */    MCD_OPC_CheckPredicate, 2, 0, 4, // Skip to: 5812
+/* 4788 */    MCD_OPC_CheckField, 25, 5, 0, 250, 3, // Skip to: 5812
+/* 4794 */    MCD_OPC_CheckField, 14, 5, 0, 244, 3, // Skip to: 5812
+/* 4800 */    MCD_OPC_CheckField, 0, 5, 0, 238, 3, // Skip to: 5812
+/* 4806 */    MCD_OPC_Decode, 133, 3, 4, // Opcode: SHUTDOWN
+/* 4810 */    MCD_OPC_FilterValue, 129, 1, 26, 0, // Skip to: 4841
+/* 4815 */    MCD_OPC_CheckPredicate, 3, 225, 3, // Skip to: 5812
+/* 4819 */    MCD_OPC_CheckField, 25, 5, 0, 219, 3, // Skip to: 5812
+/* 4825 */    MCD_OPC_CheckField, 14, 5, 0, 213, 3, // Skip to: 5812
+/* 4831 */    MCD_OPC_CheckField, 0, 5, 0, 207, 3, // Skip to: 5812
+/* 4837 */    MCD_OPC_Decode, 134, 3, 4, // Opcode: SIAM
+/* 4841 */    MCD_OPC_FilterValue, 144, 2, 14, 0, // Skip to: 4860
+/* 4846 */    MCD_OPC_CheckPredicate, 1, 194, 3, // Skip to: 5812
+/* 4850 */    MCD_OPC_CheckField, 14, 5, 0, 188, 3, // Skip to: 5812
+/* 4856 */    MCD_OPC_Decode, 196, 2, 53, // Opcode: MOVDTOX
+/* 4860 */    MCD_OPC_FilterValue, 145, 2, 14, 0, // Skip to: 4879
+/* 4865 */    MCD_OPC_CheckPredicate, 1, 175, 3, // Skip to: 5812
+/* 4869 */    MCD_OPC_CheckField, 14, 5, 0, 169, 3, // Skip to: 5812
+/* 4875 */    MCD_OPC_Decode, 214, 2, 53, // Opcode: MOVSTOUW
+/* 4879 */    MCD_OPC_FilterValue, 147, 2, 14, 0, // Skip to: 4898
+/* 4884 */    MCD_OPC_CheckPredicate, 1, 156, 3, // Skip to: 5812
+/* 4888 */    MCD_OPC_CheckField, 14, 5, 0, 150, 3, // Skip to: 5812
+/* 4894 */    MCD_OPC_Decode, 213, 2, 53, // Opcode: MOVSTOSW
+/* 4898 */    MCD_OPC_FilterValue, 149, 2, 8, 0, // Skip to: 4911
+/* 4903 */    MCD_OPC_CheckPredicate, 1, 137, 3, // Skip to: 5812
+/* 4907 */    MCD_OPC_Decode, 222, 3, 10, // Opcode: XMULX
+/* 4911 */    MCD_OPC_FilterValue, 151, 2, 8, 0, // Skip to: 4924
+/* 4916 */    MCD_OPC_CheckPredicate, 1, 124, 3, // Skip to: 5812
+/* 4920 */    MCD_OPC_Decode, 223, 3, 10, // Opcode: XMULXHI
+/* 4924 */    MCD_OPC_FilterValue, 152, 2, 14, 0, // Skip to: 4943
+/* 4929 */    MCD_OPC_CheckPredicate, 1, 111, 3, // Skip to: 5812
+/* 4933 */    MCD_OPC_CheckField, 14, 5, 0, 105, 3, // Skip to: 5812
+/* 4939 */    MCD_OPC_Decode, 218, 2, 54, // Opcode: MOVXTOD
+/* 4943 */    MCD_OPC_FilterValue, 153, 2, 14, 0, // Skip to: 4962
+/* 4948 */    MCD_OPC_CheckPredicate, 1, 92, 3, // Skip to: 5812
+/* 4952 */    MCD_OPC_CheckField, 14, 5, 0, 86, 3, // Skip to: 5812
+/* 4958 */    MCD_OPC_Decode, 215, 2, 54, // Opcode: MOVWTOS
+/* 4962 */    MCD_OPC_FilterValue, 209, 2, 8, 0, // Skip to: 4975
+/* 4967 */    MCD_OPC_CheckPredicate, 1, 73, 3, // Skip to: 5812
+/* 4971 */    MCD_OPC_Decode, 179, 1, 44, // Opcode: FLCMPS
+/* 4975 */    MCD_OPC_FilterValue, 210, 2, 64, 3, // Skip to: 5812
+/* 4980 */    MCD_OPC_CheckPredicate, 1, 60, 3, // Skip to: 5812
+/* 4984 */    MCD_OPC_Decode, 178, 1, 44, // Opcode: FLCMPD
+/* 4988 */    MCD_OPC_FilterValue, 56, 25, 0, // Skip to: 5017
+/* 4992 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 4995 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5009
+/* 4999 */    MCD_OPC_CheckField, 5, 8, 0, 39, 3, // Skip to: 5812
+/* 5005 */    MCD_OPC_Decode, 171, 2, 55, // Opcode: JMPLrr
+/* 5009 */    MCD_OPC_FilterValue, 1, 31, 3, // Skip to: 5812
+/* 5013 */    MCD_OPC_Decode, 170, 2, 55, // Opcode: JMPLri
+/* 5017 */    MCD_OPC_FilterValue, 57, 37, 0, // Skip to: 5058
+/* 5021 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5024 */    MCD_OPC_FilterValue, 0, 16, 0, // Skip to: 5044
+/* 5028 */    MCD_OPC_CheckField, 25, 5, 0, 10, 3, // Skip to: 5812
+/* 5034 */    MCD_OPC_CheckField, 5, 8, 0, 4, 3, // Skip to: 5812
+/* 5040 */    MCD_OPC_Decode, 242, 2, 56, // Opcode: RETTrr
+/* 5044 */    MCD_OPC_FilterValue, 1, 252, 2, // Skip to: 5812
+/* 5048 */    MCD_OPC_CheckField, 25, 5, 0, 246, 2, // Skip to: 5812
+/* 5054 */    MCD_OPC_Decode, 241, 2, 56, // Opcode: RETTri
+/* 5058 */    MCD_OPC_FilterValue, 58, 115, 0, // Skip to: 5177
+/* 5062 */    MCD_OPC_ExtractField, 8, 6,  // Inst{13-8} ...
+/* 5065 */    MCD_OPC_FilterValue, 0, 16, 0, // Skip to: 5085
+/* 5069 */    MCD_OPC_CheckField, 29, 1, 0, 225, 2, // Skip to: 5812
+/* 5075 */    MCD_OPC_CheckField, 5, 3, 0, 219, 2, // Skip to: 5812
+/* 5081 */    MCD_OPC_Decode, 185, 3, 57, // Opcode: TICCrr
+/* 5085 */    MCD_OPC_FilterValue, 16, 16, 0, // Skip to: 5105
+/* 5089 */    MCD_OPC_CheckField, 29, 1, 0, 205, 2, // Skip to: 5812
+/* 5095 */    MCD_OPC_CheckField, 5, 3, 0, 199, 2, // Skip to: 5812
+/* 5101 */    MCD_OPC_Decode, 196, 3, 57, // Opcode: TXCCrr
+/* 5105 */    MCD_OPC_FilterValue, 32, 54, 0, // Skip to: 5163
+/* 5109 */    MCD_OPC_ExtractField, 29, 1,  // Inst{29} ...
+/* 5112 */    MCD_OPC_FilterValue, 0, 184, 2, // Skip to: 5812
+/* 5116 */    MCD_OPC_ExtractField, 0, 8,  // Inst{7-0} ...
+/* 5119 */    MCD_OPC_FilterValue, 3, 16, 0, // Skip to: 5139
+/* 5123 */    MCD_OPC_CheckField, 25, 4, 0, 30, 0, // Skip to: 5159
+/* 5129 */    MCD_OPC_CheckField, 14, 5, 1, 24, 0, // Skip to: 5159
+/* 5135 */    MCD_OPC_Decode, 178, 3, 4, // Opcode: TA3
+/* 5139 */    MCD_OPC_FilterValue, 5, 16, 0, // Skip to: 5159
+/* 5143 */    MCD_OPC_CheckField, 25, 4, 8, 10, 0, // Skip to: 5159
+/* 5149 */    MCD_OPC_CheckField, 14, 5, 0, 4, 0, // Skip to: 5159
+/* 5155 */    MCD_OPC_Decode, 179, 3, 4, // Opcode: TA5
+/* 5159 */    MCD_OPC_Decode, 184, 3, 58, // Opcode: TICCri
+/* 5163 */    MCD_OPC_FilterValue, 48, 133, 2, // Skip to: 5812
+/* 5167 */    MCD_OPC_CheckField, 29, 1, 0, 127, 2, // Skip to: 5812
+/* 5173 */    MCD_OPC_Decode, 195, 3, 58, // Opcode: TXCCri
+/* 5177 */    MCD_OPC_FilterValue, 60, 25, 0, // Skip to: 5206
+/* 5181 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5184 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5198
+/* 5188 */    MCD_OPC_CheckField, 5, 8, 0, 106, 2, // Skip to: 5812
+/* 5194 */    MCD_OPC_Decode, 244, 2, 8, // Opcode: SAVErr
+/* 5198 */    MCD_OPC_FilterValue, 1, 98, 2, // Skip to: 5812
+/* 5202 */    MCD_OPC_Decode, 243, 2, 9, // Opcode: SAVEri
+/* 5206 */    MCD_OPC_FilterValue, 61, 90, 2, // Skip to: 5812
+/* 5210 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5213 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5227
+/* 5217 */    MCD_OPC_CheckField, 5, 8, 0, 77, 2, // Skip to: 5812
+/* 5223 */    MCD_OPC_Decode, 238, 2, 8, // Opcode: RESTORErr
+/* 5227 */    MCD_OPC_FilterValue, 1, 69, 2, // Skip to: 5812
+/* 5231 */    MCD_OPC_Decode, 237, 2, 9, // Opcode: RESTOREri
+/* 5235 */    MCD_OPC_FilterValue, 3, 61, 2, // Skip to: 5812
+/* 5239 */    MCD_OPC_ExtractField, 19, 6,  // Inst{24-19} ...
+/* 5242 */    MCD_OPC_FilterValue, 0, 25, 0, // Skip to: 5271
+/* 5246 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5249 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5263
+/* 5253 */    MCD_OPC_CheckField, 5, 8, 0, 41, 2, // Skip to: 5812
+/* 5259 */    MCD_OPC_Decode, 191, 2, 59, // Opcode: LDrr
+/* 5263 */    MCD_OPC_FilterValue, 1, 33, 2, // Skip to: 5812
+/* 5267 */    MCD_OPC_Decode, 190, 2, 59, // Opcode: LDri
+/* 5271 */    MCD_OPC_FilterValue, 1, 25, 0, // Skip to: 5300
+/* 5275 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5278 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5292
+/* 5282 */    MCD_OPC_CheckField, 5, 8, 0, 12, 2, // Skip to: 5812
+/* 5288 */    MCD_OPC_Decode, 185, 2, 59, // Opcode: LDUBrr
+/* 5292 */    MCD_OPC_FilterValue, 1, 4, 2, // Skip to: 5812
+/* 5296 */    MCD_OPC_Decode, 184, 2, 59, // Opcode: LDUBri
+/* 5300 */    MCD_OPC_FilterValue, 2, 25, 0, // Skip to: 5329
+/* 5304 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5307 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5321
+/* 5311 */    MCD_OPC_CheckField, 5, 8, 0, 239, 1, // Skip to: 5812
+/* 5317 */    MCD_OPC_Decode, 187, 2, 59, // Opcode: LDUHrr
+/* 5321 */    MCD_OPC_FilterValue, 1, 231, 1, // Skip to: 5812
+/* 5325 */    MCD_OPC_Decode, 186, 2, 59, // Opcode: LDUHri
+/* 5329 */    MCD_OPC_FilterValue, 4, 25, 0, // Skip to: 5358
+/* 5333 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5336 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5350
+/* 5340 */    MCD_OPC_CheckField, 5, 8, 0, 210, 1, // Skip to: 5812
+/* 5346 */    MCD_OPC_Decode, 165, 3, 60, // Opcode: STrr
+/* 5350 */    MCD_OPC_FilterValue, 1, 202, 1, // Skip to: 5812
+/* 5354 */    MCD_OPC_Decode, 164, 3, 60, // Opcode: STri
+/* 5358 */    MCD_OPC_FilterValue, 5, 25, 0, // Skip to: 5387
+/* 5362 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5365 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5379
+/* 5369 */    MCD_OPC_CheckField, 5, 8, 0, 181, 1, // Skip to: 5812
+/* 5375 */    MCD_OPC_Decode, 153, 3, 60, // Opcode: STBrr
+/* 5379 */    MCD_OPC_FilterValue, 1, 173, 1, // Skip to: 5812
+/* 5383 */    MCD_OPC_Decode, 152, 3, 60, // Opcode: STBri
+/* 5387 */    MCD_OPC_FilterValue, 6, 25, 0, // Skip to: 5416
+/* 5391 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5394 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5408
+/* 5398 */    MCD_OPC_CheckField, 5, 8, 0, 152, 1, // Skip to: 5812
+/* 5404 */    MCD_OPC_Decode, 159, 3, 60, // Opcode: STHrr
+/* 5408 */    MCD_OPC_FilterValue, 1, 144, 1, // Skip to: 5812
+/* 5412 */    MCD_OPC_Decode, 158, 3, 60, // Opcode: STHri
+/* 5416 */    MCD_OPC_FilterValue, 8, 25, 0, // Skip to: 5445
+/* 5420 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5423 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5437
+/* 5427 */    MCD_OPC_CheckField, 5, 8, 0, 123, 1, // Skip to: 5812
+/* 5433 */    MCD_OPC_Decode, 183, 2, 59, // Opcode: LDSWrr
+/* 5437 */    MCD_OPC_FilterValue, 1, 115, 1, // Skip to: 5812
+/* 5441 */    MCD_OPC_Decode, 182, 2, 59, // Opcode: LDSWri
+/* 5445 */    MCD_OPC_FilterValue, 9, 25, 0, // Skip to: 5474
+/* 5449 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5452 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5466
+/* 5456 */    MCD_OPC_CheckField, 5, 8, 0, 94, 1, // Skip to: 5812
+/* 5462 */    MCD_OPC_Decode, 179, 2, 59, // Opcode: LDSBrr
+/* 5466 */    MCD_OPC_FilterValue, 1, 86, 1, // Skip to: 5812
+/* 5470 */    MCD_OPC_Decode, 178, 2, 59, // Opcode: LDSBri
+/* 5474 */    MCD_OPC_FilterValue, 10, 25, 0, // Skip to: 5503
+/* 5478 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5481 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5495
+/* 5485 */    MCD_OPC_CheckField, 5, 8, 0, 65, 1, // Skip to: 5812
+/* 5491 */    MCD_OPC_Decode, 181, 2, 59, // Opcode: LDSHrr
+/* 5495 */    MCD_OPC_FilterValue, 1, 57, 1, // Skip to: 5812
+/* 5499 */    MCD_OPC_Decode, 180, 2, 59, // Opcode: LDSHri
+/* 5503 */    MCD_OPC_FilterValue, 11, 25, 0, // Skip to: 5532
+/* 5507 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5510 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5524
+/* 5514 */    MCD_OPC_CheckField, 5, 8, 0, 36, 1, // Skip to: 5812
+/* 5520 */    MCD_OPC_Decode, 189, 2, 59, // Opcode: LDXrr
+/* 5524 */    MCD_OPC_FilterValue, 1, 28, 1, // Skip to: 5812
+/* 5528 */    MCD_OPC_Decode, 188, 2, 59, // Opcode: LDXri
+/* 5532 */    MCD_OPC_FilterValue, 14, 25, 0, // Skip to: 5561
+/* 5536 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5539 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5553
+/* 5543 */    MCD_OPC_CheckField, 5, 8, 0, 7, 1, // Skip to: 5812
+/* 5549 */    MCD_OPC_Decode, 163, 3, 60, // Opcode: STXrr
+/* 5553 */    MCD_OPC_FilterValue, 1, 255, 0, // Skip to: 5812
+/* 5557 */    MCD_OPC_Decode, 162, 3, 60, // Opcode: STXri
+/* 5561 */    MCD_OPC_FilterValue, 15, 25, 0, // Skip to: 5590
+/* 5565 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5568 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5582
+/* 5572 */    MCD_OPC_CheckField, 5, 8, 0, 234, 0, // Skip to: 5812
+/* 5578 */    MCD_OPC_Decode, 177, 3, 61, // Opcode: SWAPrr
+/* 5582 */    MCD_OPC_FilterValue, 1, 226, 0, // Skip to: 5812
+/* 5586 */    MCD_OPC_Decode, 176, 3, 61, // Opcode: SWAPri
+/* 5590 */    MCD_OPC_FilterValue, 32, 25, 0, // Skip to: 5619
+/* 5594 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5597 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5611
+/* 5601 */    MCD_OPC_CheckField, 5, 8, 0, 205, 0, // Skip to: 5812
+/* 5607 */    MCD_OPC_Decode, 175, 2, 62, // Opcode: LDFrr
+/* 5611 */    MCD_OPC_FilterValue, 1, 197, 0, // Skip to: 5812
+/* 5615 */    MCD_OPC_Decode, 174, 2, 62, // Opcode: LDFri
+/* 5619 */    MCD_OPC_FilterValue, 34, 33, 0, // Skip to: 5656
+/* 5623 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5626 */    MCD_OPC_FilterValue, 0, 14, 0, // Skip to: 5644
+/* 5630 */    MCD_OPC_CheckPredicate, 0, 178, 0, // Skip to: 5812
+/* 5634 */    MCD_OPC_CheckField, 5, 8, 0, 172, 0, // Skip to: 5812
+/* 5640 */    MCD_OPC_Decode, 177, 2, 63, // Opcode: LDQFrr
+/* 5644 */    MCD_OPC_FilterValue, 1, 164, 0, // Skip to: 5812
+/* 5648 */    MCD_OPC_CheckPredicate, 0, 160, 0, // Skip to: 5812
+/* 5652 */    MCD_OPC_Decode, 176, 2, 63, // Opcode: LDQFri
+/* 5656 */    MCD_OPC_FilterValue, 35, 25, 0, // Skip to: 5685
+/* 5660 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5663 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5677
+/* 5667 */    MCD_OPC_CheckField, 5, 8, 0, 139, 0, // Skip to: 5812
+/* 5673 */    MCD_OPC_Decode, 173, 2, 64, // Opcode: LDDFrr
+/* 5677 */    MCD_OPC_FilterValue, 1, 131, 0, // Skip to: 5812
+/* 5681 */    MCD_OPC_Decode, 172, 2, 64, // Opcode: LDDFri
+/* 5685 */    MCD_OPC_FilterValue, 36, 25, 0, // Skip to: 5714
+/* 5689 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5692 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5706
+/* 5696 */    MCD_OPC_CheckField, 5, 8, 0, 110, 0, // Skip to: 5812
+/* 5702 */    MCD_OPC_Decode, 157, 3, 65, // Opcode: STFrr
+/* 5706 */    MCD_OPC_FilterValue, 1, 102, 0, // Skip to: 5812
+/* 5710 */    MCD_OPC_Decode, 156, 3, 65, // Opcode: STFri
+/* 5714 */    MCD_OPC_FilterValue, 38, 33, 0, // Skip to: 5751
+/* 5718 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5721 */    MCD_OPC_FilterValue, 0, 14, 0, // Skip to: 5739
+/* 5725 */    MCD_OPC_CheckPredicate, 0, 83, 0, // Skip to: 5812
+/* 5729 */    MCD_OPC_CheckField, 5, 8, 0, 77, 0, // Skip to: 5812
+/* 5735 */    MCD_OPC_Decode, 161, 3, 66, // Opcode: STQFrr
+/* 5739 */    MCD_OPC_FilterValue, 1, 69, 0, // Skip to: 5812
+/* 5743 */    MCD_OPC_CheckPredicate, 0, 65, 0, // Skip to: 5812
+/* 5747 */    MCD_OPC_Decode, 160, 3, 66, // Opcode: STQFri
+/* 5751 */    MCD_OPC_FilterValue, 39, 25, 0, // Skip to: 5780
+/* 5755 */    MCD_OPC_ExtractField, 13, 1,  // Inst{13} ...
+/* 5758 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 5772
+/* 5762 */    MCD_OPC_CheckField, 5, 8, 0, 44, 0, // Skip to: 5812
+/* 5768 */    MCD_OPC_Decode, 155, 3, 67, // Opcode: STDFrr
+/* 5772 */    MCD_OPC_FilterValue, 1, 36, 0, // Skip to: 5812
+/* 5776 */    MCD_OPC_Decode, 154, 3, 67, // Opcode: STDFri
+/* 5780 */    MCD_OPC_FilterValue, 60, 14, 0, // Skip to: 5798
+/* 5784 */    MCD_OPC_CheckPredicate, 0, 24, 0, // Skip to: 5812
+/* 5788 */    MCD_OPC_CheckField, 5, 9, 128, 1, 17, 0, // Skip to: 5812
+/* 5795 */    MCD_OPC_Decode, 117, 68, // Opcode: CASrr
+/* 5798 */    MCD_OPC_FilterValue, 62, 10, 0, // Skip to: 5812
+/* 5802 */    MCD_OPC_CheckField, 5, 9, 128, 1, 3, 0, // Skip to: 5812
+/* 5809 */    MCD_OPC_Decode, 116, 69, // Opcode: CASXrr
+/* 5812 */    MCD_OPC_Fail,
+  0
+};
+
+static bool checkDecoderPredicate(unsigned Idx, uint64_t Bits)
+{
+  switch (Idx) {
+  default: // llvm_unreachable("Invalid index!");
+  case 0:
+    return (bool)((Bits & Sparc_FeatureV9));
+  case 1:
+    return (bool)((Bits & Sparc_FeatureVIS3));
+  case 2:
+    return (bool)((Bits & Sparc_FeatureVIS));
+  case 3:
+    return (bool)((Bits & Sparc_FeatureVIS2));
+  }
+}
+
+#define DecodeToMCInst(fname,fieldname, InsnType) \
+static DecodeStatus fname(DecodeStatus S, unsigned Idx, InsnType insn, MCInst *MI, \
+                uint64_t Address, void *Decoder) \
+{ \
+  InsnType tmp; \
+  switch (Idx) { \
+  default: \
+  case 0: \
+    tmp = fieldname(insn, 0, 22); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 1: \
+    tmp = fieldname(insn, 0, 19); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 25, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 2: \
+    tmp = fieldname(insn, 0, 22); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 25, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 3: \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = 0; \
+    tmp |= (fieldname(insn, 0, 14) << 0); \
+    tmp |= (fieldname(insn, 20, 2) << 14); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 4: \
+    return S; \
+  case 5: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 22); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 6: \
+    tmp = fieldname(insn, 0, 19); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 25, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 20, 2); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 7: \
+    tmp = fieldname(insn, 0, 30); \
+    if (DecodeCall(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 8: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 9: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 13); \
+    if (DecodeSIMM13(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 10: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 11: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 13); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 12: \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 13: \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 13); \
+    if (DecodeSIMM13(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 14: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 15: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 6); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 16: \
+    tmp = fieldname(insn, 0, 13); \
+    if (DecodeSIMM13(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 17: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 18: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 11, 2); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 19: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 11); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 20: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 11, 2); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 11); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 21: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 10); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 22: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 23: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 24: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 25: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 26: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 27: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 28: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 29: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 30: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 31: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 32: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 33: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 34: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 35: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 36: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 37: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 11, 2); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 38: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 39: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 11, 2); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 40: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 41: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 11, 2); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 42: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 43: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 44: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 45: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFCCRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeQFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 46: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 47: \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 48: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 49: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 50: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 51: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 52: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 53: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 54: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeDFPRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 55: \
+    if (DecodeJMPL(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 56: \
+    if (DecodeReturn(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 57: \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 58: \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 8); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    tmp = fieldname(insn, 25, 4); \
+    MCInst_addOperand(MI, MCOperand_CreateImm(tmp)); \
+    return S; \
+  case 59: \
+    if (DecodeLoadInt(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 60: \
+    if (DecodeStoreInt(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 61: \
+    if (DecodeSWAP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 62: \
+    if (DecodeLoadFP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 63: \
+    if (DecodeLoadQFP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 64: \
+    if (DecodeLoadDFP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 65: \
+    if (DecodeStoreFP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 66: \
+    if (DecodeStoreQFP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 67: \
+    if (DecodeStoreDFP(MI, insn, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 68: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeIntRegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 69: \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 14, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 25, 5); \
+    if (DecodeI64RegsRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  } \
+} 
+
+#define DecodeInstruction(fname, fieldname, decoder, InsnType) \
+static DecodeStatus fname(uint8_t DecodeTable[], MCInst *MI, \
+           InsnType insn, uint64_t Address, MCRegisterInfo *MRI, int feature) \
+{ \
+  uint64_t Bits = getFeatureBits(feature); \
+  uint8_t *Ptr = DecodeTable; \
+  uint32_t CurFieldValue = 0; \
+  DecodeStatus S = MCDisassembler_Success; \
+  for (;;) { \
+    switch (*Ptr) { \
+    default: \
+      return MCDisassembler_Fail; \
+    case MCD_OPC_ExtractField: { \
+      unsigned Start = *++Ptr; \
+      unsigned Len = *++Ptr; \
+      ++Ptr; \
+      CurFieldValue = fieldname(insn, Start, Len); \
+      break; \
+    } \
+    case MCD_OPC_FilterValue: { \
+      unsigned Len; \
+      InsnType Val = (InsnType)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned NumToSkip = *Ptr++; \
+      NumToSkip |= (*Ptr++) << 8; \
+      if (Val != CurFieldValue) \
+        Ptr += NumToSkip; \
+      break; \
+    } \
+    case MCD_OPC_CheckField: { \
+      unsigned Start = *++Ptr; \
+      unsigned Len = *++Ptr; \
+      InsnType FieldValue = fieldname(insn, Start, Len); \
+      uint32_t ExpectedValue = (uint32_t)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned NumToSkip = *Ptr++; \
+      NumToSkip |= (*Ptr++) << 8; \
+      if (ExpectedValue != FieldValue) \
+        Ptr += NumToSkip; \
+      break; \
+    } \
+    case MCD_OPC_CheckPredicate: { \
+      unsigned Len; \
+      unsigned PIdx = decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned NumToSkip = *Ptr++; \
+      NumToSkip |= (*Ptr++) << 8; \
+      bool Pred; \
+      Pred = checkDecoderPredicate(PIdx, Bits); \
+      if (!Pred) \
+        Ptr += NumToSkip; \
+      (void)Pred; \
+      break; \
+    } \
+    case MCD_OPC_Decode: { \
+      unsigned Len; \
+      unsigned Opc = (unsigned)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned DecodeIdx = (unsigned)decodeULEB128(Ptr, &Len); \
+      Ptr += Len; \
+      MCInst_setOpcode(MI, Opc); \
+      return decoder(S, DecodeIdx, insn, MI, Address, MRI); \
+    } \
+    case MCD_OPC_SoftFail: { \
+      unsigned Len; \
+      InsnType PositiveMask = (InsnType)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      InsnType NegativeMask = (InsnType)decodeULEB128(Ptr, &Len); \
+      Ptr += Len; \
+      bool Fail = (insn & PositiveMask) || (~insn & NegativeMask); \
+      if (Fail) \
+        S = MCDisassembler_SoftFail; \
+      break; \
+    } \
+    case MCD_OPC_Fail: { \
+      return MCDisassembler_Fail; \
+    } \
+    } \
+  } \
+}
+
+FieldFromInstruction(fieldFromInstruction_4, uint32_t)
+DecodeToMCInst(decodeToMCInst_4, fieldFromInstruction_4, uint32_t)
+DecodeInstruction(decodeInstruction_4, fieldFromInstruction_4, decodeToMCInst_4, uint32_t)
diff --git a/arch/Sparc/SparcGenInstrInfo.inc b/arch/Sparc/SparcGenInstrInfo.inc
new file mode 100644
index 0000000..063208f
--- /dev/null
+++ b/arch/Sparc/SparcGenInstrInfo.inc
@@ -0,0 +1,511 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Target Instruction Enum Values                                              *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+
+#ifdef GET_INSTRINFO_ENUM
+#undef GET_INSTRINFO_ENUM
+
+enum {
+    SP_PHI	= 0,
+    SP_INLINEASM	= 1,
+    SP_CFI_INSTRUCTION	= 2,
+    SP_EH_LABEL	= 3,
+    SP_GC_LABEL	= 4,
+    SP_KILL	= 5,
+    SP_EXTRACT_SUBREG	= 6,
+    SP_INSERT_SUBREG	= 7,
+    SP_IMPLICIT_DEF	= 8,
+    SP_SUBREG_TO_REG	= 9,
+    SP_COPY_TO_REGCLASS	= 10,
+    SP_DBG_VALUE	= 11,
+    SP_REG_SEQUENCE	= 12,
+    SP_COPY	= 13,
+    SP_BUNDLE	= 14,
+    SP_LIFETIME_START	= 15,
+    SP_LIFETIME_END	= 16,
+    SP_STACKMAP	= 17,
+    SP_PATCHPOINT	= 18,
+    SP_ADDCCri	= 19,
+    SP_ADDCCrr	= 20,
+    SP_ADDCri	= 21,
+    SP_ADDCrr	= 22,
+    SP_ADDEri	= 23,
+    SP_ADDErr	= 24,
+    SP_ADDXC	= 25,
+    SP_ADDXCCC	= 26,
+    SP_ADDXri	= 27,
+    SP_ADDXrr	= 28,
+    SP_ADDri	= 29,
+    SP_ADDrr	= 30,
+    SP_ADJCALLSTACKDOWN	= 31,
+    SP_ADJCALLSTACKUP	= 32,
+    SP_ALIGNADDR	= 33,
+    SP_ALIGNADDRL	= 34,
+    SP_ANDCCri	= 35,
+    SP_ANDCCrr	= 36,
+    SP_ANDNCCri	= 37,
+    SP_ANDNCCrr	= 38,
+    SP_ANDNri	= 39,
+    SP_ANDNrr	= 40,
+    SP_ANDXNrr	= 41,
+    SP_ANDXri	= 42,
+    SP_ANDXrr	= 43,
+    SP_ANDri	= 44,
+    SP_ANDrr	= 45,
+    SP_ARRAY16	= 46,
+    SP_ARRAY32	= 47,
+    SP_ARRAY8	= 48,
+    SP_ATOMIC_LOAD_ADD_32	= 49,
+    SP_ATOMIC_LOAD_ADD_64	= 50,
+    SP_ATOMIC_LOAD_AND_32	= 51,
+    SP_ATOMIC_LOAD_AND_64	= 52,
+    SP_ATOMIC_LOAD_MAX_32	= 53,
+    SP_ATOMIC_LOAD_MAX_64	= 54,
+    SP_ATOMIC_LOAD_MIN_32	= 55,
+    SP_ATOMIC_LOAD_MIN_64	= 56,
+    SP_ATOMIC_LOAD_NAND_32	= 57,
+    SP_ATOMIC_LOAD_NAND_64	= 58,
+    SP_ATOMIC_LOAD_OR_32	= 59,
+    SP_ATOMIC_LOAD_OR_64	= 60,
+    SP_ATOMIC_LOAD_SUB_32	= 61,
+    SP_ATOMIC_LOAD_SUB_64	= 62,
+    SP_ATOMIC_LOAD_UMAX_32	= 63,
+    SP_ATOMIC_LOAD_UMAX_64	= 64,
+    SP_ATOMIC_LOAD_UMIN_32	= 65,
+    SP_ATOMIC_LOAD_UMIN_64	= 66,
+    SP_ATOMIC_LOAD_XOR_32	= 67,
+    SP_ATOMIC_LOAD_XOR_64	= 68,
+    SP_ATOMIC_SWAP_64	= 69,
+    SP_BA	= 70,
+    SP_BCOND	= 71,
+    SP_BCONDA	= 72,
+    SP_BINDri	= 73,
+    SP_BINDrr	= 74,
+    SP_BMASK	= 75,
+    SP_BPFCC	= 76,
+    SP_BPFCCA	= 77,
+    SP_BPFCCANT	= 78,
+    SP_BPFCCNT	= 79,
+    SP_BPGEZapn	= 80,
+    SP_BPGEZapt	= 81,
+    SP_BPGEZnapn	= 82,
+    SP_BPGEZnapt	= 83,
+    SP_BPGZapn	= 84,
+    SP_BPGZapt	= 85,
+    SP_BPGZnapn	= 86,
+    SP_BPGZnapt	= 87,
+    SP_BPICC	= 88,
+    SP_BPICCA	= 89,
+    SP_BPICCANT	= 90,
+    SP_BPICCNT	= 91,
+    SP_BPLEZapn	= 92,
+    SP_BPLEZapt	= 93,
+    SP_BPLEZnapn	= 94,
+    SP_BPLEZnapt	= 95,
+    SP_BPLZapn	= 96,
+    SP_BPLZapt	= 97,
+    SP_BPLZnapn	= 98,
+    SP_BPLZnapt	= 99,
+    SP_BPNZapn	= 100,
+    SP_BPNZapt	= 101,
+    SP_BPNZnapn	= 102,
+    SP_BPNZnapt	= 103,
+    SP_BPXCC	= 104,
+    SP_BPXCCA	= 105,
+    SP_BPXCCANT	= 106,
+    SP_BPXCCNT	= 107,
+    SP_BPZapn	= 108,
+    SP_BPZapt	= 109,
+    SP_BPZnapn	= 110,
+    SP_BPZnapt	= 111,
+    SP_BSHUFFLE	= 112,
+    SP_CALL	= 113,
+    SP_CALLri	= 114,
+    SP_CALLrr	= 115,
+    SP_CASXrr	= 116,
+    SP_CASrr	= 117,
+    SP_CMASK16	= 118,
+    SP_CMASK32	= 119,
+    SP_CMASK8	= 120,
+    SP_CMPri	= 121,
+    SP_CMPrr	= 122,
+    SP_EDGE16	= 123,
+    SP_EDGE16L	= 124,
+    SP_EDGE16LN	= 125,
+    SP_EDGE16N	= 126,
+    SP_EDGE32	= 127,
+    SP_EDGE32L	= 128,
+    SP_EDGE32LN	= 129,
+    SP_EDGE32N	= 130,
+    SP_EDGE8	= 131,
+    SP_EDGE8L	= 132,
+    SP_EDGE8LN	= 133,
+    SP_EDGE8N	= 134,
+    SP_FABSD	= 135,
+    SP_FABSQ	= 136,
+    SP_FABSS	= 137,
+    SP_FADDD	= 138,
+    SP_FADDQ	= 139,
+    SP_FADDS	= 140,
+    SP_FALIGNADATA	= 141,
+    SP_FAND	= 142,
+    SP_FANDNOT1	= 143,
+    SP_FANDNOT1S	= 144,
+    SP_FANDNOT2	= 145,
+    SP_FANDNOT2S	= 146,
+    SP_FANDS	= 147,
+    SP_FBCOND	= 148,
+    SP_FBCONDA	= 149,
+    SP_FCHKSM16	= 150,
+    SP_FCMPD	= 151,
+    SP_FCMPEQ16	= 152,
+    SP_FCMPEQ32	= 153,
+    SP_FCMPGT16	= 154,
+    SP_FCMPGT32	= 155,
+    SP_FCMPLE16	= 156,
+    SP_FCMPLE32	= 157,
+    SP_FCMPNE16	= 158,
+    SP_FCMPNE32	= 159,
+    SP_FCMPQ	= 160,
+    SP_FCMPS	= 161,
+    SP_FDIVD	= 162,
+    SP_FDIVQ	= 163,
+    SP_FDIVS	= 164,
+    SP_FDMULQ	= 165,
+    SP_FDTOI	= 166,
+    SP_FDTOQ	= 167,
+    SP_FDTOS	= 168,
+    SP_FDTOX	= 169,
+    SP_FEXPAND	= 170,
+    SP_FHADDD	= 171,
+    SP_FHADDS	= 172,
+    SP_FHSUBD	= 173,
+    SP_FHSUBS	= 174,
+    SP_FITOD	= 175,
+    SP_FITOQ	= 176,
+    SP_FITOS	= 177,
+    SP_FLCMPD	= 178,
+    SP_FLCMPS	= 179,
+    SP_FLUSHW	= 180,
+    SP_FMEAN16	= 181,
+    SP_FMOVD	= 182,
+    SP_FMOVD_FCC	= 183,
+    SP_FMOVD_ICC	= 184,
+    SP_FMOVD_XCC	= 185,
+    SP_FMOVQ	= 186,
+    SP_FMOVQ_FCC	= 187,
+    SP_FMOVQ_ICC	= 188,
+    SP_FMOVQ_XCC	= 189,
+    SP_FMOVRGEZD	= 190,
+    SP_FMOVRGEZQ	= 191,
+    SP_FMOVRGEZS	= 192,
+    SP_FMOVRGZD	= 193,
+    SP_FMOVRGZQ	= 194,
+    SP_FMOVRGZS	= 195,
+    SP_FMOVRLEZD	= 196,
+    SP_FMOVRLEZQ	= 197,
+    SP_FMOVRLEZS	= 198,
+    SP_FMOVRLZD	= 199,
+    SP_FMOVRLZQ	= 200,
+    SP_FMOVRLZS	= 201,
+    SP_FMOVRNZD	= 202,
+    SP_FMOVRNZQ	= 203,
+    SP_FMOVRNZS	= 204,
+    SP_FMOVRZD	= 205,
+    SP_FMOVRZQ	= 206,
+    SP_FMOVRZS	= 207,
+    SP_FMOVS	= 208,
+    SP_FMOVS_FCC	= 209,
+    SP_FMOVS_ICC	= 210,
+    SP_FMOVS_XCC	= 211,
+    SP_FMUL8SUX16	= 212,
+    SP_FMUL8ULX16	= 213,
+    SP_FMUL8X16	= 214,
+    SP_FMUL8X16AL	= 215,
+    SP_FMUL8X16AU	= 216,
+    SP_FMULD	= 217,
+    SP_FMULD8SUX16	= 218,
+    SP_FMULD8ULX16	= 219,
+    SP_FMULQ	= 220,
+    SP_FMULS	= 221,
+    SP_FNADDD	= 222,
+    SP_FNADDS	= 223,
+    SP_FNAND	= 224,
+    SP_FNANDS	= 225,
+    SP_FNEGD	= 226,
+    SP_FNEGQ	= 227,
+    SP_FNEGS	= 228,
+    SP_FNHADDD	= 229,
+    SP_FNHADDS	= 230,
+    SP_FNMULD	= 231,
+    SP_FNMULS	= 232,
+    SP_FNOR	= 233,
+    SP_FNORS	= 234,
+    SP_FNOT1	= 235,
+    SP_FNOT1S	= 236,
+    SP_FNOT2	= 237,
+    SP_FNOT2S	= 238,
+    SP_FNSMULD	= 239,
+    SP_FONE	= 240,
+    SP_FONES	= 241,
+    SP_FOR	= 242,
+    SP_FORNOT1	= 243,
+    SP_FORNOT1S	= 244,
+    SP_FORNOT2	= 245,
+    SP_FORNOT2S	= 246,
+    SP_FORS	= 247,
+    SP_FPACK16	= 248,
+    SP_FPACK32	= 249,
+    SP_FPACKFIX	= 250,
+    SP_FPADD16	= 251,
+    SP_FPADD16S	= 252,
+    SP_FPADD32	= 253,
+    SP_FPADD32S	= 254,
+    SP_FPADD64	= 255,
+    SP_FPMERGE	= 256,
+    SP_FPSUB16	= 257,
+    SP_FPSUB16S	= 258,
+    SP_FPSUB32	= 259,
+    SP_FPSUB32S	= 260,
+    SP_FQTOD	= 261,
+    SP_FQTOI	= 262,
+    SP_FQTOS	= 263,
+    SP_FQTOX	= 264,
+    SP_FSLAS16	= 265,
+    SP_FSLAS32	= 266,
+    SP_FSLL16	= 267,
+    SP_FSLL32	= 268,
+    SP_FSMULD	= 269,
+    SP_FSQRTD	= 270,
+    SP_FSQRTQ	= 271,
+    SP_FSQRTS	= 272,
+    SP_FSRA16	= 273,
+    SP_FSRA32	= 274,
+    SP_FSRC1	= 275,
+    SP_FSRC1S	= 276,
+    SP_FSRC2	= 277,
+    SP_FSRC2S	= 278,
+    SP_FSRL16	= 279,
+    SP_FSRL32	= 280,
+    SP_FSTOD	= 281,
+    SP_FSTOI	= 282,
+    SP_FSTOQ	= 283,
+    SP_FSTOX	= 284,
+    SP_FSUBD	= 285,
+    SP_FSUBQ	= 286,
+    SP_FSUBS	= 287,
+    SP_FXNOR	= 288,
+    SP_FXNORS	= 289,
+    SP_FXOR	= 290,
+    SP_FXORS	= 291,
+    SP_FXTOD	= 292,
+    SP_FXTOQ	= 293,
+    SP_FXTOS	= 294,
+    SP_FZERO	= 295,
+    SP_FZEROS	= 296,
+    SP_GETPCX	= 297,
+    SP_JMPLri	= 298,
+    SP_JMPLrr	= 299,
+    SP_LDDFri	= 300,
+    SP_LDDFrr	= 301,
+    SP_LDFri	= 302,
+    SP_LDFrr	= 303,
+    SP_LDQFri	= 304,
+    SP_LDQFrr	= 305,
+    SP_LDSBri	= 306,
+    SP_LDSBrr	= 307,
+    SP_LDSHri	= 308,
+    SP_LDSHrr	= 309,
+    SP_LDSWri	= 310,
+    SP_LDSWrr	= 311,
+    SP_LDUBri	= 312,
+    SP_LDUBrr	= 313,
+    SP_LDUHri	= 314,
+    SP_LDUHrr	= 315,
+    SP_LDXri	= 316,
+    SP_LDXrr	= 317,
+    SP_LDri	= 318,
+    SP_LDrr	= 319,
+    SP_LEAX_ADDri	= 320,
+    SP_LEA_ADDri	= 321,
+    SP_LZCNT	= 322,
+    SP_MEMBARi	= 323,
+    SP_MOVDTOX	= 324,
+    SP_MOVFCCri	= 325,
+    SP_MOVFCCrr	= 326,
+    SP_MOVICCri	= 327,
+    SP_MOVICCrr	= 328,
+    SP_MOVRGEZri	= 329,
+    SP_MOVRGEZrr	= 330,
+    SP_MOVRGZri	= 331,
+    SP_MOVRGZrr	= 332,
+    SP_MOVRLEZri	= 333,
+    SP_MOVRLEZrr	= 334,
+    SP_MOVRLZri	= 335,
+    SP_MOVRLZrr	= 336,
+    SP_MOVRNZri	= 337,
+    SP_MOVRNZrr	= 338,
+    SP_MOVRRZri	= 339,
+    SP_MOVRRZrr	= 340,
+    SP_MOVSTOSW	= 341,
+    SP_MOVSTOUW	= 342,
+    SP_MOVWTOS	= 343,
+    SP_MOVXCCri	= 344,
+    SP_MOVXCCrr	= 345,
+    SP_MOVXTOD	= 346,
+    SP_MULXri	= 347,
+    SP_MULXrr	= 348,
+    SP_NOP	= 349,
+    SP_ORCCri	= 350,
+    SP_ORCCrr	= 351,
+    SP_ORNCCri	= 352,
+    SP_ORNCCrr	= 353,
+    SP_ORNri	= 354,
+    SP_ORNrr	= 355,
+    SP_ORXNrr	= 356,
+    SP_ORXri	= 357,
+    SP_ORXrr	= 358,
+    SP_ORri	= 359,
+    SP_ORrr	= 360,
+    SP_PDIST	= 361,
+    SP_PDISTN	= 362,
+    SP_POPCrr	= 363,
+    SP_RDY	= 364,
+    SP_RESTOREri	= 365,
+    SP_RESTORErr	= 366,
+    SP_RET	= 367,
+    SP_RETL	= 368,
+    SP_RETTri	= 369,
+    SP_RETTrr	= 370,
+    SP_SAVEri	= 371,
+    SP_SAVErr	= 372,
+    SP_SDIVCCri	= 373,
+    SP_SDIVCCrr	= 374,
+    SP_SDIVXri	= 375,
+    SP_SDIVXrr	= 376,
+    SP_SDIVri	= 377,
+    SP_SDIVrr	= 378,
+    SP_SELECT_CC_DFP_FCC	= 379,
+    SP_SELECT_CC_DFP_ICC	= 380,
+    SP_SELECT_CC_FP_FCC	= 381,
+    SP_SELECT_CC_FP_ICC	= 382,
+    SP_SELECT_CC_Int_FCC	= 383,
+    SP_SELECT_CC_Int_ICC	= 384,
+    SP_SELECT_CC_QFP_FCC	= 385,
+    SP_SELECT_CC_QFP_ICC	= 386,
+    SP_SETHIXi	= 387,
+    SP_SETHIi	= 388,
+    SP_SHUTDOWN	= 389,
+    SP_SIAM	= 390,
+    SP_SLLXri	= 391,
+    SP_SLLXrr	= 392,
+    SP_SLLri	= 393,
+    SP_SLLrr	= 394,
+    SP_SMULCCri	= 395,
+    SP_SMULCCrr	= 396,
+    SP_SMULri	= 397,
+    SP_SMULrr	= 398,
+    SP_SRAXri	= 399,
+    SP_SRAXrr	= 400,
+    SP_SRAri	= 401,
+    SP_SRArr	= 402,
+    SP_SRLXri	= 403,
+    SP_SRLXrr	= 404,
+    SP_SRLri	= 405,
+    SP_SRLrr	= 406,
+    SP_STBAR	= 407,
+    SP_STBri	= 408,
+    SP_STBrr	= 409,
+    SP_STDFri	= 410,
+    SP_STDFrr	= 411,
+    SP_STFri	= 412,
+    SP_STFrr	= 413,
+    SP_STHri	= 414,
+    SP_STHrr	= 415,
+    SP_STQFri	= 416,
+    SP_STQFrr	= 417,
+    SP_STXri	= 418,
+    SP_STXrr	= 419,
+    SP_STri	= 420,
+    SP_STrr	= 421,
+    SP_SUBCCri	= 422,
+    SP_SUBCCrr	= 423,
+    SP_SUBCri	= 424,
+    SP_SUBCrr	= 425,
+    SP_SUBEri	= 426,
+    SP_SUBErr	= 427,
+    SP_SUBXri	= 428,
+    SP_SUBXrr	= 429,
+    SP_SUBri	= 430,
+    SP_SUBrr	= 431,
+    SP_SWAPri	= 432,
+    SP_SWAPrr	= 433,
+    SP_TA3	= 434,
+    SP_TA5	= 435,
+    SP_TADDCCTVri	= 436,
+    SP_TADDCCTVrr	= 437,
+    SP_TADDCCri	= 438,
+    SP_TADDCCrr	= 439,
+    SP_TICCri	= 440,
+    SP_TICCrr	= 441,
+    SP_TLS_ADDXrr	= 442,
+    SP_TLS_ADDrr	= 443,
+    SP_TLS_CALL	= 444,
+    SP_TLS_LDXrr	= 445,
+    SP_TLS_LDrr	= 446,
+    SP_TSUBCCTVri	= 447,
+    SP_TSUBCCTVrr	= 448,
+    SP_TSUBCCri	= 449,
+    SP_TSUBCCrr	= 450,
+    SP_TXCCri	= 451,
+    SP_TXCCrr	= 452,
+    SP_UDIVCCri	= 453,
+    SP_UDIVCCrr	= 454,
+    SP_UDIVXri	= 455,
+    SP_UDIVXrr	= 456,
+    SP_UDIVri	= 457,
+    SP_UDIVrr	= 458,
+    SP_UMULCCri	= 459,
+    SP_UMULCCrr	= 460,
+    SP_UMULXHI	= 461,
+    SP_UMULri	= 462,
+    SP_UMULrr	= 463,
+    SP_UNIMP	= 464,
+    SP_V9FCMPD	= 465,
+    SP_V9FCMPED	= 466,
+    SP_V9FCMPEQ	= 467,
+    SP_V9FCMPES	= 468,
+    SP_V9FCMPQ	= 469,
+    SP_V9FCMPS	= 470,
+    SP_V9FMOVD_FCC	= 471,
+    SP_V9FMOVQ_FCC	= 472,
+    SP_V9FMOVS_FCC	= 473,
+    SP_V9MOVFCCri	= 474,
+    SP_V9MOVFCCrr	= 475,
+    SP_WRYri	= 476,
+    SP_WRYrr	= 477,
+    SP_XMULX	= 478,
+    SP_XMULXHI	= 479,
+    SP_XNORCCri	= 480,
+    SP_XNORCCrr	= 481,
+    SP_XNORXrr	= 482,
+    SP_XNORri	= 483,
+    SP_XNORrr	= 484,
+    SP_XORCCri	= 485,
+    SP_XORCCrr	= 486,
+    SP_XORXri	= 487,
+    SP_XORXrr	= 488,
+    SP_XORri	= 489,
+    SP_XORrr	= 490,
+    SP_INSTRUCTION_LIST_END = 491
+};
+
+#endif // GET_INSTRINFO_ENUM
diff --git a/arch/Sparc/SparcGenRegisterInfo.inc b/arch/Sparc/SparcGenRegisterInfo.inc
new file mode 100644
index 0000000..30bf9e0
--- /dev/null
+++ b/arch/Sparc/SparcGenRegisterInfo.inc
@@ -0,0 +1,462 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Target Register Enum Values                                                 *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+
+#ifdef GET_REGINFO_ENUM
+#undef GET_REGINFO_ENUM
+
+enum {
+  SP_NoRegister,
+  SP_ICC = 1,
+  SP_Y = 2,
+  SP_D0 = 3,
+  SP_D1 = 4,
+  SP_D2 = 5,
+  SP_D3 = 6,
+  SP_D4 = 7,
+  SP_D5 = 8,
+  SP_D6 = 9,
+  SP_D7 = 10,
+  SP_D8 = 11,
+  SP_D9 = 12,
+  SP_D10 = 13,
+  SP_D11 = 14,
+  SP_D12 = 15,
+  SP_D13 = 16,
+  SP_D14 = 17,
+  SP_D15 = 18,
+  SP_D16 = 19,
+  SP_D17 = 20,
+  SP_D18 = 21,
+  SP_D19 = 22,
+  SP_D20 = 23,
+  SP_D21 = 24,
+  SP_D22 = 25,
+  SP_D23 = 26,
+  SP_D24 = 27,
+  SP_D25 = 28,
+  SP_D26 = 29,
+  SP_D27 = 30,
+  SP_D28 = 31,
+  SP_D29 = 32,
+  SP_D30 = 33,
+  SP_D31 = 34,
+  SP_F0 = 35,
+  SP_F1 = 36,
+  SP_F2 = 37,
+  SP_F3 = 38,
+  SP_F4 = 39,
+  SP_F5 = 40,
+  SP_F6 = 41,
+  SP_F7 = 42,
+  SP_F8 = 43,
+  SP_F9 = 44,
+  SP_F10 = 45,
+  SP_F11 = 46,
+  SP_F12 = 47,
+  SP_F13 = 48,
+  SP_F14 = 49,
+  SP_F15 = 50,
+  SP_F16 = 51,
+  SP_F17 = 52,
+  SP_F18 = 53,
+  SP_F19 = 54,
+  SP_F20 = 55,
+  SP_F21 = 56,
+  SP_F22 = 57,
+  SP_F23 = 58,
+  SP_F24 = 59,
+  SP_F25 = 60,
+  SP_F26 = 61,
+  SP_F27 = 62,
+  SP_F28 = 63,
+  SP_F29 = 64,
+  SP_F30 = 65,
+  SP_F31 = 66,
+  SP_FCC0 = 67,
+  SP_FCC1 = 68,
+  SP_FCC2 = 69,
+  SP_FCC3 = 70,
+  SP_G0 = 71,
+  SP_G1 = 72,
+  SP_G2 = 73,
+  SP_G3 = 74,
+  SP_G4 = 75,
+  SP_G5 = 76,
+  SP_G6 = 77,
+  SP_G7 = 78,
+  SP_I0 = 79,
+  SP_I1 = 80,
+  SP_I2 = 81,
+  SP_I3 = 82,
+  SP_I4 = 83,
+  SP_I5 = 84,
+  SP_I6 = 85,
+  SP_I7 = 86,
+  SP_L0 = 87,
+  SP_L1 = 88,
+  SP_L2 = 89,
+  SP_L3 = 90,
+  SP_L4 = 91,
+  SP_L5 = 92,
+  SP_L6 = 93,
+  SP_L7 = 94,
+  SP_O0 = 95,
+  SP_O1 = 96,
+  SP_O2 = 97,
+  SP_O3 = 98,
+  SP_O4 = 99,
+  SP_O5 = 100,
+  SP_O6 = 101,
+  SP_O7 = 102,
+  SP_Q0 = 103,
+  SP_Q1 = 104,
+  SP_Q2 = 105,
+  SP_Q3 = 106,
+  SP_Q4 = 107,
+  SP_Q5 = 108,
+  SP_Q6 = 109,
+  SP_Q7 = 110,
+  SP_Q8 = 111,
+  SP_Q9 = 112,
+  SP_Q10 = 113,
+  SP_Q11 = 114,
+  SP_Q12 = 115,
+  SP_Q13 = 116,
+  SP_Q14 = 117,
+  SP_Q15 = 118,
+  SP_NUM_TARGET_REGS 	// 119
+};
+
+// Register classes
+enum {
+  SP_FCCRegsRegClassID = 0,
+  SP_FPRegsRegClassID = 1,
+  SP_IntRegsRegClassID = 2,
+  SP_DFPRegsRegClassID = 3,
+  SP_I64RegsRegClassID = 4,
+  SP_DFPRegs_with_sub_evenRegClassID = 5,
+  SP_QFPRegsRegClassID = 6,
+  SP_QFPRegs_with_sub_evenRegClassID = 7
+};
+
+// Subregister indices
+enum {
+  SP_NoSubRegister,
+  SP_sub_even,	// 1
+  SP_sub_even64,	// 2
+  SP_sub_odd,	// 3
+  SP_sub_odd64,	// 4
+  SP_sub_odd64_then_sub_even,	// 5
+  SP_sub_odd64_then_sub_odd,	// 6
+  SP_NUM_TARGET_SUBREGS
+};
+#endif // GET_REGINFO_ENUM
+
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*MC Register Information                                                     *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+
+#ifdef GET_REGINFO_MC_DESC
+#undef GET_REGINFO_MC_DESC
+
+static MCPhysReg SparcRegDiffLists[] = {
+  /* 0 */ 65126, 1, 1, 1, 0,
+  /* 5 */ 32, 1, 0,
+  /* 8 */ 65436, 32, 1, 65504, 33, 1, 0,
+  /* 15 */ 34, 1, 0,
+  /* 18 */ 65437, 34, 1, 65502, 35, 1, 0,
+  /* 25 */ 36, 1, 0,
+  /* 28 */ 65438, 36, 1, 65500, 37, 1, 0,
+  /* 35 */ 38, 1, 0,
+  /* 38 */ 65439, 38, 1, 65498, 39, 1, 0,
+  /* 45 */ 40, 1, 0,
+  /* 48 */ 65440, 40, 1, 65496, 41, 1, 0,
+  /* 55 */ 42, 1, 0,
+  /* 58 */ 65441, 42, 1, 65494, 43, 1, 0,
+  /* 65 */ 44, 1, 0,
+  /* 68 */ 65442, 44, 1, 65492, 45, 1, 0,
+  /* 75 */ 46, 1, 0,
+  /* 78 */ 65443, 46, 1, 65490, 47, 1, 0,
+  /* 85 */ 65348, 1, 0,
+  /* 88 */ 65444, 1, 0,
+  /* 91 */ 65445, 1, 0,
+  /* 94 */ 65446, 1, 0,
+  /* 97 */ 65447, 1, 0,
+  /* 100 */ 65448, 1, 0,
+  /* 103 */ 65449, 1, 0,
+  /* 106 */ 65450, 1, 0,
+  /* 109 */ 65451, 1, 0,
+  /* 112 */ 65532, 1, 0,
+  /* 115 */ 15, 0,
+  /* 117 */ 84, 0,
+  /* 119 */ 85, 0,
+  /* 121 */ 86, 0,
+  /* 123 */ 87, 0,
+  /* 125 */ 88, 0,
+  /* 127 */ 89, 0,
+  /* 129 */ 90, 0,
+  /* 131 */ 91, 0,
+  /* 133 */ 65488, 92, 0,
+  /* 136 */ 65489, 92, 0,
+  /* 139 */ 65489, 93, 0,
+  /* 142 */ 65490, 93, 0,
+  /* 145 */ 65491, 93, 0,
+  /* 148 */ 65491, 94, 0,
+  /* 151 */ 65492, 94, 0,
+  /* 154 */ 65493, 94, 0,
+  /* 157 */ 65493, 95, 0,
+  /* 160 */ 65494, 95, 0,
+  /* 163 */ 65495, 95, 0,
+  /* 166 */ 65495, 96, 0,
+  /* 169 */ 65496, 96, 0,
+  /* 172 */ 65497, 96, 0,
+  /* 175 */ 65497, 97, 0,
+  /* 178 */ 65498, 97, 0,
+  /* 181 */ 65499, 97, 0,
+  /* 184 */ 65499, 98, 0,
+  /* 187 */ 65500, 98, 0,
+  /* 190 */ 65501, 98, 0,
+  /* 193 */ 65501, 99, 0,
+  /* 196 */ 65502, 99, 0,
+  /* 199 */ 65503, 99, 0,
+  /* 202 */ 65503, 100, 0,
+  /* 205 */ 65504, 100, 0,
+  /* 208 */ 65503, 0,
+  /* 210 */ 65519, 0,
+  /* 212 */ 65535, 0,
+};
+
+static uint16_t SparcSubRegIdxLists[] = {
+  /* 0 */ 1, 3, 0,
+  /* 3 */ 2, 4, 0,
+  /* 6 */ 2, 1, 3, 4, 5, 6, 0,
+};
+
+static MCRegisterDesc SparcRegDesc[] = { // Descriptors
+  { 3, 0, 0, 0, 0 },
+  { 406, 4, 4, 2, 3393 },
+  { 410, 4, 4, 2, 3393 },
+  { 33, 5, 203, 0, 1794 },
+  { 87, 12, 194, 0, 1794 },
+  { 133, 15, 194, 0, 1794 },
+  { 179, 22, 185, 0, 1794 },
+  { 220, 25, 185, 0, 1794 },
+  { 261, 32, 176, 0, 1794 },
+  { 298, 35, 176, 0, 1794 },
+  { 335, 42, 167, 0, 1794 },
+  { 372, 45, 167, 0, 1794 },
+  { 397, 52, 158, 0, 1794 },
+  { 0, 55, 158, 0, 1794 },
+  { 54, 62, 149, 0, 1794 },
+  { 108, 65, 149, 0, 1794 },
+  { 154, 72, 140, 0, 1794 },
+  { 200, 75, 140, 0, 1794 },
+  { 241, 82, 134, 0, 1794 },
+  { 282, 4, 134, 2, 1841 },
+  { 319, 4, 131, 2, 1841 },
+  { 356, 4, 131, 2, 1841 },
+  { 381, 4, 129, 2, 1841 },
+  { 12, 4, 129, 2, 1841 },
+  { 66, 4, 127, 2, 1841 },
+  { 120, 4, 127, 2, 1841 },
+  { 166, 4, 125, 2, 1841 },
+  { 212, 4, 125, 2, 1841 },
+  { 253, 4, 123, 2, 1841 },
+  { 290, 4, 123, 2, 1841 },
+  { 327, 4, 121, 2, 1841 },
+  { 364, 4, 121, 2, 1841 },
+  { 389, 4, 119, 2, 1841 },
+  { 20, 4, 119, 2, 1841 },
+  { 74, 4, 117, 2, 1841 },
+  { 36, 4, 205, 2, 3329 },
+  { 90, 4, 202, 2, 3329 },
+  { 136, 4, 199, 2, 3329 },
+  { 182, 4, 196, 2, 3329 },
+  { 223, 4, 196, 2, 3329 },
+  { 264, 4, 193, 2, 3329 },
+  { 301, 4, 190, 2, 3329 },
+  { 338, 4, 187, 2, 3329 },
+  { 375, 4, 187, 2, 3329 },
+  { 400, 4, 184, 2, 3329 },
+  { 4, 4, 181, 2, 3329 },
+  { 58, 4, 178, 2, 3329 },
+  { 112, 4, 178, 2, 3329 },
+  { 158, 4, 175, 2, 3329 },
+  { 204, 4, 172, 2, 3329 },
+  { 245, 4, 169, 2, 3329 },
+  { 286, 4, 169, 2, 3329 },
+  { 323, 4, 166, 2, 3329 },
+  { 360, 4, 163, 2, 3329 },
+  { 385, 4, 160, 2, 3329 },
+  { 16, 4, 160, 2, 3329 },
+  { 70, 4, 157, 2, 3329 },
+  { 124, 4, 154, 2, 3329 },
+  { 170, 4, 151, 2, 3329 },
+  { 216, 4, 151, 2, 3329 },
+  { 257, 4, 148, 2, 3329 },
+  { 294, 4, 145, 2, 3329 },
+  { 331, 4, 142, 2, 3329 },
+  { 368, 4, 142, 2, 3329 },
+  { 393, 4, 139, 2, 3329 },
+  { 24, 4, 136, 2, 3329 },
+  { 78, 4, 133, 2, 3329 },
+  { 28, 4, 4, 2, 3361 },
+  { 82, 4, 4, 2, 3361 },
+  { 128, 4, 4, 2, 3361 },
+  { 174, 4, 4, 2, 3361 },
+  { 39, 4, 4, 2, 3361 },
+  { 93, 4, 4, 2, 3361 },
+  { 139, 4, 4, 2, 3361 },
+  { 185, 4, 4, 2, 3361 },
+  { 226, 4, 4, 2, 3361 },
+  { 267, 4, 4, 2, 3361 },
+  { 304, 4, 4, 2, 3361 },
+  { 341, 4, 4, 2, 3361 },
+  { 42, 4, 4, 2, 3361 },
+  { 96, 4, 4, 2, 3361 },
+  { 142, 4, 4, 2, 3361 },
+  { 188, 4, 4, 2, 3361 },
+  { 229, 4, 4, 2, 3361 },
+  { 270, 4, 4, 2, 3361 },
+  { 307, 4, 4, 2, 3361 },
+  { 344, 4, 4, 2, 3361 },
+  { 45, 4, 4, 2, 3361 },
+  { 99, 4, 4, 2, 3361 },
+  { 145, 4, 4, 2, 3361 },
+  { 191, 4, 4, 2, 3361 },
+  { 232, 4, 4, 2, 3361 },
+  { 273, 4, 4, 2, 3361 },
+  { 310, 4, 4, 2, 3361 },
+  { 347, 4, 4, 2, 3361 },
+  { 48, 4, 4, 2, 3361 },
+  { 102, 4, 4, 2, 3361 },
+  { 148, 4, 4, 2, 3361 },
+  { 194, 4, 4, 2, 3361 },
+  { 235, 4, 4, 2, 3361 },
+  { 276, 4, 4, 2, 3361 },
+  { 313, 4, 4, 2, 3361 },
+  { 350, 4, 4, 2, 3361 },
+  { 51, 8, 4, 6, 4 },
+  { 105, 18, 4, 6, 4 },
+  { 151, 28, 4, 6, 4 },
+  { 197, 38, 4, 6, 4 },
+  { 238, 48, 4, 6, 4 },
+  { 279, 58, 4, 6, 4 },
+  { 316, 68, 4, 6, 4 },
+  { 353, 78, 4, 6, 4 },
+  { 378, 88, 4, 3, 1362 },
+  { 403, 91, 4, 3, 1362 },
+  { 8, 94, 4, 3, 1362 },
+  { 62, 97, 4, 3, 1362 },
+  { 116, 100, 4, 3, 1362 },
+  { 162, 103, 4, 3, 1362 },
+  { 208, 106, 4, 3, 1362 },
+  { 249, 109, 4, 3, 1362 },
+};
+
+  // FCCRegs Register Class...
+  static uint16_t FCCRegs[] = {
+    SP_FCC0, SP_FCC1, SP_FCC2, SP_FCC3, 
+  };
+
+  // FCCRegs Bit set.
+  static uint8_t FCCRegsBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 
+  };
+
+  // FPRegs Register Class...
+  static uint16_t FPRegs[] = {
+    SP_F0, SP_F1, SP_F2, SP_F3, SP_F4, SP_F5, SP_F6, SP_F7, SP_F8, SP_F9, SP_F10, SP_F11, SP_F12, SP_F13, SP_F14, SP_F15, SP_F16, SP_F17, SP_F18, SP_F19, SP_F20, SP_F21, SP_F22, SP_F23, SP_F24, SP_F25, SP_F26, SP_F27, SP_F28, SP_F29, SP_F30, SP_F31, 
+  };
+
+  // FPRegs Bit set.
+  static uint8_t FPRegsBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, 
+  };
+
+  // IntRegs Register Class...
+  static uint16_t IntRegs[] = {
+    SP_I0, SP_I1, SP_I2, SP_I3, SP_I4, SP_I5, SP_I6, SP_I7, SP_G0, SP_G1, SP_G2, SP_G3, SP_G4, SP_G5, SP_G6, SP_G7, SP_L0, SP_L1, SP_L2, SP_L3, SP_L4, SP_L5, SP_L6, SP_L7, SP_O0, SP_O1, SP_O2, SP_O3, SP_O4, SP_O5, SP_O6, SP_O7, 
+  };
+
+  // IntRegs Bit set.
+  static uint8_t IntRegsBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x7f, 
+  };
+
+  // DFPRegs Register Class...
+  static uint16_t DFPRegs[] = {
+    SP_D0, SP_D1, SP_D2, SP_D3, SP_D4, SP_D5, SP_D6, SP_D7, SP_D8, SP_D9, SP_D10, SP_D11, SP_D12, SP_D13, SP_D14, SP_D15, SP_D16, SP_D17, SP_D18, SP_D19, SP_D20, SP_D21, SP_D22, SP_D23, SP_D24, SP_D25, SP_D26, SP_D27, SP_D28, SP_D29, SP_D30, SP_D31, 
+  };
+
+  // DFPRegs Bit set.
+  static uint8_t DFPRegsBits[] = {
+    0xf8, 0xff, 0xff, 0xff, 0x07, 
+  };
+
+  // I64Regs Register Class...
+  static uint16_t I64Regs[] = {
+    SP_I0, SP_I1, SP_I2, SP_I3, SP_I4, SP_I5, SP_I6, SP_I7, SP_G0, SP_G1, SP_G2, SP_G3, SP_G4, SP_G5, SP_G6, SP_G7, SP_L0, SP_L1, SP_L2, SP_L3, SP_L4, SP_L5, SP_L6, SP_L7, SP_O0, SP_O1, SP_O2, SP_O3, SP_O4, SP_O5, SP_O6, SP_O7, 
+  };
+
+  // I64Regs Bit set.
+  static uint8_t I64RegsBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x7f, 
+  };
+
+  // DFPRegs_with_sub_even Register Class...
+  static uint16_t DFPRegs_with_sub_even[] = {
+    SP_D0, SP_D1, SP_D2, SP_D3, SP_D4, SP_D5, SP_D6, SP_D7, SP_D8, SP_D9, SP_D10, SP_D11, SP_D12, SP_D13, SP_D14, SP_D15, 
+  };
+
+  // DFPRegs_with_sub_even Bit set.
+  static uint8_t DFPRegs_with_sub_evenBits[] = {
+    0xf8, 0xff, 0x07, 
+  };
+
+  // QFPRegs Register Class...
+  static uint16_t QFPRegs[] = {
+    SP_Q0, SP_Q1, SP_Q2, SP_Q3, SP_Q4, SP_Q5, SP_Q6, SP_Q7, SP_Q8, SP_Q9, SP_Q10, SP_Q11, SP_Q12, SP_Q13, SP_Q14, SP_Q15, 
+  };
+
+  // QFPRegs Bit set.
+  static uint8_t QFPRegsBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x7f, 
+  };
+
+  // QFPRegs_with_sub_even Register Class...
+  static uint16_t QFPRegs_with_sub_even[] = {
+    SP_Q0, SP_Q1, SP_Q2, SP_Q3, SP_Q4, SP_Q5, SP_Q6, SP_Q7, 
+  };
+
+  // QFPRegs_with_sub_even Bit set.
+  static uint8_t QFPRegs_with_sub_evenBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x7f, 
+  };
+
+static MCRegisterClass SparcMCRegisterClasses[] = {
+  { "FCCRegs", FCCRegs, FCCRegsBits, 4, sizeof(FCCRegsBits), SP_FCCRegsRegClassID, 0, 0, 1, 1 },
+  { "FPRegs", FPRegs, FPRegsBits, 32, sizeof(FPRegsBits), SP_FPRegsRegClassID, 4, 4, 1, 1 },
+  { "IntRegs", IntRegs, IntRegsBits, 32, sizeof(IntRegsBits), SP_IntRegsRegClassID, 4, 4, 1, 1 },
+  { "DFPRegs", DFPRegs, DFPRegsBits, 32, sizeof(DFPRegsBits), SP_DFPRegsRegClassID, 8, 8, 1, 1 },
+  { "I64Regs", I64Regs, I64RegsBits, 32, sizeof(I64RegsBits), SP_I64RegsRegClassID, 8, 8, 1, 1 },
+  { "DFPRegs_with_sub_even", DFPRegs_with_sub_even, DFPRegs_with_sub_evenBits, 16, sizeof(DFPRegs_with_sub_evenBits), SP_DFPRegs_with_sub_evenRegClassID, 8, 8, 1, 1 },
+  { "QFPRegs", QFPRegs, QFPRegsBits, 16, sizeof(QFPRegsBits), SP_QFPRegsRegClassID, 16, 16, 1, 1 },
+  { "QFPRegs_with_sub_even", QFPRegs_with_sub_even, QFPRegs_with_sub_evenBits, 8, sizeof(QFPRegs_with_sub_evenBits), SP_QFPRegs_with_sub_evenRegClassID, 16, 16, 1, 1 },
+};
+
+#endif // GET_REGINFO_MC_DESC
diff --git a/arch/Sparc/SparcGenSubtargetInfo.inc b/arch/Sparc/SparcGenSubtargetInfo.inc
new file mode 100644
index 0000000..afe5108
--- /dev/null
+++ b/arch/Sparc/SparcGenSubtargetInfo.inc
@@ -0,0 +1,27 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Subtarget Enumeration Source Fragment                                       *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine, http://www.capstone-engine.org */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+
+#ifdef GET_SUBTARGETINFO_ENUM
+#undef GET_SUBTARGETINFO_ENUM
+
+enum {
+  Sparc_FeatureHardQuad =  1ULL << 0,
+  Sparc_FeatureV8Deprecated =  1ULL << 1,
+  Sparc_FeatureV9 =  1ULL << 2,
+  Sparc_FeatureVIS =  1ULL << 3,
+  Sparc_FeatureVIS2 =  1ULL << 4,
+  Sparc_FeatureVIS3 =  1ULL << 5,
+  Sparc_UsePopc =  1ULL << 6
+};
+
+#endif // GET_SUBTARGETINFO_ENUM
+
diff --git a/arch/Sparc/SparcInstPrinter.c b/arch/Sparc/SparcInstPrinter.c
new file mode 100644
index 0000000..c2d5e6d
--- /dev/null
+++ b/arch/Sparc/SparcInstPrinter.c
@@ -0,0 +1,273 @@
+//===-- SparcInstPrinter.cpp - Convert Sparc MCInst to assembly syntax --------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This class prints an Sparc MCInst to a .s file.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "SparcInstPrinter.h"
+#include "../../MCInst.h"
+#include "../../utils.h"
+#include "../../SStream.h"
+#include "../../MCRegisterInfo.h"
+#include "../../MathExtras.h"
+#include "SparcMapping.h"
+
+#include "Sparc.h"
+
+static const char *getRegisterName(unsigned RegNo);
+static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI);
+static void printMemOperand(MCInst *MI, int opNum, SStream *O, const char *Modifier);
+static void printOperand(MCInst *MI, int opNum, SStream *O);
+
+static void set_mem_access(MCInst *MI, bool status)
+{
+	if (MI->csh->detail != CS_OPT_ON)
+		return;
+
+	MI->csh->doing_mem = status;
+
+	if (status) {
+		MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].type = SPARC_OP_MEM;
+		MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].mem.base = SPARC_REG_INVALID;
+		MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].mem.disp = 0;
+	} else {
+		// done, create the next operand slot
+		MI->flat_insn.sparc.op_count++;
+	}
+}
+
+void Sparc_post_printer(csh ud, cs_insn *insn, char *insn_asm)
+{
+	if (((cs_struct *)ud)->detail != CS_OPT_ON)
+		return;
+
+	// fix up some instructions
+	if (insn->id == SPARC_INS_CASX) {
+		// first op is actually a memop, not regop
+		insn->detail->sparc.operands[0].type = SPARC_OP_MEM;
+		insn->detail->sparc.operands[0].mem.base = insn->detail->sparc.operands[0].reg;
+		insn->detail->sparc.operands[0].mem.disp = 0;
+	}
+}
+
+static void printRegName(SStream *OS, unsigned RegNo)
+{
+	SStream_concat(OS, "%%%s", getRegisterName(RegNo));
+}
+
+#define GET_INSTRINFO_ENUM
+#include "SparcGenInstrInfo.inc"
+
+#define GET_REGINFO_ENUM
+#include "SparcGenRegisterInfo.inc"
+
+static bool printSparcAliasInstr(MCInst *MI, SStream *O)
+{
+	switch (MCInst_getOpcode(MI)) {
+		default: return false;
+		case SP_JMPLrr:
+		case SP_JMPLri:
+				 if (MCInst_getNumOperands(MI) != 3)
+					 return false;
+				 if (!MCOperand_isReg(MCInst_getOperand(MI, 0)))
+					 return false;
+
+				 switch (MCOperand_getReg(MCInst_getOperand(MI, 0))) {
+					 default: return false;
+					 case SP_G0: // jmp $addr | ret | retl
+							  if (MCOperand_isImm(MCInst_getOperand(MI, 2)) &&
+									MCOperand_getImm(MCInst_getOperand(MI, 2)) == 8) {
+								  switch(MCOperand_getReg(MCInst_getOperand(MI, 1))) {
+									  default: break;
+									  case SP_I7: SStream_concat(O, "ret"); return true;
+									  case SP_O7: SStream_concat(O, "retl"); return true;
+								  }
+							  }
+
+							  SStream_concat(O, "jmp\t");
+							  printMemOperand(MI, 1, O, NULL);
+							  return true;
+					 case SP_O7: // call $addr
+							  SStream_concat(O, "call ");
+							  printMemOperand(MI, 1, O, NULL);
+							  return true;
+				 }
+		case SP_V9FCMPS:
+		case SP_V9FCMPD:
+		case SP_V9FCMPQ:
+		case SP_V9FCMPES:
+		case SP_V9FCMPED:
+		case SP_V9FCMPEQ:
+				 if (MI->csh->mode & CS_MODE_V9 || (MCInst_getNumOperands(MI) != 3) ||
+						 (!MCOperand_isReg(MCInst_getOperand(MI, 0))) ||
+						 (MCOperand_getReg(MCInst_getOperand(MI, 0)) != SP_FCC0))
+						 return false;
+				 // if V8, skip printing %fcc0.
+				 switch(MCInst_getOpcode(MI)) {
+					 default:
+					 case SP_V9FCMPS:  SStream_concat(O, "fcmps\t"); break;
+					 case SP_V9FCMPD:  SStream_concat(O, "fcmpd\t"); break;
+					 case SP_V9FCMPQ:  SStream_concat(O, "fcmpq\t"); break;
+					 case SP_V9FCMPES: SStream_concat(O, "fcmpes\t"); break;
+					 case SP_V9FCMPED: SStream_concat(O, "fcmped\t"); break;
+					 case SP_V9FCMPEQ: SStream_concat(O, "fcmpeq\t"); break;
+				 }
+				 printOperand(MI, 1, O);
+				 SStream_concat(O, ", ");
+				 printOperand(MI, 2, O);
+				 return true;
+	}
+}
+
+static void printOperand(MCInst *MI, int opNum, SStream *O)
+{
+	int Imm;
+	unsigned reg;
+	MCOperand *MO = MCInst_getOperand(MI, opNum);
+
+	if (MCOperand_isReg(MO)) {
+		reg = MCOperand_getReg(MO);
+		printRegName(O, reg);
+		reg = Sparc_map_register(reg);
+
+		if (MI->csh->detail) {
+			if (MI->csh->doing_mem) {
+				if (MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].mem.base)
+					MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].mem.index = reg;
+				else
+					MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].mem.base = reg;
+			} else {
+				MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].type = SPARC_OP_REG;
+				MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].reg = reg;
+				MI->flat_insn.sparc.op_count++;
+			}
+		}
+
+		return;
+	}
+
+	if (MCOperand_isImm(MO)) {
+		Imm = (int)MCOperand_getImm(MO);
+		if (Imm >= 0) {
+			if (Imm > HEX_THRESHOLD)
+				SStream_concat(O, "0x%x", Imm);
+			else
+				SStream_concat(O, "%u", Imm);
+		} else {
+			if (Imm < -HEX_THRESHOLD)
+				SStream_concat(O, "-0x%x", -Imm);
+			else
+				SStream_concat(O, "-%u", -Imm);
+		}
+
+		if (MI->csh->detail) {
+			if (MI->csh->doing_mem) {
+				MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].mem.disp = Imm;
+			} else {
+				MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].type = SPARC_OP_IMM;
+				MI->flat_insn.sparc.operands[MI->flat_insn.sparc.op_count].imm = Imm;
+				MI->flat_insn.sparc.op_count++;
+			}
+		}
+	}
+
+	return;
+}
+
+static void printMemOperand(MCInst *MI, int opNum, SStream *O, const char *Modifier)
+{
+	MCOperand *MO;
+
+	set_mem_access(MI, true);
+	printOperand(MI, opNum, O);
+
+	// If this is an ADD operand, emit it like normal operands.
+	if (Modifier && !strcmp(Modifier, "arith")) {
+		SStream_concat(O, ", ");
+		printOperand(MI, opNum + 1, O);
+		set_mem_access(MI, false);
+		return;
+	}
+
+	MO = MCInst_getOperand(MI, opNum + 1);
+
+	if (MCOperand_isReg(MO) && (MCOperand_getReg(MO) == SP_G0)) {
+		set_mem_access(MI, false);
+		return;   // don't print "+%g0"
+	}
+
+	if (MCOperand_isImm(MO) && (MCOperand_getImm(MO) == 0)) {
+		set_mem_access(MI, false);
+		return;   // don't print "+0"
+	}
+
+	SStream_concat(O, "+");
+
+	printOperand(MI, opNum + 1, O);
+	set_mem_access(MI, false);
+}
+
+static void printCCOperand(MCInst *MI, int opNum, SStream *O)
+{
+	int CC = (int)MCOperand_getImm(MCInst_getOperand(MI, opNum));
+
+	switch (MCInst_getOpcode(MI)) {
+		default: break;
+		case SP_FBCOND:
+		case SP_FBCONDA:
+		case SP_BPFCC:
+		case SP_BPFCCA:
+		case SP_BPFCCNT:
+		case SP_BPFCCANT:
+		case SP_MOVFCCrr:  case SP_V9MOVFCCrr:
+		case SP_MOVFCCri:  case SP_V9MOVFCCri:
+		case SP_FMOVS_FCC: case SP_V9FMOVS_FCC:
+		case SP_FMOVD_FCC: case SP_V9FMOVD_FCC:
+		case SP_FMOVQ_FCC: case SP_V9FMOVQ_FCC:
+				 // Make sure CC is a fp conditional flag.
+				 CC = (CC < 16) ? (CC + 16) : CC;
+				 break;
+	}
+
+	SStream_concat(O, "%s", SPARCCondCodeToString((sparc_cc)CC));
+
+	if (MI->csh->detail)
+		MI->flat_insn.sparc.cc = (sparc_cc)CC;
+}
+
+
+static bool printGetPCX(MCInst *MI, unsigned opNum, SStream *O)
+{
+	return true;
+}
+
+
+#define PRINT_ALIAS_INSTR
+#include "SparcGenAsmWriter.inc"
+
+void Sparc_printInst(MCInst *MI, SStream *O, void *Info)
+{
+	char *mnem;
+
+	mnem = printAliasInstr(MI, O, Info);
+	if (mnem)
+		cs_mem_free(mnem);
+	else {
+		if (!printSparcAliasInstr(MI, O))
+			printInstruction(MI, O, NULL);
+	}
+}
diff --git a/arch/Sparc/SparcInstPrinter.h b/arch/Sparc/SparcInstPrinter.h
new file mode 100644
index 0000000..4e6a5ce
--- /dev/null
+++ b/arch/Sparc/SparcInstPrinter.h
@@ -0,0 +1,15 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SPARCINSTPRINTER_H
+#define CS_SPARCINSTPRINTER_H
+
+#include "../../MCInst.h"
+#include "../../MCRegisterInfo.h"
+#include "../../SStream.h"
+
+void Sparc_printInst(MCInst *MI, SStream *O, void *Info);
+
+void Sparc_post_printer(csh ud, cs_insn *insn, char *insn_asm);
+
+#endif
diff --git a/arch/Sparc/SparcMapping.c b/arch/Sparc/SparcMapping.c
new file mode 100644
index 0000000..1e2113c
--- /dev/null
+++ b/arch/Sparc/SparcMapping.c
@@ -0,0 +1,3177 @@
+/* Capstone Unified Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>	// debug
+#include <string.h>
+
+#include "../../include/sparc.h"
+#include "../../utils.h"
+
+#include "SparcMapping.h"
+
+#define GET_INSTRINFO_ENUM
+#include "SparcGenInstrInfo.inc"
+
+#ifndef CAPSTONE_DIET
+static name_map reg_name_maps[] = {
+	{ SPARC_REG_INVALID, NULL },
+
+	{ SPARC_REG_F0, "f0"},
+	{ SPARC_REG_F1, "f1"},
+	{ SPARC_REG_F2, "f2"},
+	{ SPARC_REG_F3, "f3"},
+	{ SPARC_REG_F4, "f4"},
+	{ SPARC_REG_F5, "f5"},
+	{ SPARC_REG_F6, "f6"},
+	{ SPARC_REG_F7, "f7"},
+	{ SPARC_REG_F8, "f8"},
+	{ SPARC_REG_F9, "f9"},
+	{ SPARC_REG_F10, "f10"},
+	{ SPARC_REG_F11, "f11"},
+	{ SPARC_REG_F12, "f12"},
+	{ SPARC_REG_F13, "f13"},
+	{ SPARC_REG_F14, "f14"},
+	{ SPARC_REG_F15, "f15"},
+	{ SPARC_REG_F16, "f16"},
+	{ SPARC_REG_F17, "f17"},
+	{ SPARC_REG_F18, "f18"},
+	{ SPARC_REG_F19, "f19"},
+	{ SPARC_REG_F20, "f20"},
+	{ SPARC_REG_F21, "f21"},
+	{ SPARC_REG_F22, "f22"},
+	{ SPARC_REG_F23, "f23"},
+	{ SPARC_REG_F24, "f24"},
+	{ SPARC_REG_F25, "f25"},
+	{ SPARC_REG_F26, "f26"},
+	{ SPARC_REG_F27, "f27"},
+	{ SPARC_REG_F28, "f28"},
+	{ SPARC_REG_F29, "f29"},
+	{ SPARC_REG_F30, "f30"},
+	{ SPARC_REG_F31, "f31"},
+	{ SPARC_REG_F32, "f32"},
+	{ SPARC_REG_F34, "f34"},
+	{ SPARC_REG_F36, "f36"},
+	{ SPARC_REG_F38, "f38"},
+	{ SPARC_REG_F40, "f40"},
+	{ SPARC_REG_F42, "f42"},
+	{ SPARC_REG_F44, "f44"},
+	{ SPARC_REG_F46, "f46"},
+	{ SPARC_REG_F48, "f48"},
+	{ SPARC_REG_F50, "f50"},
+	{ SPARC_REG_F52, "f52"},
+	{ SPARC_REG_F54, "f54"},
+	{ SPARC_REG_F56, "f56"},
+	{ SPARC_REG_F58, "f58"},
+	{ SPARC_REG_F60, "f60"},
+	{ SPARC_REG_F62, "f62"},
+	{ SPARC_REG_FCC0, "fcc0"},
+	{ SPARC_REG_FCC1, "fcc1"},
+	{ SPARC_REG_FCC2, "fcc2"},
+	{ SPARC_REG_FCC3, "fcc3"},
+	{ SPARC_REG_FP, "fp"},
+	{ SPARC_REG_G0, "g0"},
+	{ SPARC_REG_G1, "g1"},
+	{ SPARC_REG_G2, "g2"},
+	{ SPARC_REG_G3, "g3"},
+	{ SPARC_REG_G4, "g4"},
+	{ SPARC_REG_G5, "g5"},
+	{ SPARC_REG_G6, "g6"},
+	{ SPARC_REG_G7, "g7"},
+	{ SPARC_REG_I0, "i0"},
+	{ SPARC_REG_I1, "i1"},
+	{ SPARC_REG_I2, "i2"},
+	{ SPARC_REG_I3, "i3"},
+	{ SPARC_REG_I4, "i4"},
+	{ SPARC_REG_I5, "i5"},
+	{ SPARC_REG_I7, "i7"},
+	{ SPARC_REG_ICC, "icc"},
+	{ SPARC_REG_L0, "l0"},
+	{ SPARC_REG_L1, "l1"},
+	{ SPARC_REG_L2, "l2"},
+	{ SPARC_REG_L3, "l3"},
+	{ SPARC_REG_L4, "l4"},
+	{ SPARC_REG_L5, "l5"},
+	{ SPARC_REG_L6, "l6"},
+	{ SPARC_REG_L7, "l7"},
+	{ SPARC_REG_O0, "o0"},
+	{ SPARC_REG_O1, "o1"},
+	{ SPARC_REG_O2, "o2"},
+	{ SPARC_REG_O3, "o3"},
+	{ SPARC_REG_O4, "o4"},
+	{ SPARC_REG_O5, "o5"},
+	{ SPARC_REG_O7, "o7"},
+	{ SPARC_REG_SP, "sp"},
+	{ SPARC_REG_Y, "y"},
+};
+#endif
+
+const char *Sparc_reg_name(csh handle, unsigned int reg)
+{
+#ifndef CAPSTONE_DIET
+	if (reg >= SPARC_REG_MAX)
+		return NULL;
+
+	return reg_name_maps[reg].name;
+#else
+	return NULL;
+#endif
+}
+
+static insn_map insns[] = {
+	// dummy item
+	{
+		0, 0,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+
+	{
+		SP_ADDCCri, SPARC_INS_ADDCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDCCrr, SPARC_INS_ADDCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDCri, SPARC_INS_ADDX,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDCrr, SPARC_INS_ADDX,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDEri, SPARC_INS_ADDXCC,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDErr, SPARC_INS_ADDXCC,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDXC, SPARC_INS_ADDXC,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDXCCC, SPARC_INS_ADDXCCC,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { SPARC_REG_ICC, 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDXri, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDXrr, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDri, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ADDrr, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ALIGNADDR, SPARC_INS_ALIGNADDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ALIGNADDRL, SPARC_INS_ALIGNADDRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDCCri, SPARC_INS_ANDCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDCCrr, SPARC_INS_ANDCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDNCCri, SPARC_INS_ANDNCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDNCCrr, SPARC_INS_ANDNCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDNri, SPARC_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDNrr, SPARC_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDXNrr, SPARC_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDXri, SPARC_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDXrr, SPARC_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDri, SPARC_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ANDrr, SPARC_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ARRAY16, SPARC_INS_ARRAY16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ARRAY32, SPARC_INS_ARRAY32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ARRAY8, SPARC_INS_ARRAY8,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_BA, SPARC_INS_BA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BCOND, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BCONDA, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BINDri, SPARC_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		SP_BINDrr, SPARC_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		SP_BMASK, SPARC_INS_BMASK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_BPFCC, SPARC_INS_FB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPFCCA, SPARC_INS_FB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPFCCANT, SPARC_INS_FB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPFCCNT, SPARC_INS_FB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGEZapn, SPARC_INS_BRGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGEZapt, SPARC_INS_BRGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGEZnapn, SPARC_INS_BRGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGEZnapt, SPARC_INS_BRGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGZapn, SPARC_INS_BRGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGZapt, SPARC_INS_BRGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGZnapn, SPARC_INS_BRGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPGZnapt, SPARC_INS_BRGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPICC, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPICCA, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPICCANT, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPICCNT, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLEZapn, SPARC_INS_BRLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLEZapt, SPARC_INS_BRLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLEZnapn, SPARC_INS_BRLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLEZnapt, SPARC_INS_BRLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLZapn, SPARC_INS_BRLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLZapt, SPARC_INS_BRLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLZnapn, SPARC_INS_BRLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPLZnapt, SPARC_INS_BRLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPNZapn, SPARC_INS_BRNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPNZapt, SPARC_INS_BRNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPNZnapn, SPARC_INS_BRNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPNZnapt, SPARC_INS_BRNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPXCC, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPXCCA, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPXCCANT, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPXCCNT, SPARC_INS_B,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPZapn, SPARC_INS_BRZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPZapt, SPARC_INS_BRZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPZnapn, SPARC_INS_BRZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BPZnapt, SPARC_INS_BRZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 1, 0
+#endif
+	},
+	{
+		SP_BSHUFFLE, SPARC_INS_BSHUFFLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CALL, SPARC_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_O6, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CALLri, SPARC_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_O6, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CALLrr, SPARC_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_O6, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CASXrr, SPARC_INS_CASX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CASrr, SPARC_INS_CAS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CMASK16, SPARC_INS_CMASK16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CMASK32, SPARC_INS_CMASK32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CMASK8, SPARC_INS_CMASK8,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CMPri, SPARC_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_CMPrr, SPARC_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE16, SPARC_INS_EDGE16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE16L, SPARC_INS_EDGE16L,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE16LN, SPARC_INS_EDGE16LN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE16N, SPARC_INS_EDGE16N,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE32, SPARC_INS_EDGE32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE32L, SPARC_INS_EDGE32L,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE32LN, SPARC_INS_EDGE32LN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE32N, SPARC_INS_EDGE32N,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE8, SPARC_INS_EDGE8,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE8L, SPARC_INS_EDGE8L,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE8LN, SPARC_INS_EDGE8LN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_EDGE8N, SPARC_INS_EDGE8N,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FABSD, SPARC_INS_FABSD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FABSQ, SPARC_INS_FABSQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FABSS, SPARC_INS_FABSS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FADDD, SPARC_INS_FADDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FADDQ, SPARC_INS_FADDQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FADDS, SPARC_INS_FADDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FALIGNADATA, SPARC_INS_FALIGNDATA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FAND, SPARC_INS_FAND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FANDNOT1, SPARC_INS_FANDNOT1,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FANDNOT1S, SPARC_INS_FANDNOT1S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FANDNOT2, SPARC_INS_FANDNOT2,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FANDNOT2S, SPARC_INS_FANDNOT2S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FANDS, SPARC_INS_FANDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FBCOND, SPARC_INS_FB,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SP_FBCONDA, SPARC_INS_FB,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SP_FCHKSM16, SPARC_INS_FCHKSM16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPD, SPARC_INS_FCMPD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_FCC0, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPEQ16, SPARC_INS_FCMPEQ16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPEQ32, SPARC_INS_FCMPEQ32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPGT16, SPARC_INS_FCMPGT16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPGT32, SPARC_INS_FCMPGT32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPLE16, SPARC_INS_FCMPLE16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPLE32, SPARC_INS_FCMPLE32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPNE16, SPARC_INS_FCMPNE16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPNE32, SPARC_INS_FCMPNE32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPQ, SPARC_INS_FCMPQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_FCC0, 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FCMPS, SPARC_INS_FCMPS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_FCC0, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDIVD, SPARC_INS_FDIVD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDIVQ, SPARC_INS_FDIVQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDIVS, SPARC_INS_FDIVS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDMULQ, SPARC_INS_FDMULQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDTOI, SPARC_INS_FDTOI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDTOQ, SPARC_INS_FDTOQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDTOS, SPARC_INS_FDTOS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FDTOX, SPARC_INS_FDTOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FEXPAND, SPARC_INS_FEXPAND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FHADDD, SPARC_INS_FHADDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FHADDS, SPARC_INS_FHADDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FHSUBD, SPARC_INS_FHSUBD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FHSUBS, SPARC_INS_FHSUBS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FITOD, SPARC_INS_FITOD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FITOQ, SPARC_INS_FITOQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FITOS, SPARC_INS_FITOS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FLCMPD, SPARC_INS_FLCMPD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FLCMPS, SPARC_INS_FLCMPS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FLUSHW, SPARC_INS_FLUSHW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMEAN16, SPARC_INS_FMEAN16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVD, SPARC_INS_FMOVD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVD_FCC, SPARC_INS_FMOVD,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVD_ICC, SPARC_INS_FMOVD,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVD_XCC, SPARC_INS_FMOVD,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVQ, SPARC_INS_FMOVQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVQ_FCC, SPARC_INS_FMOVQ,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVQ_ICC, SPARC_INS_FMOVQ,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVQ_XCC, SPARC_INS_FMOVQ,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRGEZD, SPARC_INS_FMOVRDGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRGEZQ, SPARC_INS_FMOVRQGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRGEZS, SPARC_INS_FMOVRSGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRGZD, SPARC_INS_FMOVRDGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRGZQ, SPARC_INS_FMOVRQGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRGZS, SPARC_INS_FMOVRSGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRLEZD, SPARC_INS_FMOVRDLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRLEZQ, SPARC_INS_FMOVRQLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRLEZS, SPARC_INS_FMOVRSLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRLZD, SPARC_INS_FMOVRDLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRLZQ, SPARC_INS_FMOVRQLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRLZS, SPARC_INS_FMOVRSLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRNZD, SPARC_INS_FMOVRDNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRNZQ, SPARC_INS_FMOVRQNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRNZS, SPARC_INS_FMOVRSNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRZD, SPARC_INS_FMOVRDZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRZQ, SPARC_INS_FMOVRQZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVRZS, SPARC_INS_FMOVRSZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVS, SPARC_INS_FMOVS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVS_FCC, SPARC_INS_FMOVS,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVS_ICC, SPARC_INS_FMOVS,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMOVS_XCC, SPARC_INS_FMOVS,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMUL8SUX16, SPARC_INS_FMUL8SUX16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMUL8ULX16, SPARC_INS_FMUL8ULX16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMUL8X16, SPARC_INS_FMUL8X16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMUL8X16AL, SPARC_INS_FMUL8X16AL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMUL8X16AU, SPARC_INS_FMUL8X16AU,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMULD, SPARC_INS_FMULD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMULD8SUX16, SPARC_INS_FMULD8SUX16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMULD8ULX16, SPARC_INS_FMULD8ULX16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMULQ, SPARC_INS_FMULQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FMULS, SPARC_INS_FMULS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNADDD, SPARC_INS_FNADDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNADDS, SPARC_INS_FNADDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNAND, SPARC_INS_FNAND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNANDS, SPARC_INS_FNANDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNEGD, SPARC_INS_FNEGD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNEGQ, SPARC_INS_FNEGQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNEGS, SPARC_INS_FNEGS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNHADDD, SPARC_INS_FNHADDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNHADDS, SPARC_INS_FNHADDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNMULD, SPARC_INS_FNHADDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNMULS, SPARC_INS_FNHADDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNOR, SPARC_INS_FNOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNORS, SPARC_INS_FNORS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNOT1, SPARC_INS_FNOT1,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNOT1S, SPARC_INS_FNOT1S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNOT2, SPARC_INS_FNOT2,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNOT2S, SPARC_INS_FNOT2S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FNSMULD, SPARC_INS_FNHADDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FONE, SPARC_INS_FONE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FONES, SPARC_INS_FONES,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FOR, SPARC_INS_FOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FORNOT1, SPARC_INS_FORNOT1,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FORNOT1S, SPARC_INS_FORNOT1S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FORNOT2, SPARC_INS_FORNOT2,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FORNOT2S, SPARC_INS_FORNOT2S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FORS, SPARC_INS_FORS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPACK16, SPARC_INS_FPACK16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPACK32, SPARC_INS_FPACK32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPACKFIX, SPARC_INS_FPACKFIX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPADD16, SPARC_INS_FPADD16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPADD16S, SPARC_INS_FPADD16S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPADD32, SPARC_INS_FPADD32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPADD32S, SPARC_INS_FPADD32S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPADD64, SPARC_INS_FPADD64,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPMERGE, SPARC_INS_FPMERGE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPSUB16, SPARC_INS_FPSUB16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPSUB16S, SPARC_INS_FPSUB16S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPSUB32, SPARC_INS_FPSUB32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FPSUB32S, SPARC_INS_FPSUB32S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FQTOD, SPARC_INS_FQTOD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FQTOI, SPARC_INS_FQTOI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FQTOS, SPARC_INS_FQTOS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FQTOX, SPARC_INS_FQTOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSLAS16, SPARC_INS_FSLAS16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSLAS32, SPARC_INS_FSLAS32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSLL16, SPARC_INS_FSLL16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSLL32, SPARC_INS_FSLL32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSMULD, SPARC_INS_FSMULD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSQRTD, SPARC_INS_FSQRTD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSQRTQ, SPARC_INS_FSQRTQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSQRTS, SPARC_INS_FSQRTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRA16, SPARC_INS_FSRA16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRA32, SPARC_INS_FSRA32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRC1, SPARC_INS_FSRC1,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRC1S, SPARC_INS_FSRC1S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRC2, SPARC_INS_FSRC2,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRC2S, SPARC_INS_FSRC2S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRL16, SPARC_INS_FSRL16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSRL32, SPARC_INS_FSRL32,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSTOD, SPARC_INS_FSTOD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSTOI, SPARC_INS_FSTOI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSTOQ, SPARC_INS_FSTOQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSTOX, SPARC_INS_FSTOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSUBD, SPARC_INS_FSUBD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSUBQ, SPARC_INS_FSUBQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FSUBS, SPARC_INS_FSUBS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXNOR, SPARC_INS_FXNOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXNORS, SPARC_INS_FXNORS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXOR, SPARC_INS_FXOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXORS, SPARC_INS_FXORS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXTOD, SPARC_INS_FXTOD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXTOQ, SPARC_INS_FXTOQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FXTOS, SPARC_INS_FXTOS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FZERO, SPARC_INS_FZERO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_FZEROS, SPARC_INS_FZEROS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_JMPLri, SPARC_INS_JMPL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_JMPLrr, SPARC_INS_JMPL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDDFri, SPARC_INS_LDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDDFrr, SPARC_INS_LDD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDFri, SPARC_INS_LD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDFrr, SPARC_INS_LD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDQFri, SPARC_INS_LDQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDQFrr, SPARC_INS_LDQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDSBri, SPARC_INS_LDSB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDSBrr, SPARC_INS_LDSB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDSHri, SPARC_INS_LDSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDSHrr, SPARC_INS_LDSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDSWri, SPARC_INS_LDSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDSWrr, SPARC_INS_LDSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDUBri, SPARC_INS_LDUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDUBrr, SPARC_INS_LDUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDUHri, SPARC_INS_LDUH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDUHrr, SPARC_INS_LDUH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDXri, SPARC_INS_LDX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDXrr, SPARC_INS_LDX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDri, SPARC_INS_LD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LDrr, SPARC_INS_LD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LEAX_ADDri, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LEA_ADDri, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_32BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_LZCNT, SPARC_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MEMBARi, SPARC_INS_MEMBAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVDTOX, SPARC_INS_MOVDTOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVFCCri, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVFCCrr, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_FCC0, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVICCri, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVICCrr, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRGEZri, SPARC_INS_MOVRGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRGEZrr, SPARC_INS_MOVRGEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRGZri, SPARC_INS_MOVRGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRGZrr, SPARC_INS_MOVRGZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRLEZri, SPARC_INS_MOVRLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRLEZrr, SPARC_INS_MOVRLEZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRLZri, SPARC_INS_MOVRLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRLZrr, SPARC_INS_MOVRLZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRNZri, SPARC_INS_MOVRNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRNZrr, SPARC_INS_MOVRNZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRRZri, SPARC_INS_MOVRZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVRRZrr, SPARC_INS_MOVRZ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVSTOSW, SPARC_INS_MOVSTOSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVSTOUW, SPARC_INS_MOVSTOUW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVWTOS, SPARC_INS_MOVDTOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVXCCri, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVXCCrr, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MOVXTOD, SPARC_INS_MOVDTOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MULXri, SPARC_INS_MULX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_MULXrr, SPARC_INS_MULX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_NOP, SPARC_INS_NOP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORCCri, SPARC_INS_ORCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORCCrr, SPARC_INS_ORCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORNCCri, SPARC_INS_ORNCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORNCCrr, SPARC_INS_ORNCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORNri, SPARC_INS_ORN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORNrr, SPARC_INS_ORN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORXNrr, SPARC_INS_ORN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORXri, SPARC_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORXrr, SPARC_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORri, SPARC_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_ORrr, SPARC_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_PDIST, SPARC_INS_PDIST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_PDISTN, SPARC_INS_PDISTN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_POPCrr, SPARC_INS_POPC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RDY, SPARC_INS_RD,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_Y, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RESTOREri, SPARC_INS_RESTORE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RESTORErr, SPARC_INS_RESTORE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RET, SPARC_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RETL, SPARC_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RETTri, SPARC_INS_RETT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_RETTrr, SPARC_INS_RETT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SAVEri, SPARC_INS_SAVE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SAVErr, SPARC_INS_SAVE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SDIVCCri, SPARC_INS_SDIVCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SDIVCCrr, SPARC_INS_SDIVCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SDIVXri, SPARC_INS_SDIVX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SDIVXrr, SPARC_INS_SDIVX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SDIVri, SPARC_INS_SDIV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SDIVrr, SPARC_INS_SDIV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SETHIXi, SPARC_INS_SETHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SETHIi, SPARC_INS_SETHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SHUTDOWN, SPARC_INS_SHUTDOWN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SIAM, SPARC_INS_SIAM,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS2, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SLLXri, SPARC_INS_SLLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SLLXrr, SPARC_INS_SLLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SLLri, SPARC_INS_SLL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SLLrr, SPARC_INS_SLL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SMULCCri, SPARC_INS_SMULCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SMULCCrr, SPARC_INS_SMULCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SMULri, SPARC_INS_SMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SMULrr, SPARC_INS_SMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRAXri, SPARC_INS_SRAX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRAXrr, SPARC_INS_SRAX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRAri, SPARC_INS_SRA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRArr, SPARC_INS_SRA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRLXri, SPARC_INS_SRLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRLXrr, SPARC_INS_SRLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRLri, SPARC_INS_SRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SRLrr, SPARC_INS_SRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STBAR, SPARC_INS_STBAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STBri, SPARC_INS_STB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STBrr, SPARC_INS_STB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STDFri, SPARC_INS_STD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STDFrr, SPARC_INS_STD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STFri, SPARC_INS_ST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STFrr, SPARC_INS_ST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STHri, SPARC_INS_STH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STHrr, SPARC_INS_STH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STQFri, SPARC_INS_STQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STQFrr, SPARC_INS_STQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STXri, SPARC_INS_STX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STXrr, SPARC_INS_STX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STri, SPARC_INS_ST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_STrr, SPARC_INS_ST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBCCri, SPARC_INS_SUBCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBCCrr, SPARC_INS_SUBCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBCri, SPARC_INS_SUBX,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBCrr, SPARC_INS_SUBX,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBEri, SPARC_INS_SUBXCC,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBErr, SPARC_INS_SUBXCC,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBXri, SPARC_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBXrr, SPARC_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBri, SPARC_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SUBrr, SPARC_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SWAPri, SPARC_INS_SWAP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_SWAPrr, SPARC_INS_SWAP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TA3, SPARC_INS_TA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TA5, SPARC_INS_TA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TADDCCTVri, SPARC_INS_TADDCCTV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TADDCCTVrr, SPARC_INS_TADDCCTV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TADDCCri, SPARC_INS_TADDCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TADDCCrr, SPARC_INS_TADDCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TICCri, SPARC_INS_T,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TICCrr, SPARC_INS_T,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TLS_ADDXrr, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TLS_ADDrr, SPARC_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TLS_CALL, SPARC_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_O6, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TLS_LDXrr, SPARC_INS_LDX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TLS_LDrr, SPARC_INS_LD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TSUBCCTVri, SPARC_INS_TSUBCCTV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TSUBCCTVrr, SPARC_INS_TSUBCCTV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TSUBCCri, SPARC_INS_TSUBCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TSUBCCrr, SPARC_INS_TSUBCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TXCCri, SPARC_INS_T,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_TXCCrr, SPARC_INS_T,
+#ifndef CAPSTONE_DIET
+		{ SPARC_REG_ICC, 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UDIVCCri, SPARC_INS_UDIVCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UDIVCCrr, SPARC_INS_UDIVCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UDIVXri, SPARC_INS_UDIVX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UDIVXrr, SPARC_INS_UDIVX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UDIVri, SPARC_INS_UDIV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UDIVrr, SPARC_INS_UDIV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UMULCCri, SPARC_INS_UMULCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UMULCCrr, SPARC_INS_UMULCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UMULXHI, SPARC_INS_UMULXHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UMULri, SPARC_INS_UMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UMULrr, SPARC_INS_UMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_UNIMP, SPARC_INS_UNIMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FCMPD, SPARC_INS_FCMPD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FCMPED, SPARC_INS_FCMPED,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FCMPEQ, SPARC_INS_FCMPEQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FCMPES, SPARC_INS_FCMPES,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FCMPQ, SPARC_INS_FCMPQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_HARDQUAD, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FCMPS, SPARC_INS_FCMPS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FMOVD_FCC, SPARC_INS_FMOVD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FMOVQ_FCC, SPARC_INS_FMOVQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9FMOVS_FCC, SPARC_INS_FMOVS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9MOVFCCri, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_V9MOVFCCrr, SPARC_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_V9, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_WRYri, SPARC_INS_WR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_WRYrr, SPARC_INS_WR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_Y, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XMULX, SPARC_INS_XMULX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XMULXHI, SPARC_INS_XMULXHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_VIS3, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XNORCCri, SPARC_INS_XNORCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XNORCCrr, SPARC_INS_XNORCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XNORXrr, SPARC_INS_XNOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XNORri, SPARC_INS_XNOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XNORrr, SPARC_INS_XNOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XORCCri, SPARC_INS_XORCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XORCCrr, SPARC_INS_XORCC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SPARC_REG_ICC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XORXri, SPARC_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XORXrr, SPARC_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SPARC_GRP_64BIT, 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XORri, SPARC_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SP_XORrr, SPARC_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+};
+
+static struct hint_map {
+	unsigned int id;
+	uint8_t hints;
+} insn_hints[] = {
+	{ SP_BPGEZapn, SPARC_HINT_A | SPARC_HINT_PN },
+	{ SP_BPGEZapt, SPARC_HINT_A | SPARC_HINT_PT },
+	{ SP_BPGEZnapn, SPARC_HINT_PN },
+	{ SP_BPGZapn, SPARC_HINT_A | SPARC_HINT_PN },
+	{ SP_BPGZapt, SPARC_HINT_A | SPARC_HINT_PT },
+	{ SP_BPGZnapn, SPARC_HINT_PN },
+	{ SP_BPLEZapn, SPARC_HINT_A | SPARC_HINT_PN },
+	{ SP_BPLEZapt, SPARC_HINT_A | SPARC_HINT_PT },
+	{ SP_BPLEZnapn, SPARC_HINT_PN },
+	{ SP_BPLZapn, SPARC_HINT_A | SPARC_HINT_PN },
+	{ SP_BPLZapt, SPARC_HINT_A | SPARC_HINT_PT },
+	{ SP_BPLZnapn, SPARC_HINT_PN },
+	{ SP_BPNZapn, SPARC_HINT_A | SPARC_HINT_PN },
+	{ SP_BPNZapt, SPARC_HINT_A | SPARC_HINT_PT },
+	{ SP_BPNZnapn, SPARC_HINT_PN },
+	{ SP_BPZapn, SPARC_HINT_A | SPARC_HINT_PN },
+	{ SP_BPZapt, SPARC_HINT_A | SPARC_HINT_PT },
+	{ SP_BPZnapn, SPARC_HINT_PN },
+};
+
+// given internal insn id, return public instruction info
+void Sparc_get_insn_id(cs_struct *h, cs_insn *insn, unsigned int id)
+{
+	unsigned short i;
+
+	i = insn_find(insns, ARR_SIZE(insns), id, &h->insn_cache);
+	if (i != 0) {
+		insn->id = insns[i].mapid;
+
+		if (h->detail) {
+#ifndef CAPSTONE_DIET
+			memcpy(insn->detail->regs_read, insns[i].regs_use, sizeof(insns[i].regs_use));
+			insn->detail->regs_read_count = (uint8_t)count_positive(insns[i].regs_use);
+
+			memcpy(insn->detail->regs_write, insns[i].regs_mod, sizeof(insns[i].regs_mod));
+			insn->detail->regs_write_count = (uint8_t)count_positive(insns[i].regs_mod);
+
+			memcpy(insn->detail->groups, insns[i].groups, sizeof(insns[i].groups));
+			insn->detail->groups_count = (uint8_t)count_positive(insns[i].groups);
+
+			if (insns[i].branch || insns[i].indirect_branch) {
+				// this insn also belongs to JUMP group. add JUMP group
+				insn->detail->groups[insn->detail->groups_count] = SPARC_GRP_JUMP;
+				insn->detail->groups_count++;
+			}
+#endif
+			// hint code
+			for (i = 0; i < ARR_SIZE(insn_hints); i++) {
+				if (id == insn_hints[i].id) {
+					insn->detail->sparc.hint = insn_hints[i].hints;
+					break;
+				}
+			}
+		}
+	}
+}
+
+#ifndef CAPSTONE_DIET
+static name_map insn_name_maps[] = {
+	{ SPARC_INS_INVALID, NULL },
+
+	{ SPARC_INS_ADDCC, "addcc" },
+	{ SPARC_INS_ADDX, "addx" },
+	{ SPARC_INS_ADDXCC, "addxcc" },
+	{ SPARC_INS_ADDXC, "addxc" },
+	{ SPARC_INS_ADDXCCC, "addxccc" },
+	{ SPARC_INS_ADD, "add" },
+	{ SPARC_INS_ALIGNADDR, "alignaddr" },
+	{ SPARC_INS_ALIGNADDRL, "alignaddrl" },
+	{ SPARC_INS_ANDCC, "andcc" },
+	{ SPARC_INS_ANDNCC, "andncc" },
+	{ SPARC_INS_ANDN, "andn" },
+	{ SPARC_INS_AND, "and" },
+	{ SPARC_INS_ARRAY16, "array16" },
+	{ SPARC_INS_ARRAY32, "array32" },
+	{ SPARC_INS_ARRAY8, "array8" },
+	{ SPARC_INS_BA, "ba" },
+	{ SPARC_INS_B, "b" },
+	{ SPARC_INS_JMP, "jmp" },
+	{ SPARC_INS_BMASK, "bmask" },
+	{ SPARC_INS_FB, "fb" },
+	{ SPARC_INS_BRGEZ, "brgez" },
+	{ SPARC_INS_BRGZ, "brgz" },
+	{ SPARC_INS_BRLEZ, "brlez" },
+	{ SPARC_INS_BRLZ, "brlz" },
+	{ SPARC_INS_BRNZ, "brnz" },
+	{ SPARC_INS_BRZ, "brz" },
+	{ SPARC_INS_BSHUFFLE, "bshuffle" },
+	{ SPARC_INS_CALL, "call" },
+	{ SPARC_INS_CASX, "casx" },
+	{ SPARC_INS_CAS, "cas" },
+	{ SPARC_INS_CMASK16, "cmask16" },
+	{ SPARC_INS_CMASK32, "cmask32" },
+	{ SPARC_INS_CMASK8, "cmask8" },
+	{ SPARC_INS_CMP, "cmp" },
+	{ SPARC_INS_EDGE16, "edge16" },
+	{ SPARC_INS_EDGE16L, "edge16l" },
+	{ SPARC_INS_EDGE16LN, "edge16ln" },
+	{ SPARC_INS_EDGE16N, "edge16n" },
+	{ SPARC_INS_EDGE32, "edge32" },
+	{ SPARC_INS_EDGE32L, "edge32l" },
+	{ SPARC_INS_EDGE32LN, "edge32ln" },
+	{ SPARC_INS_EDGE32N, "edge32n" },
+	{ SPARC_INS_EDGE8, "edge8" },
+	{ SPARC_INS_EDGE8L, "edge8l" },
+	{ SPARC_INS_EDGE8LN, "edge8ln" },
+	{ SPARC_INS_EDGE8N, "edge8n" },
+	{ SPARC_INS_FABSD, "fabsd" },
+	{ SPARC_INS_FABSQ, "fabsq" },
+	{ SPARC_INS_FABSS, "fabss" },
+	{ SPARC_INS_FADDD, "faddd" },
+	{ SPARC_INS_FADDQ, "faddq" },
+	{ SPARC_INS_FADDS, "fadds" },
+	{ SPARC_INS_FALIGNDATA, "faligndata" },
+	{ SPARC_INS_FAND, "fand" },
+	{ SPARC_INS_FANDNOT1, "fandnot1" },
+	{ SPARC_INS_FANDNOT1S, "fandnot1s" },
+	{ SPARC_INS_FANDNOT2, "fandnot2" },
+	{ SPARC_INS_FANDNOT2S, "fandnot2s" },
+	{ SPARC_INS_FANDS, "fands" },
+	{ SPARC_INS_FCHKSM16, "fchksm16" },
+	{ SPARC_INS_FCMPD, "fcmpd" },
+	{ SPARC_INS_FCMPEQ16, "fcmpeq16" },
+	{ SPARC_INS_FCMPEQ32, "fcmpeq32" },
+	{ SPARC_INS_FCMPGT16, "fcmpgt16" },
+	{ SPARC_INS_FCMPGT32, "fcmpgt32" },
+	{ SPARC_INS_FCMPLE16, "fcmple16" },
+	{ SPARC_INS_FCMPLE32, "fcmple32" },
+	{ SPARC_INS_FCMPNE16, "fcmpne16" },
+	{ SPARC_INS_FCMPNE32, "fcmpne32" },
+	{ SPARC_INS_FCMPQ, "fcmpq" },
+	{ SPARC_INS_FCMPS, "fcmps" },
+	{ SPARC_INS_FDIVD, "fdivd" },
+	{ SPARC_INS_FDIVQ, "fdivq" },
+	{ SPARC_INS_FDIVS, "fdivs" },
+	{ SPARC_INS_FDMULQ, "fdmulq" },
+	{ SPARC_INS_FDTOI, "fdtoi" },
+	{ SPARC_INS_FDTOQ, "fdtoq" },
+	{ SPARC_INS_FDTOS, "fdtos" },
+	{ SPARC_INS_FDTOX, "fdtox" },
+	{ SPARC_INS_FEXPAND, "fexpand" },
+	{ SPARC_INS_FHADDD, "fhaddd" },
+	{ SPARC_INS_FHADDS, "fhadds" },
+	{ SPARC_INS_FHSUBD, "fhsubd" },
+	{ SPARC_INS_FHSUBS, "fhsubs" },
+	{ SPARC_INS_FITOD, "fitod" },
+	{ SPARC_INS_FITOQ, "fitoq" },
+	{ SPARC_INS_FITOS, "fitos" },
+	{ SPARC_INS_FLCMPD, "flcmpd" },
+	{ SPARC_INS_FLCMPS, "flcmps" },
+	{ SPARC_INS_FLUSHW, "flushw" },
+	{ SPARC_INS_FMEAN16, "fmean16" },
+	{ SPARC_INS_FMOVD, "fmovd" },
+	{ SPARC_INS_FMOVQ, "fmovq" },
+	{ SPARC_INS_FMOVRDGEZ, "fmovrdgez" },
+	{ SPARC_INS_FMOVRQGEZ, "fmovrqgez" },
+	{ SPARC_INS_FMOVRSGEZ, "fmovrsgez" },
+	{ SPARC_INS_FMOVRDGZ, "fmovrdgz" },
+	{ SPARC_INS_FMOVRQGZ, "fmovrqgz" },
+	{ SPARC_INS_FMOVRSGZ, "fmovrsgz" },
+	{ SPARC_INS_FMOVRDLEZ, "fmovrdlez" },
+	{ SPARC_INS_FMOVRQLEZ, "fmovrqlez" },
+	{ SPARC_INS_FMOVRSLEZ, "fmovrslez" },
+	{ SPARC_INS_FMOVRDLZ, "fmovrdlz" },
+	{ SPARC_INS_FMOVRQLZ, "fmovrqlz" },
+	{ SPARC_INS_FMOVRSLZ, "fmovrslz" },
+	{ SPARC_INS_FMOVRDNZ, "fmovrdnz" },
+	{ SPARC_INS_FMOVRQNZ, "fmovrqnz" },
+	{ SPARC_INS_FMOVRSNZ, "fmovrsnz" },
+	{ SPARC_INS_FMOVRDZ, "fmovrdz" },
+	{ SPARC_INS_FMOVRQZ, "fmovrqz" },
+	{ SPARC_INS_FMOVRSZ, "fmovrsz" },
+	{ SPARC_INS_FMOVS, "fmovs" },
+	{ SPARC_INS_FMUL8SUX16, "fmul8sux16" },
+	{ SPARC_INS_FMUL8ULX16, "fmul8ulx16" },
+	{ SPARC_INS_FMUL8X16, "fmul8x16" },
+	{ SPARC_INS_FMUL8X16AL, "fmul8x16al" },
+	{ SPARC_INS_FMUL8X16AU, "fmul8x16au" },
+	{ SPARC_INS_FMULD, "fmuld" },
+	{ SPARC_INS_FMULD8SUX16, "fmuld8sux16" },
+	{ SPARC_INS_FMULD8ULX16, "fmuld8ulx16" },
+	{ SPARC_INS_FMULQ, "fmulq" },
+	{ SPARC_INS_FMULS, "fmuls" },
+	{ SPARC_INS_FNADDD, "fnaddd" },
+	{ SPARC_INS_FNADDS, "fnadds" },
+	{ SPARC_INS_FNAND, "fnand" },
+	{ SPARC_INS_FNANDS, "fnands" },
+	{ SPARC_INS_FNEGD, "fnegd" },
+	{ SPARC_INS_FNEGQ, "fnegq" },
+	{ SPARC_INS_FNEGS, "fnegs" },
+	{ SPARC_INS_FNHADDD, "fnhaddd" },
+	{ SPARC_INS_FNHADDS, "fnhadds" },
+	{ SPARC_INS_FNOR, "fnor" },
+	{ SPARC_INS_FNORS, "fnors" },
+	{ SPARC_INS_FNOT1, "fnot1" },
+	{ SPARC_INS_FNOT1S, "fnot1s" },
+	{ SPARC_INS_FNOT2, "fnot2" },
+	{ SPARC_INS_FNOT2S, "fnot2s" },
+	{ SPARC_INS_FONE, "fone" },
+	{ SPARC_INS_FONES, "fones" },
+	{ SPARC_INS_FOR, "for" },
+	{ SPARC_INS_FORNOT1, "fornot1" },
+	{ SPARC_INS_FORNOT1S, "fornot1s" },
+	{ SPARC_INS_FORNOT2, "fornot2" },
+	{ SPARC_INS_FORNOT2S, "fornot2s" },
+	{ SPARC_INS_FORS, "fors" },
+	{ SPARC_INS_FPACK16, "fpack16" },
+	{ SPARC_INS_FPACK32, "fpack32" },
+	{ SPARC_INS_FPACKFIX, "fpackfix" },
+	{ SPARC_INS_FPADD16, "fpadd16" },
+	{ SPARC_INS_FPADD16S, "fpadd16s" },
+	{ SPARC_INS_FPADD32, "fpadd32" },
+	{ SPARC_INS_FPADD32S, "fpadd32s" },
+	{ SPARC_INS_FPADD64, "fpadd64" },
+	{ SPARC_INS_FPMERGE, "fpmerge" },
+	{ SPARC_INS_FPSUB16, "fpsub16" },
+	{ SPARC_INS_FPSUB16S, "fpsub16s" },
+	{ SPARC_INS_FPSUB32, "fpsub32" },
+	{ SPARC_INS_FPSUB32S, "fpsub32s" },
+	{ SPARC_INS_FQTOD, "fqtod" },
+	{ SPARC_INS_FQTOI, "fqtoi" },
+	{ SPARC_INS_FQTOS, "fqtos" },
+	{ SPARC_INS_FQTOX, "fqtox" },
+	{ SPARC_INS_FSLAS16, "fslas16" },
+	{ SPARC_INS_FSLAS32, "fslas32" },
+	{ SPARC_INS_FSLL16, "fsll16" },
+	{ SPARC_INS_FSLL32, "fsll32" },
+	{ SPARC_INS_FSMULD, "fsmuld" },
+	{ SPARC_INS_FSQRTD, "fsqrtd" },
+	{ SPARC_INS_FSQRTQ, "fsqrtq" },
+	{ SPARC_INS_FSQRTS, "fsqrts" },
+	{ SPARC_INS_FSRA16, "fsra16" },
+	{ SPARC_INS_FSRA32, "fsra32" },
+	{ SPARC_INS_FSRC1, "fsrc1" },
+	{ SPARC_INS_FSRC1S, "fsrc1s" },
+	{ SPARC_INS_FSRC2, "fsrc2" },
+	{ SPARC_INS_FSRC2S, "fsrc2s" },
+	{ SPARC_INS_FSRL16, "fsrl16" },
+	{ SPARC_INS_FSRL32, "fsrl32" },
+	{ SPARC_INS_FSTOD, "fstod" },
+	{ SPARC_INS_FSTOI, "fstoi" },
+	{ SPARC_INS_FSTOQ, "fstoq" },
+	{ SPARC_INS_FSTOX, "fstox" },
+	{ SPARC_INS_FSUBD, "fsubd" },
+	{ SPARC_INS_FSUBQ, "fsubq" },
+	{ SPARC_INS_FSUBS, "fsubs" },
+	{ SPARC_INS_FXNOR, "fxnor" },
+	{ SPARC_INS_FXNORS, "fxnors" },
+	{ SPARC_INS_FXOR, "fxor" },
+	{ SPARC_INS_FXORS, "fxors" },
+	{ SPARC_INS_FXTOD, "fxtod" },
+	{ SPARC_INS_FXTOQ, "fxtoq" },
+	{ SPARC_INS_FXTOS, "fxtos" },
+	{ SPARC_INS_FZERO, "fzero" },
+	{ SPARC_INS_FZEROS, "fzeros" },
+	{ SPARC_INS_JMPL, "jmpl" },
+	{ SPARC_INS_LDD, "ldd" },
+	{ SPARC_INS_LD, "ld" },
+	{ SPARC_INS_LDQ, "ldq" },
+	{ SPARC_INS_LDSB, "ldsb" },
+	{ SPARC_INS_LDSH, "ldsh" },
+	{ SPARC_INS_LDSW, "ldsw" },
+	{ SPARC_INS_LDUB, "ldub" },
+	{ SPARC_INS_LDUH, "lduh" },
+	{ SPARC_INS_LDX, "ldx" },
+	{ SPARC_INS_LZCNT, "lzcnt" },
+	{ SPARC_INS_MEMBAR, "membar" },
+	{ SPARC_INS_MOVDTOX, "movdtox" },
+	{ SPARC_INS_MOV, "mov" },
+	{ SPARC_INS_MOVRGEZ, "movrgez" },
+	{ SPARC_INS_MOVRGZ, "movrgz" },
+	{ SPARC_INS_MOVRLEZ, "movrlez" },
+	{ SPARC_INS_MOVRLZ, "movrlz" },
+	{ SPARC_INS_MOVRNZ, "movrnz" },
+	{ SPARC_INS_MOVRZ, "movrz" },
+	{ SPARC_INS_MOVSTOSW, "movstosw" },
+	{ SPARC_INS_MOVSTOUW, "movstouw" },
+	{ SPARC_INS_MULX, "mulx" },
+	{ SPARC_INS_NOP, "nop" },
+	{ SPARC_INS_ORCC, "orcc" },
+	{ SPARC_INS_ORNCC, "orncc" },
+	{ SPARC_INS_ORN, "orn" },
+	{ SPARC_INS_OR, "or" },
+	{ SPARC_INS_PDIST, "pdist" },
+	{ SPARC_INS_PDISTN, "pdistn" },
+	{ SPARC_INS_POPC, "popc" },
+	{ SPARC_INS_RD, "rd" },
+	{ SPARC_INS_RESTORE, "restore" },
+	{ SPARC_INS_RETT, "rett" },
+	{ SPARC_INS_SAVE, "save" },
+	{ SPARC_INS_SDIVCC, "sdivcc" },
+	{ SPARC_INS_SDIVX, "sdivx" },
+	{ SPARC_INS_SDIV, "sdiv" },
+	{ SPARC_INS_SETHI, "sethi" },
+	{ SPARC_INS_SHUTDOWN, "shutdown" },
+	{ SPARC_INS_SIAM, "siam" },
+	{ SPARC_INS_SLLX, "sllx" },
+	{ SPARC_INS_SLL, "sll" },
+	{ SPARC_INS_SMULCC, "smulcc" },
+	{ SPARC_INS_SMUL, "smul" },
+	{ SPARC_INS_SRAX, "srax" },
+	{ SPARC_INS_SRA, "sra" },
+	{ SPARC_INS_SRLX, "srlx" },
+	{ SPARC_INS_SRL, "srl" },
+	{ SPARC_INS_STBAR, "stbar" },
+	{ SPARC_INS_STB, "stb" },
+	{ SPARC_INS_STD, "std" },
+	{ SPARC_INS_ST, "st" },
+	{ SPARC_INS_STH, "sth" },
+	{ SPARC_INS_STQ, "stq" },
+	{ SPARC_INS_STX, "stx" },
+	{ SPARC_INS_SUBCC, "subcc" },
+	{ SPARC_INS_SUBX, "subx" },
+	{ SPARC_INS_SUBXCC, "subxcc" },
+	{ SPARC_INS_SUB, "sub" },
+	{ SPARC_INS_SWAP, "swap" },
+	{ SPARC_INS_TA, "ta" },
+	{ SPARC_INS_TADDCCTV, "taddcctv" },
+	{ SPARC_INS_TADDCC, "taddcc" },
+	{ SPARC_INS_T, "t" },
+	{ SPARC_INS_TSUBCCTV, "tsubcctv" },
+	{ SPARC_INS_TSUBCC, "tsubcc" },
+	{ SPARC_INS_UDIVCC, "udivcc" },
+	{ SPARC_INS_UDIVX, "udivx" },
+	{ SPARC_INS_UDIV, "udiv" },
+	{ SPARC_INS_UMULCC, "umulcc" },
+	{ SPARC_INS_UMULXHI, "umulxhi" },
+	{ SPARC_INS_UMUL, "umul" },
+	{ SPARC_INS_UNIMP, "unimp" },
+	{ SPARC_INS_FCMPED, "fcmped" },
+	{ SPARC_INS_FCMPEQ, "fcmpeq" },
+	{ SPARC_INS_FCMPES, "fcmpes" },
+	{ SPARC_INS_WR, "wr" },
+	{ SPARC_INS_XMULX, "xmulx" },
+	{ SPARC_INS_XMULXHI, "xmulxhi" },
+	{ SPARC_INS_XNORCC, "xnorcc" },
+	{ SPARC_INS_XNOR, "xnor" },
+	{ SPARC_INS_XORCC, "xorcc" },
+	{ SPARC_INS_XOR, "xor" },
+};
+
+// special alias insn
+static name_map alias_insn_names[] = {
+	{ 0, NULL }
+};
+#endif
+
+const char *Sparc_insn_name(csh handle, unsigned int id)
+{
+#ifndef CAPSTONE_DIET
+	unsigned int i;
+
+	if (id >= SPARC_INS_MAX)
+		return NULL;
+
+	// handle special alias first
+	for (i = 0; i < ARR_SIZE(alias_insn_names); i++) {
+		if (alias_insn_names[i].id == id)
+			return alias_insn_names[i].name;
+	}
+
+	return insn_name_maps[id].name;
+#else
+	return NULL;
+#endif
+}
+
+// map internal raw register to 'public' register
+sparc_reg Sparc_map_register(unsigned int r)
+{
+	static unsigned int map[] = { 0,
+		SPARC_REG_ICC, SPARC_REG_Y, SPARC_REG_F0, SPARC_REG_F2, SPARC_REG_F4,
+		SPARC_REG_F6, SPARC_REG_F8, SPARC_REG_F10, SPARC_REG_F12, SPARC_REG_F14,
+		SPARC_REG_F16, SPARC_REG_F18, SPARC_REG_F20, SPARC_REG_F22, SPARC_REG_F24,
+		SPARC_REG_F26, SPARC_REG_F28, SPARC_REG_F30, SPARC_REG_F32, SPARC_REG_F34,
+		SPARC_REG_F36, SPARC_REG_F38, SPARC_REG_F40, SPARC_REG_F42, SPARC_REG_F44,
+		SPARC_REG_F46, SPARC_REG_F48, SPARC_REG_F50, SPARC_REG_F52, SPARC_REG_F54,
+		SPARC_REG_F56, SPARC_REG_F58, SPARC_REG_F60, SPARC_REG_F62, SPARC_REG_F0,
+		SPARC_REG_F1, SPARC_REG_F2, SPARC_REG_F3, SPARC_REG_F4, SPARC_REG_F5,
+		SPARC_REG_F6, SPARC_REG_F7, SPARC_REG_F8, SPARC_REG_F9, SPARC_REG_F10,
+		SPARC_REG_F11, SPARC_REG_F12, SPARC_REG_F13, SPARC_REG_F14, SPARC_REG_F15,
+		SPARC_REG_F16, SPARC_REG_F17, SPARC_REG_F18, SPARC_REG_F19, SPARC_REG_F20,
+		SPARC_REG_F21, SPARC_REG_F22, SPARC_REG_F23, SPARC_REG_F24, SPARC_REG_F25,
+		SPARC_REG_F26, SPARC_REG_F27, SPARC_REG_F28, SPARC_REG_F29, SPARC_REG_F30,
+		SPARC_REG_F31, SPARC_REG_FCC0, SPARC_REG_FCC1, SPARC_REG_FCC2, SPARC_REG_FCC3,
+		SPARC_REG_G0, SPARC_REG_G1, SPARC_REG_G2, SPARC_REG_G3, SPARC_REG_G4,
+		SPARC_REG_G5, SPARC_REG_G6, SPARC_REG_G7, SPARC_REG_I0, SPARC_REG_I1,
+		SPARC_REG_I2, SPARC_REG_I3, SPARC_REG_I4, SPARC_REG_I5, SPARC_REG_FP,
+		SPARC_REG_I7, SPARC_REG_L0, SPARC_REG_L1, SPARC_REG_L2, SPARC_REG_L3,
+		SPARC_REG_L4, SPARC_REG_L5, SPARC_REG_L6, SPARC_REG_L7, SPARC_REG_O0,
+		SPARC_REG_O1, SPARC_REG_O2, SPARC_REG_O3, SPARC_REG_O4, SPARC_REG_O5,
+		SPARC_REG_SP, SPARC_REG_O7, SPARC_REG_F0, SPARC_REG_F4, SPARC_REG_F8,
+		SPARC_REG_F12, SPARC_REG_F16, SPARC_REG_F20, SPARC_REG_F24, SPARC_REG_F28,
+		SPARC_REG_F32, SPARC_REG_F36, SPARC_REG_F40, SPARC_REG_F44, SPARC_REG_F48,
+		SPARC_REG_F52, SPARC_REG_F56, SPARC_REG_F60,
+	};
+
+	if (r < ARR_SIZE(map))
+		return map[r];
+
+	// cannot find this register
+	return 0;
+}
diff --git a/arch/Sparc/SparcMapping.h b/arch/Sparc/SparcMapping.h
new file mode 100644
index 0000000..3de9335
--- /dev/null
+++ b/arch/Sparc/SparcMapping.h
@@ -0,0 +1,22 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SPARC_MAP_H
+#define CS_SPARC_MAP_H
+
+#include "../../include/capstone.h"
+#include "../../include/sparc.h"
+
+// return name of regiser in friendly string
+const char *Sparc_reg_name(csh handle, unsigned int reg);
+
+// given internal insn id, return public instruction info
+void Sparc_get_insn_id(cs_struct *h, cs_insn *insn, unsigned int id);
+
+const char *Sparc_insn_name(csh handle, unsigned int id);
+
+// map internal raw register to 'public' register
+sparc_reg Sparc_map_register(unsigned int r);
+
+#endif
+
diff --git a/arch/Sparc/SparcModule.c b/arch/Sparc/SparcModule.c
new file mode 100644
index 0000000..e9cae3c
--- /dev/null
+++ b/arch/Sparc/SparcModule.c
@@ -0,0 +1,54 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include "../../utils.h"
+#include "../../MCRegisterInfo.h"
+#include "SparcDisassembler.h"
+#include "SparcInstPrinter.h"
+#include "SparcMapping.h"
+
+static cs_err init(cs_struct *ud)
+{
+	MCRegisterInfo *mri;
+
+	// verify if requested mode is valid
+	if (ud->mode & ~(CS_MODE_BIG_ENDIAN | CS_MODE_V9))
+		return CS_ERR_MODE;
+
+	mri = cs_mem_malloc(sizeof(*mri));
+
+	Sparc_init(mri);
+	ud->printer = Sparc_printInst;
+	ud->printer_info = mri;
+	ud->getinsn_info = mri;
+	ud->disasm = Sparc_getInstruction;
+	ud->post_printer = Sparc_post_printer;
+
+	ud->reg_name = Sparc_reg_name;
+	ud->insn_id = Sparc_get_insn_id;
+	ud->insn_name = Sparc_insn_name;
+
+	return CS_ERR_OK;
+}
+
+static cs_err option(cs_struct *handle, cs_opt_type type, size_t value)
+{
+	if (type == CS_OPT_SYNTAX)
+		handle->syntax = value;
+
+	return CS_ERR_OK;
+}
+
+static void destroy(cs_struct *handle)
+{
+}
+
+void Sparc_enable(void)
+{
+	arch_init[CS_ARCH_SPARC] = init;
+	arch_option[CS_ARCH_SPARC] = option;
+	arch_destroy[CS_ARCH_SPARC] = destroy;
+
+	// support this arch
+	all_arch |= (1 << CS_ARCH_SPARC);
+}
diff --git a/arch/SystemZ/SystemZDisassembler.c b/arch/SystemZ/SystemZDisassembler.c
new file mode 100644
index 0000000..af01f74
--- /dev/null
+++ b/arch/SystemZ/SystemZDisassembler.c
@@ -0,0 +1,359 @@
+//===------ SystemZDisassembler.cpp - Disassembler for PowerPC ------*- C++ -*-===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>	// DEBUG
+#include <stdlib.h>
+#include <string.h>
+
+#include "../../cs_priv.h"
+
+#include "../../SubtargetFeature.h"
+#include "../../MCInst.h"
+#include "../../MCInstrDesc.h"
+#include "../../MCFixedLenDisassembler.h"
+#include "../../MCRegisterInfo.h"
+#include "../../MCDisassembler.h"
+#include "../../MathExtras.h"
+
+#include "SystemZMCTargetDesc.h"
+
+static uint64_t getFeatureBits(int mode)
+{
+	// support everything
+	return (uint64_t)-1;
+}
+
+static DecodeStatus decodeRegisterClass(MCInst *Inst, uint64_t RegNo, const unsigned *Regs)
+{
+	//assert(RegNo < 16 && "Invalid register");
+	RegNo = Regs[RegNo];
+	if (RegNo == 0)
+		return MCDisassembler_Fail;
+
+	MCInst_addOperand(Inst, MCOperand_CreateReg(RegNo));
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus DecodeGR32BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_GR32Regs);
+}
+
+static DecodeStatus DecodeGRH32BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_GRH32Regs);
+}
+
+static DecodeStatus DecodeGR64BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_GR64Regs);
+}
+
+static DecodeStatus DecodeGR128BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_GR128Regs);
+}
+
+static DecodeStatus DecodeADDR64BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_GR64Regs);
+}
+
+static DecodeStatus DecodeFP32BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder) 
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_FP32Regs);
+}
+
+static DecodeStatus DecodeFP64BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_FP64Regs);
+}
+
+static DecodeStatus DecodeFP128BitRegisterClass(MCInst *Inst, uint64_t RegNo,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeRegisterClass(Inst, RegNo, SystemZMC_FP128Regs);
+}
+
+static DecodeStatus decodeUImmOperand(MCInst *Inst, uint64_t Imm)
+{
+	//assert(isUInt<N>(Imm) && "Invalid immediate");
+	MCInst_addOperand(Inst, MCOperand_CreateImm(Imm));
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeSImmOperand(MCInst *Inst, uint64_t Imm, unsigned N)
+{
+	//assert(isUInt<N>(Imm) && "Invalid immediate");
+	MCInst_addOperand(Inst, MCOperand_CreateImm(SignExtend64(Imm, N)));
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeAccessRegOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeUImmOperand(Inst, Imm);
+}
+
+static DecodeStatus decodeU4ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeUImmOperand(Inst, Imm);
+}
+
+static DecodeStatus decodeU6ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeUImmOperand(Inst, Imm);
+}
+
+static DecodeStatus decodeU8ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeUImmOperand(Inst, Imm);
+}
+
+static DecodeStatus decodeU16ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeUImmOperand(Inst, Imm);
+}
+
+static DecodeStatus decodeU32ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeUImmOperand(Inst, Imm);
+}
+
+static DecodeStatus decodeS8ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeSImmOperand(Inst, Imm, 8);
+}
+
+static DecodeStatus decodeS16ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder) 
+{
+	return decodeSImmOperand(Inst, Imm, 16);
+}
+
+static DecodeStatus decodeS32ImmOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeSImmOperand(Inst, Imm, 32);
+}
+
+static DecodeStatus decodePCDBLOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, unsigned N)
+{
+	//assert(isUInt<N>(Imm) && "Invalid PC-relative offset");
+	MCInst_addOperand(Inst, MCOperand_CreateImm(SignExtend64(Imm, N) * 2 + Address));
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodePC16DBLOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address, const void *Decoder)
+{
+	return decodePCDBLOperand(Inst, Imm, Address, 16);
+}
+
+static DecodeStatus decodePC32DBLOperand(MCInst *Inst, uint64_t Imm,
+		uint64_t Address,
+		const void *Decoder)
+{
+	return decodePCDBLOperand(Inst, Imm, Address, 32);
+}
+
+static DecodeStatus decodeBDAddr12Operand(MCInst *Inst, uint64_t Field,
+		const unsigned *Regs)
+{
+	uint64_t Base = Field >> 12;
+	uint64_t Disp = Field & 0xfff;
+	//assert(Base < 16 && "Invalid BDAddr12");
+
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Base == 0 ? 0 : Regs[Base]));
+	MCInst_addOperand(Inst, MCOperand_CreateImm(Disp));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeBDAddr20Operand(MCInst *Inst, uint64_t Field,
+		const unsigned *Regs)
+{
+	uint64_t Base = Field >> 20;
+	uint64_t Disp = ((Field << 12) & 0xff000) | ((Field >> 8) & 0xfff);
+	//assert(Base < 16 && "Invalid BDAddr20");
+
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Base == 0 ? 0 : Regs[Base]));
+	MCInst_addOperand(Inst, MCOperand_CreateImm(SignExtend64(Disp, 20)));
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeBDXAddr12Operand(MCInst *Inst, uint64_t Field,
+		const unsigned *Regs)
+{
+	uint64_t Index = Field >> 16;
+	uint64_t Base = (Field >> 12) & 0xf;
+	uint64_t Disp = Field & 0xfff;
+
+	//assert(Index < 16 && "Invalid BDXAddr12");
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Base == 0 ? 0 : Regs[Base]));
+	MCInst_addOperand(Inst, MCOperand_CreateImm(Disp));
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Index == 0 ? 0 : Regs[Index]));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeBDXAddr20Operand(MCInst *Inst, uint64_t Field,
+		const unsigned *Regs)
+{
+	uint64_t Index = Field >> 24;
+	uint64_t Base = (Field >> 20) & 0xf;
+	uint64_t Disp = ((Field & 0xfff00) >> 8) | ((Field & 0xff) << 12);
+
+	//assert(Index < 16 && "Invalid BDXAddr20");
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Base == 0 ? 0 : Regs[Base]));
+	MCInst_addOperand(Inst, MCOperand_CreateImm(SignExtend64(Disp, 20)));
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Index == 0 ? 0 : Regs[Index]));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeBDLAddr12Len8Operand(MCInst *Inst, uint64_t Field,
+		const unsigned *Regs)
+{
+	uint64_t Length = Field >> 16;
+	uint64_t Base = (Field >> 12) & 0xf;
+	uint64_t Disp = Field & 0xfff;
+	//assert(Length < 256 && "Invalid BDLAddr12Len8");
+
+	MCInst_addOperand(Inst, MCOperand_CreateReg(Base == 0 ? 0 : Regs[Base]));
+	MCInst_addOperand(Inst, MCOperand_CreateImm(Disp));
+	MCInst_addOperand(Inst, MCOperand_CreateImm(Length + 1));
+
+	return MCDisassembler_Success;
+}
+
+static DecodeStatus decodeBDAddr32Disp12Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDAddr12Operand(Inst, Field, SystemZMC_GR32Regs);
+}
+
+static DecodeStatus decodeBDAddr32Disp20Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDAddr20Operand(Inst, Field, SystemZMC_GR32Regs);
+}
+
+static DecodeStatus decodeBDAddr64Disp12Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDAddr12Operand(Inst, Field, SystemZMC_GR64Regs);
+}
+
+static DecodeStatus decodeBDAddr64Disp20Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDAddr20Operand(Inst, Field, SystemZMC_GR64Regs);
+}
+
+static DecodeStatus decodeBDXAddr64Disp12Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDXAddr12Operand(Inst, Field, SystemZMC_GR64Regs);
+}
+
+static DecodeStatus decodeBDXAddr64Disp20Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDXAddr20Operand(Inst, Field, SystemZMC_GR64Regs);
+}
+
+static DecodeStatus decodeBDLAddr64Disp12Len8Operand(MCInst *Inst, uint64_t Field,
+		uint64_t Address, const void *Decoder)
+{
+	return decodeBDLAddr12Len8Operand(Inst, Field, SystemZMC_GR64Regs);
+}
+
+#define GET_SUBTARGETINFO_ENUM
+#include "SystemZGenSubtargetInfo.inc"
+#include "SystemZGenDisassemblerTables.inc"
+bool SystemZ_getInstruction(csh ud, unsigned char *code, size_t code_len, MCInst *MI,
+		uint16_t *size, uint64_t address, void *info)
+{
+	uint64_t Inst;
+	uint8_t Bytes[6];
+	uint8_t *Table;
+	uint16_t I; 
+
+	// The top 2 bits of the first byte specify the size.
+	if (*code < 0x40) {
+		*size = 2;
+		Table = DecoderTable16;
+	} else if (*code < 0xc0) {
+		*size = 4;
+		Table = DecoderTable32;
+	} else {
+		*size = 6;
+		Table = DecoderTable48;
+	}
+
+	if (code_len < *size)
+		// short of input data
+		return MCDisassembler_Fail;
+
+	memcpy(Bytes, code, *size);
+
+	// Construct the instruction.
+	Inst = 0;
+	for (I = 0; I < *size; ++I)
+		Inst = (Inst << 8) | Bytes[I];
+
+	return decodeInstruction(Table, MI, Inst, address, info, 0);
+}
+
+#define GET_REGINFO_ENUM
+#define GET_REGINFO_MC_DESC
+#include "SystemZGenRegisterInfo.inc"
+void SystemZ_init(MCRegisterInfo *MRI)
+{
+	/*
+	InitMCRegisterInfo(SystemZRegDesc, 98, RA, PC,
+			SystemZMCRegisterClasses, 12,
+			SystemZRegUnitRoots,
+			49,
+			SystemZRegDiffLists,
+			SystemZRegStrings,
+			SystemZSubRegIdxLists,
+			7,
+			SystemZSubRegIdxRanges,
+			SystemZRegEncodingTable);
+	*/
+
+	MCRegisterInfo_InitMCRegisterInfo(MRI, SystemZRegDesc, 98,
+			0, 0,
+			SystemZMCRegisterClasses, 12,
+			0, 0,
+			SystemZRegDiffLists,
+			0,
+			SystemZSubRegIdxLists, 7,
+			0);
+}
+
diff --git a/arch/SystemZ/SystemZDisassembler.h b/arch/SystemZ/SystemZDisassembler.h
new file mode 100644
index 0000000..e77a738
--- /dev/null
+++ b/arch/SystemZ/SystemZDisassembler.h
@@ -0,0 +1,19 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SYSZDISASSEMBLER_H
+#define CS_SYSZDISASSEMBLER_H
+
+#include <stdint.h>
+
+#include "../../include/capstone.h"
+#include "../../MCRegisterInfo.h"
+#include "../../MCInst.h"
+
+void SystemZ_init(MCRegisterInfo *MRI);
+
+bool SystemZ_getInstruction(csh ud, const uint8_t *code, size_t code_len,
+		MCInst *instr, uint16_t *size, uint64_t address, void *info);
+
+#endif
+
diff --git a/arch/SystemZ/SystemZGenAsmWriter.inc b/arch/SystemZ/SystemZGenAsmWriter.inc
new file mode 100644
index 0000000..a9315b4
--- /dev/null
+++ b/arch/SystemZ/SystemZGenAsmWriter.inc
@@ -0,0 +1,1962 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Assembly Writer Source Fragment                                             *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>	// debug
+#include <inttypes.h>
+
+
+/// printInstruction - This method is automatically generated by tablegen
+/// from the instruction set description.
+static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
+{
+  static const uint32_t OpInfo[] = {
+    0U,	// PHI
+    0U,	// INLINEASM
+    0U,	// CFI_INSTRUCTION
+    0U,	// EH_LABEL
+    0U,	// GC_LABEL
+    0U,	// KILL
+    0U,	// EXTRACT_SUBREG
+    0U,	// INSERT_SUBREG
+    0U,	// IMPLICIT_DEF
+    0U,	// SUBREG_TO_REG
+    0U,	// COPY_TO_REGCLASS
+    3922U,	// DBG_VALUE
+    0U,	// REG_SEQUENCE
+    0U,	// COPY
+    3915U,	// BUNDLE
+    3932U,	// LIFETIME_START
+    3902U,	// LIFETIME_END
+    0U,	// STACKMAP
+    0U,	// PATCHPOINT
+    4099U,	// A
+    4136U,	// ADB
+    1055535U,	// ADBR
+    0U,	// ADJCALLSTACKDOWN
+    0U,	// ADJCALLSTACKUP
+    0U,	// ADJDYNALLOC
+    4181U,	// AEB
+    1055654U,	// AEBR
+    0U,	// AEXT128_64
+    2103147U,	// AFI
+    0U,	// AFIMux
+    5171U,	// AG
+    5044U,	// AGF
+    2103157U,	// AGFI
+    1056064U,	// AGFR
+    3151807U,	// AGHI
+    37755006U,	// AGHIK
+    1056140U,	// AGR
+    171972775U,	// AGRK
+    75783U,	// AGSI
+    5373U,	// AH
+    3151797U,	// AHI
+    37755000U,	// AHIK
+    0U,	// AHIMux
+    0U,	// AHIMuxK
+    7893U,	// AHY
+    2102639U,	// AIH
+    6389U,	// AL
+    4247U,	// ALC
+    5215U,	// ALCG
+    1056152U,	// ALCGR
+    1055979U,	// ALCR
+    5248925U,	// ALFI
+    5248U,	// ALG
+    5054U,	// ALGF
+    5248897U,	// ALGFI
+    1056077U,	// ALGFR
+    37755013U,	// ALGHSIK
+    1056172U,	// ALGR
+    171972781U,	// ALGRK
+    37755022U,	// ALHSIK
+    1056288U,	// ALR
+    171972819U,	// ALRK
+    7951U,	// ALY
+    1055530U,	// AR
+    171972770U,	// ARK
+    75778U,	// ASI
+    0U,	// ATOMIC_CMP_SWAPW
+    0U,	// ATOMIC_LOADW_AFI
+    0U,	// ATOMIC_LOADW_AR
+    0U,	// ATOMIC_LOADW_MAX
+    0U,	// ATOMIC_LOADW_MIN
+    0U,	// ATOMIC_LOADW_NILH
+    0U,	// ATOMIC_LOADW_NILHi
+    0U,	// ATOMIC_LOADW_NR
+    0U,	// ATOMIC_LOADW_NRi
+    0U,	// ATOMIC_LOADW_OILH
+    0U,	// ATOMIC_LOADW_OR
+    0U,	// ATOMIC_LOADW_SR
+    0U,	// ATOMIC_LOADW_UMAX
+    0U,	// ATOMIC_LOADW_UMIN
+    0U,	// ATOMIC_LOADW_XILF
+    0U,	// ATOMIC_LOADW_XR
+    0U,	// ATOMIC_LOAD_AFI
+    0U,	// ATOMIC_LOAD_AGFI
+    0U,	// ATOMIC_LOAD_AGHI
+    0U,	// ATOMIC_LOAD_AGR
+    0U,	// ATOMIC_LOAD_AHI
+    0U,	// ATOMIC_LOAD_AR
+    0U,	// ATOMIC_LOAD_MAX_32
+    0U,	// ATOMIC_LOAD_MAX_64
+    0U,	// ATOMIC_LOAD_MIN_32
+    0U,	// ATOMIC_LOAD_MIN_64
+    0U,	// ATOMIC_LOAD_NGR
+    0U,	// ATOMIC_LOAD_NGRi
+    0U,	// ATOMIC_LOAD_NIHF64
+    0U,	// ATOMIC_LOAD_NIHF64i
+    0U,	// ATOMIC_LOAD_NIHH64
+    0U,	// ATOMIC_LOAD_NIHH64i
+    0U,	// ATOMIC_LOAD_NIHL64
+    0U,	// ATOMIC_LOAD_NIHL64i
+    0U,	// ATOMIC_LOAD_NILF
+    0U,	// ATOMIC_LOAD_NILF64
+    0U,	// ATOMIC_LOAD_NILF64i
+    0U,	// ATOMIC_LOAD_NILFi
+    0U,	// ATOMIC_LOAD_NILH
+    0U,	// ATOMIC_LOAD_NILH64
+    0U,	// ATOMIC_LOAD_NILH64i
+    0U,	// ATOMIC_LOAD_NILHi
+    0U,	// ATOMIC_LOAD_NILL
+    0U,	// ATOMIC_LOAD_NILL64
+    0U,	// ATOMIC_LOAD_NILL64i
+    0U,	// ATOMIC_LOAD_NILLi
+    0U,	// ATOMIC_LOAD_NR
+    0U,	// ATOMIC_LOAD_NRi
+    0U,	// ATOMIC_LOAD_OGR
+    0U,	// ATOMIC_LOAD_OIHF64
+    0U,	// ATOMIC_LOAD_OIHH64
+    0U,	// ATOMIC_LOAD_OIHL64
+    0U,	// ATOMIC_LOAD_OILF
+    0U,	// ATOMIC_LOAD_OILF64
+    0U,	// ATOMIC_LOAD_OILH
+    0U,	// ATOMIC_LOAD_OILH64
+    0U,	// ATOMIC_LOAD_OILL
+    0U,	// ATOMIC_LOAD_OILL64
+    0U,	// ATOMIC_LOAD_OR
+    0U,	// ATOMIC_LOAD_SGR
+    0U,	// ATOMIC_LOAD_SR
+    0U,	// ATOMIC_LOAD_UMAX_32
+    0U,	// ATOMIC_LOAD_UMAX_64
+    0U,	// ATOMIC_LOAD_UMIN_32
+    0U,	// ATOMIC_LOAD_UMIN_64
+    0U,	// ATOMIC_LOAD_XGR
+    0U,	// ATOMIC_LOAD_XIHF64
+    0U,	// ATOMIC_LOAD_XILF
+    0U,	// ATOMIC_LOAD_XILF64
+    0U,	// ATOMIC_LOAD_XR
+    0U,	// ATOMIC_SWAPW
+    0U,	// ATOMIC_SWAP_32
+    0U,	// ATOMIC_SWAP_64
+    1055863U,	// AXBR
+    7856U,	// AY
+    6438111U,	// AsmBCR
+    209077U,	// AsmBRC
+    211206U,	// AsmBRCL
+    74455111U,	// AsmCGIJ
+    306190431U,	// AsmCGRJ
+    74455106U,	// AsmCIJ
+    75503693U,	// AsmCLGIJ
+    306190437U,	// AsmCLGRJ
+    75503700U,	// AsmCLIJ
+    306190444U,	// AsmCLRJ
+    306190426U,	// AsmCRJ
+    269589U,	// AsmEBR
+    16886U,	// AsmEJ
+    16626U,	// AsmEJG
+    9441494U,	// AsmELOC
+    9441507U,	// AsmELOCG
+    1053607U,	// AsmELOCGR
+    1053600U,	// AsmELOCR
+    10490076U,	// AsmESTOC
+    10490090U,	// AsmESTOCG
+    269819U,	// AsmHBR
+    269594U,	// AsmHEBR
+    16671U,	// AsmHEJ
+    16663U,	// AsmHEJG
+    9441527U,	// AsmHELOC
+    9441542U,	// AsmHELOCG
+    1053163U,	// AsmHELOCGR
+    1053155U,	// AsmHELOCR
+    10490110U,	// AsmHESTOC
+    10490126U,	// AsmHESTOCG
+    17793U,	// AsmHJ
+    17721U,	// AsmHJG
+    9442572U,	// AsmHLOC
+    9442602U,	// AsmHLOCG
+    1054554U,	// AsmHLOCGR
+    1054547U,	// AsmHLOCR
+    10491154U,	// AsmHSTOC
+    10491185U,	// AsmHSTOCG
+    108009076U,	// AsmJEAltCGI
+    440407704U,	// AsmJEAltCGR
+    108009068U,	// AsmJEAltCI
+    109057661U,	// AsmJEAltCLGI
+    440407713U,	// AsmJEAltCLGR
+    109057671U,	// AsmJEAltCLI
+    440407723U,	// AsmJEAltCLR
+    440407696U,	// AsmJEAltCR
+    108007930U,	// AsmJECGI
+    440406550U,	// AsmJECGR
+    108007924U,	// AsmJECI
+    109056513U,	// AsmJECLGI
+    440406557U,	// AsmJECLGR
+    109056521U,	// AsmJECLI
+    440406565U,	// AsmJECLR
+    440406544U,	// AsmJECR
+    108008133U,	// AsmJHAltCGI
+    440406761U,	// AsmJHAltCGR
+    108008125U,	// AsmJHAltCI
+    109056718U,	// AsmJHAltCLGI
+    440406770U,	// AsmJHAltCLGR
+    109056728U,	// AsmJHAltCLI
+    440406780U,	// AsmJHAltCLR
+    440406753U,	// AsmJHAltCR
+    108008837U,	// AsmJHCGI
+    440407457U,	// AsmJHCGR
+    108008831U,	// AsmJHCI
+    109057420U,	// AsmJHCLGI
+    440407464U,	// AsmJHCLGR
+    109057428U,	// AsmJHCLI
+    440407472U,	// AsmJHCLR
+    440407451U,	// AsmJHCR
+    108009937U,	// AsmJHEAltCGI
+    440408561U,	// AsmJHEAltCGR
+    108009930U,	// AsmJHEAltCI
+    109058521U,	// AsmJHEAltCLGI
+    440408569U,	// AsmJHEAltCLGR
+    109058530U,	// AsmJHEAltCLI
+    440408578U,	// AsmJHEAltCLR
+    440408554U,	// AsmJHEAltCR
+    108007716U,	// AsmJHECGI
+    440406340U,	// AsmJHECGR
+    108007709U,	// AsmJHECI
+    109056300U,	// AsmJHECLGI
+    440406348U,	// AsmJHECLGR
+    109056309U,	// AsmJHECLI
+    440406357U,	// AsmJHECLR
+    440406333U,	// AsmJHECR
+    108007824U,	// AsmJLAltCGI
+    440406452U,	// AsmJLAltCGR
+    108007816U,	// AsmJLAltCI
+    109056409U,	// AsmJLAltCLGI
+    440406461U,	// AsmJLAltCLGR
+    109056419U,	// AsmJLAltCLI
+    440406471U,	// AsmJLAltCLR
+    440406444U,	// AsmJLAltCR
+    108009801U,	// AsmJLCGI
+    440408421U,	// AsmJLCGR
+    108009795U,	// AsmJLCI
+    109058384U,	// AsmJLCLGI
+    440408428U,	// AsmJLCLGR
+    109058392U,	// AsmJLCLI
+    440408436U,	// AsmJLCLR
+    440408415U,	// AsmJLCR
+    108009225U,	// AsmJLEAltCGI
+    440407849U,	// AsmJLEAltCGR
+    108009218U,	// AsmJLEAltCI
+    109057809U,	// AsmJLEAltCLGI
+    440407857U,	// AsmJLEAltCLGR
+    109057818U,	// AsmJLEAltCLI
+    440407866U,	// AsmJLEAltCLR
+    440407842U,	// AsmJLEAltCR
+    108008025U,	// AsmJLECGI
+    440406649U,	// AsmJLECGR
+    108008018U,	// AsmJLECI
+    109056609U,	// AsmJLECLGI
+    440406657U,	// AsmJLECLGR
+    109056618U,	// AsmJLECLI
+    440406666U,	// AsmJLECLR
+    440406642U,	// AsmJLECR
+    108008278U,	// AsmJLHAltCGI
+    440406902U,	// AsmJLHAltCGR
+    108008271U,	// AsmJLHAltCI
+    109056862U,	// AsmJLHAltCLGI
+    440406910U,	// AsmJLHAltCLGR
+    109056871U,	// AsmJLHAltCLI
+    440406919U,	// AsmJLHAltCLR
+    440406895U,	// AsmJLHAltCR
+    108008957U,	// AsmJLHCGI
+    440407581U,	// AsmJLHCGR
+    108008950U,	// AsmJLHCI
+    109057541U,	// AsmJLHCLGI
+    440407589U,	// AsmJLHCLGR
+    109057550U,	// AsmJLHCLI
+    440407598U,	// AsmJLHCLR
+    440407574U,	// AsmJLHCR
+    269861U,	// AsmLBR
+    269607U,	// AsmLEBR
+    16980U,	// AsmLEJ
+    16972U,	// AsmLEJG
+    9441836U,	// AsmLELOC
+    9441851U,	// AsmLELOCG
+    1053472U,	// AsmLELOCGR
+    1053464U,	// AsmLELOCR
+    10490419U,	// AsmLESTOC
+    10490435U,	// AsmLESTOCG
+    269831U,	// AsmLHBR
+    17912U,	// AsmLHJ
+    17879U,	// AsmLHJG
+    9442743U,	// AsmLHLOC
+    9442758U,	// AsmLHLOCG
+    1054415U,	// AsmLHLOCGR
+    1054407U,	// AsmLHLOCR
+    10491326U,	// AsmLHSTOC
+    10491342U,	// AsmLHSTOCG
+    18757U,	// AsmLJ
+    18719U,	// AsmLJG
+    9443577U,	// AsmLLOC
+    9443600U,	// AsmLLOCG
+    1055302U,	// AsmLLOCGR
+    1055265U,	// AsmLLOCR
+    579866794U,	// AsmLOC
+    579867749U,	// AsmLOCG
+    705699231U,	// AsmLOCGR
+    705699063U,	// AsmLOCR
+    10492159U,	// AsmLSTOC
+    10492183U,	// AsmLSTOCG
+    269620U,	// AsmNEBR
+    17233U,	// AsmNEJ
+    17225U,	// AsmNEJG
+    9442089U,	// AsmNELOC
+    9442104U,	// AsmNELOCG
+    1053591U,	// AsmNELOCGR
+    1053583U,	// AsmNELOCR
+    10490672U,	// AsmNESTOC
+    10490688U,	// AsmNESTOCG
+    269850U,	// AsmNHBR
+    269600U,	// AsmNHEBR
+    16778U,	// AsmNHEJ
+    16769U,	// AsmNHEJG
+    9441629U,	// AsmNHELOC
+    9441646U,	// AsmNHELOCG
+    1053145U,	// AsmNHELOCGR
+    1053136U,	// AsmNHELOCR
+    10490213U,	// AsmNHESTOC
+    10490231U,	// AsmNHESTOCG
+    18180U,	// AsmNHJ
+    18172U,	// AsmNHJG
+    9443036U,	// AsmNHLOC
+    9443051U,	// AsmNHLOCG
+    1054538U,	// AsmNHLOCGR
+    1054530U,	// AsmNHLOCR
+    10491619U,	// AsmNHSTOC
+    10491635U,	// AsmNHSTOCG
+    269876U,	// AsmNLBR
+    269613U,	// AsmNLEBR
+    17087U,	// AsmNLEJ
+    17078U,	// AsmNLEJG
+    9441938U,	// AsmNLELOC
+    9441955U,	// AsmNLELOCG
+    1053454U,	// AsmNLELOCGR
+    1053445U,	// AsmNLELOCR
+    10490522U,	// AsmNLESTOC
+    10490540U,	// AsmNLESTOCG
+    269843U,	// AsmNLHBR
+    18030U,	// AsmNLHJ
+    18021U,	// AsmNLHJG
+    9442881U,	// AsmNLHLOC
+    9442898U,	// AsmNLHLOCG
+    1054397U,	// AsmNLHLOCGR
+    1054388U,	// AsmNLHLOCR
+    10491465U,	// AsmNLHSTOC
+    10491483U,	// AsmNLHSTOCG
+    18892U,	// AsmNLJ
+    18884U,	// AsmNLJG
+    9443748U,	// AsmNLLOC
+    9443763U,	// AsmNLLOCG
+    1055250U,	// AsmNLLOCGR
+    1055242U,	// AsmNLLOCR
+    10492331U,	// AsmNLSTOC
+    10492347U,	// AsmNLSTOCG
+    269897U,	// AsmNOBR
+    19204U,	// AsmNOJ
+    19198U,	// AsmNOJG
+    9444062U,	// AsmNOLOC
+    9444077U,	// AsmNOLOCG
+    1055505U,	// AsmNOLOCGR
+    1055497U,	// AsmNOLOCR
+    10492645U,	// AsmNOSTOC
+    10492661U,	// AsmNOSTOCG
+    269892U,	// AsmOBR
+    19162U,	// AsmOJ
+    19157U,	// AsmOJG
+    9444025U,	// AsmOLOC
+    9444038U,	// AsmOLOCG
+    1055521U,	// AsmOLOCGR
+    1055514U,	// AsmOLOCR
+    10492607U,	// AsmOSTOC
+    10492621U,	// AsmOSTOCG
+    715133103U,	// AsmSTOC
+    715134059U,	// AsmSTOCG
+    4202068U,	// BASR
+    269105U,	// BR
+    11542133U,	// BRAS
+    11541151U,	// BRASL
+    24452U,	// BRC
+    24447U,	// BRCL
+    12590723U,	// BRCT
+    12588249U,	// BRCTG
+    13635728U,	// C
+    13635629U,	// CDB
+    4201270U,	// CDBR
+    4201495U,	// CDFBR
+    4201540U,	// CDGBR
+    719330341U,	// CDLFBR
+    719330386U,	// CDLGBR
+    13635674U,	// CEB
+    4201389U,	// CEBR
+    4201502U,	// CEFBR
+    4201547U,	// CEGBR
+    719330349U,	// CELFBR
+    719330394U,	// CELGBR
+    14687049U,	// CFDBR
+    14687176U,	// CFEBR
+    15734640U,	// CFI
+    0U,	// CFIMux
+    14687378U,	// CFXBR
+    13636705U,	// CG
+    14687064U,	// CGDBR
+    14687191U,	// CGEBR
+    13636537U,	// CGF
+    15734651U,	// CGFI
+    4201799U,	// CGFR
+    11541039U,	// CGFRL
+    13636908U,	// CGH
+    16783301U,	// CGHI
+    11541090U,	// CGHRL
+    337947U,	// CGHSI
+    421766U,	// CGIJ
+    4201882U,	// CGR
+    17985434U,	// CGRJ
+    11541064U,	// CGRL
+    14687393U,	// CGXBR
+    13636872U,	// CH
+    13636584U,	// CHF
+    337962U,	// CHHSI
+    16783290U,	// CHI
+    11541084U,	// CHRL
+    337933U,	// CHSI
+    13639386U,	// CHY
+    15734132U,	// CIH
+    421762U,	// CIJ
+    13637883U,	// CL
+    28828U,	// CLC
+    0U,	// CLCLoop
+    0U,	// CLCSequence
+    719330128U,	// CLFDBR
+    719330255U,	// CLFEBR
+    469011U,	// CLFHSI
+    18880419U,	// CLFI
+    0U,	// CLFIMux
+    719330457U,	// CLFXBR
+    13636749U,	// CLG
+    719330143U,	// CLGDBR
+    719330270U,	// CLGEBR
+    13636548U,	// CLGF
+    18880392U,	// CLGFI
+    4201812U,	// CLGFR
+    11541046U,	// CLGFRL
+    11541097U,	// CLGHRL
+    469026U,	// CLGHSI
+    552843U,	// CLGIJ
+    4201906U,	// CLGR
+    17985439U,	// CLGRJ
+    11541070U,	// CLGRL
+    719330472U,	// CLGXBR
+    13636620U,	// CLHF
+    469041U,	// CLHHSI
+    11541113U,	// CLHRL
+    600053U,	// CLI
+    18879865U,	// CLIH
+    552849U,	// CLIJ
+    601844U,	// CLIY
+    0U,	// CLMux
+    4202026U,	// CLR
+    17985445U,	// CLRJ
+    11541134U,	// CLRL
+    4202125U,	// CLST
+    0U,	// CLSTLoop
+    13639444U,	// CLY
+    0U,	// CMux
+    171973896U,	// CPSDRdd
+    171973896U,	// CPSDRds
+    171973896U,	// CPSDRsd
+    171973896U,	// CPSDRss
+    4201696U,	// CR
+    17985430U,	// CRJ
+    11541027U,	// CRL
+    839917179U,	// CS
+    839914698U,	// CSG
+    839917355U,	// CSY
+    4201598U,	// CXBR
+    4201533U,	// CXFBR
+    4201578U,	// CXGBR
+    719330357U,	// CXLFBR
+    719330402U,	// CXLGBR
+    13639349U,	// CY
+    0U,	// CallBASR
+    0U,	// CallBR
+    0U,	// CallBRASL
+    0U,	// CallJG
+    0U,	// CondStore16
+    0U,	// CondStore16Inv
+    0U,	// CondStore16Mux
+    0U,	// CondStore16MuxInv
+    0U,	// CondStore32
+    0U,	// CondStore32Inv
+    0U,	// CondStore64
+    0U,	// CondStore64Inv
+    0U,	// CondStore8
+    0U,	// CondStore8Inv
+    0U,	// CondStore8Mux
+    0U,	// CondStore8MuxInv
+    0U,	// CondStoreF32
+    0U,	// CondStoreF32Inv
+    0U,	// CondStoreF64
+    0U,	// CondStoreF64Inv
+    4146U,	// DDB
+    1055548U,	// DDBR
+    4192U,	// DEB
+    1055668U,	// DEBR
+    6412U,	// DL
+    5266U,	// DLG
+    1056184U,	// DLGR
+    1056303U,	// DLR
+    5327U,	// DSG
+    5078U,	// DSGF
+    1056119U,	// DSGFR
+    1056221U,	// DSGR
+    1055877U,	// DXBR
+    19929897U,	// EAR
+    14687079U,	// FIDBR
+    719327242U,	// FIDBRA
+    14687206U,	// FIEBR
+    719327250U,	// FIEBRA
+    14687408U,	// FIXBR
+    719327258U,	// FIXBRA
+    4201936U,	// FLOGR
+    4243U,	// IC
+    4243U,	// IC32
+    7860U,	// IC32Y
+    7860U,	// ICY
+    0U,	// IIFMux
+    18879469U,	// IIHF
+    0U,	// IIHF64
+    20976964U,	// IIHH
+    0U,	// IIHH64
+    20977956U,	// IIHL
+    0U,	// IIHL64
+    0U,	// IIHMux
+    18879506U,	// IILF
+    0U,	// IILF64
+    20977117U,	// IILH
+    0U,	// IILH64
+    20978043U,	// IILL
+    0U,	// IILL64
+    0U,	// IILMux
+    268966U,	// IPM
+    18500U,	// J
+    17530U,	// JG
+    13637878U,	// L
+    0U,	// L128
+    13635590U,	// LA
+    977276929U,	// LAA
+    977278001U,	// LAAG
+    977279219U,	// LAAL
+    977278078U,	// LAALG
+    977279663U,	// LAN
+    977278142U,	// LANG
+    977279668U,	// LAO
+    977278148U,	// LAOG
+    11541019U,	// LARL
+    977280682U,	// LAX
+    977278199U,	// LAXG
+    13639343U,	// LAY
+    13635721U,	// LB
+    13636865U,	// LBH
+    0U,	// LBMux
+    4201586U,	// LBR
+    4201269U,	// LCDBR
+    4201388U,	// LCEBR
+    4201798U,	// LCGFR
+    4201881U,	// LCGR
+    4201708U,	// LCR
+    4201597U,	// LCXBR
+    13635789U,	// LD
+    13635679U,	// LDEB
+    4201395U,	// LDEBR
+    4201894U,	// LDGR
+    4201731U,	// LDR
+    4201604U,	// LDXBR
+    13639359U,	// LDY
+    13636143U,	// LE
+    4201282U,	// LEDBR
+    4201768U,	// LER
+    4201611U,	// LEXBR
+    13639370U,	// LEY
+    13636895U,	// LFH
+    13636737U,	// LG
+    13635715U,	// LGB
+    4201556U,	// LGBR
+    4201725U,	// LGDR
+    13636543U,	// LGF
+    15734658U,	// LGFI
+    4201806U,	// LGFR
+    11541047U,	// LGFRL
+    13636927U,	// LGH
+    16783307U,	// LGHI
+    4201985U,	// LGHR
+    11541098U,	// LGHRL
+    4201901U,	// LGR
+    11541071U,	// LGRL
+    13637050U,	// LH
+    13636958U,	// LHH
+    16783333U,	// LHI
+    0U,	// LHIMux
+    0U,	// LHMux
+    4201992U,	// LHR
+    11541114U,	// LHRL
+    13639391U,	// LHY
+    13635745U,	// LLC
+    13636870U,	// LLCH
+    0U,	// LLCMux
+    4201713U,	// LLCR
+    0U,	// LLCRMux
+    13635725U,	// LLGC
+    4201700U,	// LLGCR
+    13636554U,	// LLGF
+    4201819U,	// LLGFR
+    11541054U,	// LLGFRL
+    13636926U,	// LLGH
+    4201984U,	// LLGHR
+    11541105U,	// LLGHRL
+    13637174U,	// LLH
+    13636957U,	// LLHH
+    0U,	// LLHMux
+    4201997U,	// LLHR
+    11541120U,	// LLHRL
+    0U,	// LLHRMux
+    18879475U,	// LLIHF
+    22025546U,	// LLIHH
+    22026538U,	// LLIHL
+    18879512U,	// LLILF
+    22025699U,	// LLILH
+    22026625U,	// LLILL
+    977278131U,	// LMG
+    0U,	// LMux
+    4201332U,	// LNDBR
+    4201453U,	// LNEBR
+    4201833U,	// LNGFR
+    4201930U,	// LNGR
+    4202047U,	// LNR
+    4201661U,	// LNXBR
+    36715U,	// LOC
+    36724U,	// LOCG
+    40879U,	// LOCGR
+    40874U,	// LOCR
+    4201339U,	// LPDBR
+    4201460U,	// LPEBR
+    4201840U,	// LPGFR
+    4201943U,	// LPGR
+    4202063U,	// LPR
+    4201668U,	// LPXBR
+    4202017U,	// LR
+    11541135U,	// LRL
+    0U,	// LRMux
+    13639327U,	// LRV
+    13636842U,	// LRVG
+    4201967U,	// LRVGR
+    4202084U,	// LRVR
+    13639305U,	// LT
+    4201360U,	// LTDBR
+    4201360U,	// LTDBRCompare
+    4201481U,	// LTEBR
+    4201481U,	// LTEBRCompare
+    13636832U,	// LTG
+    13636578U,	// LTGF
+    4201861U,	// LTGFR
+    4201961U,	// LTGR
+    4202079U,	// LTR
+    4201688U,	// LTXBR
+    4201688U,	// LTXBRCompare
+    0U,	// LX
+    13635656U,	// LXDB
+    4201367U,	// LXDBR
+    13635709U,	// LXEB
+    4201488U,	// LXEBR
+    4202090U,	// LXR
+    13639440U,	// LY
+    269583U,	// LZDR
+    269626U,	// LZER
+    269935U,	// LZXR
+    1108348967U,	// MADB
+    1242569518U,	// MADBR
+    1108349012U,	// MAEB
+    1242569637U,	// MAEBR
+    4151U,	// MDB
+    1055598U,	// MDBR
+    4197U,	// MDEB
+    1055674U,	// MDEBR
+    4203U,	// MEEB
+    1055681U,	// MEEBR
+    3151825U,	// MGHI
+    5848U,	// MH
+    3151850U,	// MHI
+    7908U,	// MHY
+    5283U,	// MLG
+    1056190U,	// MLGR
+    7807U,	// MS
+    1108348994U,	// MSDB
+    1242569609U,	// MSDBR
+    1108349047U,	// MSEB
+    1242569730U,	// MSEBR
+    2103215U,	// MSFI
+    5332U,	// MSG
+    5084U,	// MSGF
+    2103190U,	// MSGFI
+    1056126U,	// MSGFR
+    1056227U,	// MSGR
+    1056346U,	// MSR
+    7984U,	// MSY
+    28863U,	// MVC
+    0U,	// MVCLoop
+    0U,	// MVCSequence
+    337879U,	// MVGHI
+    337886U,	// MVHHI
+    337903U,	// MVHI
+    600121U,	// MVI
+    601860U,	// MVIY
+    4202137U,	// MVST
+    0U,	// MVSTLoop
+    1055927U,	// MXBR
+    4174U,	// MXDB
+    1055646U,	// MXDBR
+    6833U,	// N
+    28838U,	// NC
+    0U,	// NCLoop
+    0U,	// NCSequence
+    5312U,	// NG
+    1056203U,	// NGR
+    171972795U,	// NGRK
+    600058U,	// NI
+    0U,	// NIFMux
+    5247994U,	// NIHF
+    0U,	// NIHF64
+    20976977U,	// NIHH
+    0U,	// NIHH64
+    20977969U,	// NIHL
+    0U,	// NIHL64
+    0U,	// NIHMux
+    5248031U,	// NILF
+    0U,	// NILF64
+    20977130U,	// NILH
+    0U,	// NILH64
+    20978056U,	// NILL
+    0U,	// NILL64
+    0U,	// NILMux
+    601850U,	// NIY
+    1056320U,	// NR
+    171972831U,	// NRK
+    7971U,	// NY
+    6838U,	// O
+    28843U,	// OC
+    0U,	// OCLoop
+    0U,	// OCSequence
+    5318U,	// OG
+    1056210U,	// OGR
+    171972801U,	// OGRK
+    600062U,	// OI
+    0U,	// OIFMux
+    5248000U,	// OIHF
+    0U,	// OIHF64
+    20976983U,	// OIHH
+    0U,	// OIHH64
+    20977975U,	// OIHL
+    0U,	// OIHL64
+    0U,	// OIHMux
+    5248037U,	// OILF
+    0U,	// OILF64
+    20977136U,	// OILH
+    0U,	// OILH64
+    20978062U,	// OILL
+    0U,	// OILL64
+    0U,	// OILMux
+    601855U,	// OIY
+    1056325U,	// OR
+    171972836U,	// ORK
+    7975U,	// OY
+    667848U,	// PFD
+    211496U,	// PFDRL
+    1376785475U,	// RISBG
+    1376785475U,	// RISBG32
+    1376785522U,	// RISBHG
+    0U,	// RISBHH
+    0U,	// RISBHL
+    1376785541U,	// RISBLG
+    0U,	// RISBLH
+    0U,	// RISBLL
+    0U,	// RISBMux
+    977279386U,	// RLL
+    977278103U,	// RLLG
+    1376785482U,	// RNSBG
+    1376785489U,	// ROSBG
+    1376785496U,	// RXSBG
+    0U,	// Return
+    7800U,	// S
+    4163U,	// SDB
+    1055626U,	// SDBR
+    4216U,	// SEB
+    1055747U,	// SEBR
+    5323U,	// SG
+    5079U,	// SGF
+    1056120U,	// SGFR
+    1056222U,	// SGR
+    171972807U,	// SGRK
+    5986U,	// SH
+    7913U,	// SHY
+    6818U,	// SL
+    4232U,	// SLB
+    5181U,	// SLBG
+    1055857U,	// SLBR
+    5248937U,	// SLFI
+    5294U,	// SLG
+    1056145U,	// SLGBR
+    5072U,	// SLGF
+    5248911U,	// SLGFI
+    1056098U,	// SLGFR
+    1056196U,	// SLGR
+    171972788U,	// SLGRK
+    9443743U,	// SLL
+    977278109U,	// SLLG
+    977279126U,	// SLLK
+    1056314U,	// SLR
+    171972825U,	// SLRK
+    7961U,	// SLY
+    13635644U,	// SQDB
+    4201346U,	// SQDBR
+    13635697U,	// SQEB
+    4201467U,	// SQEBR
+    4201675U,	// SQXBR
+    1056342U,	// SR
+    9441314U,	// SRA
+    977278007U,	// SRAG
+    977279090U,	// SRAK
+    171972841U,	// SRK
+    9443988U,	// SRL
+    977278120U,	// SRLG
+    977279132U,	// SRLK
+    4202131U,	// SRST
+    0U,	// SRSTLoop
+    13639311U,	// ST
+    0U,	// ST128
+    13635770U,	// STC
+    13636889U,	// STCH
+    0U,	// STCMux
+    13639353U,	// STCY
+    13635793U,	// STD
+    13639364U,	// STDY
+    13636527U,	// STE
+    13639375U,	// STEY
+    13636900U,	// STFH
+    13636837U,	// STG
+    11541077U,	// STGRL
+    13637478U,	// STH
+    13636969U,	// STHH
+    0U,	// STHMux
+    11541127U,	// STHRL
+    13639406U,	// STHY
+    977278136U,	// STMG
+    0U,	// STMux
+    44911U,	// STOC
+    44921U,	// STOCG
+    11541145U,	// STRL
+    13639332U,	// STRV
+    13636848U,	// STRVG
+    0U,	// STX
+    13639477U,	// STY
+    1055954U,	// SXBR
+    7980U,	// SY
+    0U,	// Select32
+    0U,	// Select32Mux
+    0U,	// Select64
+    0U,	// SelectF128
+    0U,	// SelectF32
+    0U,	// SelectF64
+    0U,	// Serialize
+    600747U,	// TM
+    22025571U,	// TMHH
+    0U,	// TMHH64
+    22026557U,	// TMHL
+    0U,	// TMHL64
+    0U,	// TMHMux
+    22025787U,	// TMLH
+    0U,	// TMLH64
+    22026644U,	// TMLL
+    0U,	// TMLL64
+    0U,	// TMLMux
+    601886U,	// TMY
+    7852U,	// X
+    28868U,	// XC
+    0U,	// XCLoop
+    0U,	// XCSequence
+    5369U,	// XG
+    1056246U,	// XGR
+    171972813U,	// XGRK
+    600126U,	// XI
+    0U,	// XIFMux
+    5248006U,	// XIHF
+    0U,	// XIHF64
+    5248043U,	// XILF
+    0U,	// XILF64
+    601866U,	// XIY
+    1056363U,	// XR
+    171972846U,	// XRK
+    7994U,	// XY
+    0U,	// ZEXT128_32
+    0U,	// ZEXT128_64
+    0U
+  };
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 'l', 'a', 'a', 9, 0,
+  /* 5 */ 'l', 'a', 9, 0,
+  /* 9 */ 'f', 'i', 'd', 'b', 'r', 'a', 9, 0,
+  /* 17 */ 'f', 'i', 'e', 'b', 'r', 'a', 9, 0,
+  /* 25 */ 'f', 'i', 'x', 'b', 'r', 'a', 9, 0,
+  /* 33 */ 's', 'r', 'a', 9, 0,
+  /* 38 */ 'm', 'a', 'd', 'b', 9, 0,
+  /* 44 */ 'c', 'd', 'b', 9, 0,
+  /* 49 */ 'd', 'd', 'b', 9, 0,
+  /* 54 */ 'm', 'd', 'b', 9, 0,
+  /* 59 */ 's', 'q', 'd', 'b', 9, 0,
+  /* 65 */ 'm', 's', 'd', 'b', 9, 0,
+  /* 71 */ 'l', 'x', 'd', 'b', 9, 0,
+  /* 77 */ 'm', 'x', 'd', 'b', 9, 0,
+  /* 83 */ 'm', 'a', 'e', 'b', 9, 0,
+  /* 89 */ 'c', 'e', 'b', 9, 0,
+  /* 94 */ 'l', 'd', 'e', 'b', 9, 0,
+  /* 100 */ 'm', 'd', 'e', 'b', 9, 0,
+  /* 106 */ 'm', 'e', 'e', 'b', 9, 0,
+  /* 112 */ 's', 'q', 'e', 'b', 9, 0,
+  /* 118 */ 'm', 's', 'e', 'b', 9, 0,
+  /* 124 */ 'l', 'x', 'e', 'b', 9, 0,
+  /* 130 */ 'l', 'g', 'b', 9, 0,
+  /* 135 */ 's', 'l', 'b', 9, 0,
+  /* 140 */ 'l', 'l', 'g', 'c', 9, 0,
+  /* 146 */ 'i', 'c', 9, 0,
+  /* 150 */ 'a', 'l', 'c', 9, 0,
+  /* 155 */ 'c', 'l', 'c', 9, 0,
+  /* 160 */ 'l', 'l', 'c', 9, 0,
+  /* 165 */ 'n', 'c', 9, 0,
+  /* 169 */ 'l', 'o', 'c', 9, 0,
+  /* 174 */ 's', 't', 'o', 'c', 9, 0,
+  /* 180 */ 'b', 'r', 'c', 9, 0,
+  /* 185 */ 's', 't', 'c', 9, 0,
+  /* 190 */ 'm', 'v', 'c', 9, 0,
+  /* 195 */ 'x', 'c', 9, 0,
+  /* 199 */ 'p', 'f', 'd', 9, 0,
+  /* 204 */ 'l', 'd', 9, 0,
+  /* 208 */ 's', 't', 'd', 9, 0,
+  /* 213 */ 'l', 'o', 'c', 'e', 9, 0,
+  /* 219 */ 's', 't', 'o', 'c', 'e', 9, 0,
+  /* 226 */ 'l', 'o', 'c', 'g', 'e', 9, 0,
+  /* 233 */ 's', 't', 'o', 'c', 'g', 'e', 9, 0,
+  /* 241 */ 'j', 'g', 'e', 9, 0,
+  /* 246 */ 'l', 'o', 'c', 'h', 'e', 9, 0,
+  /* 253 */ 's', 't', 'o', 'c', 'h', 'e', 9, 0,
+  /* 261 */ 'l', 'o', 'c', 'g', 'h', 'e', 9, 0,
+  /* 269 */ 's', 't', 'o', 'c', 'g', 'h', 'e', 9, 0,
+  /* 278 */ 'j', 'g', 'h', 'e', 9, 0,
+  /* 284 */ 'c', 'i', 'j', 'h', 'e', 9, 0,
+  /* 291 */ 'c', 'g', 'i', 'j', 'h', 'e', 9, 0,
+  /* 299 */ 'c', 'l', 'g', 'i', 'j', 'h', 'e', 9, 0,
+  /* 308 */ 'c', 'l', 'i', 'j', 'h', 'e', 9, 0,
+  /* 316 */ 'c', 'r', 'j', 'h', 'e', 9, 0,
+  /* 323 */ 'c', 'g', 'r', 'j', 'h', 'e', 9, 0,
+  /* 331 */ 'c', 'l', 'g', 'r', 'j', 'h', 'e', 9, 0,
+  /* 340 */ 'c', 'l', 'r', 'j', 'h', 'e', 9, 0,
+  /* 348 */ 'l', 'o', 'c', 'n', 'h', 'e', 9, 0,
+  /* 356 */ 's', 't', 'o', 'c', 'n', 'h', 'e', 9, 0,
+  /* 365 */ 'l', 'o', 'c', 'g', 'n', 'h', 'e', 9, 0,
+  /* 374 */ 's', 't', 'o', 'c', 'g', 'n', 'h', 'e', 9, 0,
+  /* 384 */ 'j', 'g', 'n', 'h', 'e', 9, 0,
+  /* 391 */ 'c', 'i', 'j', 'n', 'h', 'e', 9, 0,
+  /* 399 */ 'c', 'g', 'i', 'j', 'n', 'h', 'e', 9, 0,
+  /* 408 */ 'c', 'l', 'g', 'i', 'j', 'n', 'h', 'e', 9, 0,
+  /* 418 */ 'c', 'l', 'i', 'j', 'n', 'h', 'e', 9, 0,
+  /* 427 */ 'c', 'r', 'j', 'n', 'h', 'e', 9, 0,
+  /* 435 */ 'c', 'g', 'r', 'j', 'n', 'h', 'e', 9, 0,
+  /* 444 */ 'c', 'l', 'g', 'r', 'j', 'n', 'h', 'e', 9, 0,
+  /* 454 */ 'c', 'l', 'r', 'j', 'n', 'h', 'e', 9, 0,
+  /* 463 */ 'l', 'o', 'c', 'r', 'n', 'h', 'e', 9, 0,
+  /* 472 */ 'l', 'o', 'c', 'g', 'r', 'n', 'h', 'e', 9, 0,
+  /* 482 */ 'l', 'o', 'c', 'r', 'h', 'e', 9, 0,
+  /* 490 */ 'l', 'o', 'c', 'g', 'r', 'h', 'e', 9, 0,
+  /* 499 */ 'c', 'i', 'j', 'e', 9, 0,
+  /* 505 */ 'c', 'g', 'i', 'j', 'e', 9, 0,
+  /* 512 */ 'c', 'l', 'g', 'i', 'j', 'e', 9, 0,
+  /* 520 */ 'c', 'l', 'i', 'j', 'e', 9, 0,
+  /* 527 */ 'c', 'r', 'j', 'e', 9, 0,
+  /* 533 */ 'c', 'g', 'r', 'j', 'e', 9, 0,
+  /* 540 */ 'c', 'l', 'g', 'r', 'j', 'e', 9, 0,
+  /* 548 */ 'c', 'l', 'r', 'j', 'e', 9, 0,
+  /* 555 */ 'l', 'o', 'c', 'l', 'e', 9, 0,
+  /* 562 */ 's', 't', 'o', 'c', 'l', 'e', 9, 0,
+  /* 570 */ 'l', 'o', 'c', 'g', 'l', 'e', 9, 0,
+  /* 578 */ 's', 't', 'o', 'c', 'g', 'l', 'e', 9, 0,
+  /* 587 */ 'j', 'g', 'l', 'e', 9, 0,
+  /* 593 */ 'c', 'i', 'j', 'l', 'e', 9, 0,
+  /* 600 */ 'c', 'g', 'i', 'j', 'l', 'e', 9, 0,
+  /* 608 */ 'c', 'l', 'g', 'i', 'j', 'l', 'e', 9, 0,
+  /* 617 */ 'c', 'l', 'i', 'j', 'l', 'e', 9, 0,
+  /* 625 */ 'c', 'r', 'j', 'l', 'e', 9, 0,
+  /* 632 */ 'c', 'g', 'r', 'j', 'l', 'e', 9, 0,
+  /* 640 */ 'c', 'l', 'g', 'r', 'j', 'l', 'e', 9, 0,
+  /* 649 */ 'c', 'l', 'r', 'j', 'l', 'e', 9, 0,
+  /* 657 */ 'l', 'o', 'c', 'n', 'l', 'e', 9, 0,
+  /* 665 */ 's', 't', 'o', 'c', 'n', 'l', 'e', 9, 0,
+  /* 674 */ 'l', 'o', 'c', 'g', 'n', 'l', 'e', 9, 0,
+  /* 683 */ 's', 't', 'o', 'c', 'g', 'n', 'l', 'e', 9, 0,
+  /* 693 */ 'j', 'g', 'n', 'l', 'e', 9, 0,
+  /* 700 */ 'c', 'i', 'j', 'n', 'l', 'e', 9, 0,
+  /* 708 */ 'c', 'g', 'i', 'j', 'n', 'l', 'e', 9, 0,
+  /* 717 */ 'c', 'l', 'g', 'i', 'j', 'n', 'l', 'e', 9, 0,
+  /* 727 */ 'c', 'l', 'i', 'j', 'n', 'l', 'e', 9, 0,
+  /* 736 */ 'c', 'r', 'j', 'n', 'l', 'e', 9, 0,
+  /* 744 */ 'c', 'g', 'r', 'j', 'n', 'l', 'e', 9, 0,
+  /* 753 */ 'c', 'l', 'g', 'r', 'j', 'n', 'l', 'e', 9, 0,
+  /* 763 */ 'c', 'l', 'r', 'j', 'n', 'l', 'e', 9, 0,
+  /* 772 */ 'l', 'o', 'c', 'r', 'n', 'l', 'e', 9, 0,
+  /* 781 */ 'l', 'o', 'c', 'g', 'r', 'n', 'l', 'e', 9, 0,
+  /* 791 */ 'l', 'o', 'c', 'r', 'l', 'e', 9, 0,
+  /* 799 */ 'l', 'o', 'c', 'g', 'r', 'l', 'e', 9, 0,
+  /* 808 */ 'l', 'o', 'c', 'n', 'e', 9, 0,
+  /* 815 */ 's', 't', 'o', 'c', 'n', 'e', 9, 0,
+  /* 823 */ 'l', 'o', 'c', 'g', 'n', 'e', 9, 0,
+  /* 831 */ 's', 't', 'o', 'c', 'g', 'n', 'e', 9, 0,
+  /* 840 */ 'j', 'g', 'n', 'e', 9, 0,
+  /* 846 */ 'c', 'i', 'j', 'n', 'e', 9, 0,
+  /* 853 */ 'c', 'g', 'i', 'j', 'n', 'e', 9, 0,
+  /* 861 */ 'c', 'l', 'g', 'i', 'j', 'n', 'e', 9, 0,
+  /* 870 */ 'c', 'l', 'i', 'j', 'n', 'e', 9, 0,
+  /* 878 */ 'c', 'r', 'j', 'n', 'e', 9, 0,
+  /* 885 */ 'c', 'g', 'r', 'j', 'n', 'e', 9, 0,
+  /* 893 */ 'c', 'l', 'g', 'r', 'j', 'n', 'e', 9, 0,
+  /* 902 */ 'c', 'l', 'r', 'j', 'n', 'e', 9, 0,
+  /* 910 */ 'l', 'o', 'c', 'r', 'n', 'e', 9, 0,
+  /* 918 */ 'l', 'o', 'c', 'g', 'r', 'n', 'e', 9, 0,
+  /* 927 */ 'l', 'o', 'c', 'r', 'e', 9, 0,
+  /* 934 */ 'l', 'o', 'c', 'g', 'r', 'e', 9, 0,
+  /* 942 */ 's', 't', 'e', 9, 0,
+  /* 947 */ 'a', 'g', 'f', 9, 0,
+  /* 952 */ 'c', 'g', 'f', 9, 0,
+  /* 957 */ 'a', 'l', 'g', 'f', 9, 0,
+  /* 963 */ 'c', 'l', 'g', 'f', 9, 0,
+  /* 969 */ 'l', 'l', 'g', 'f', 9, 0,
+  /* 975 */ 's', 'l', 'g', 'f', 9, 0,
+  /* 981 */ 'd', 's', 'g', 'f', 9, 0,
+  /* 987 */ 'm', 's', 'g', 'f', 9, 0,
+  /* 993 */ 'l', 't', 'g', 'f', 9, 0,
+  /* 999 */ 'c', 'h', 'f', 9, 0,
+  /* 1004 */ 'i', 'i', 'h', 'f', 9, 0,
+  /* 1010 */ 'l', 'l', 'i', 'h', 'f', 9, 0,
+  /* 1017 */ 'n', 'i', 'h', 'f', 9, 0,
+  /* 1023 */ 'o', 'i', 'h', 'f', 9, 0,
+  /* 1029 */ 'x', 'i', 'h', 'f', 9, 0,
+  /* 1035 */ 'c', 'l', 'h', 'f', 9, 0,
+  /* 1041 */ 'i', 'i', 'l', 'f', 9, 0,
+  /* 1047 */ 'l', 'l', 'i', 'l', 'f', 9, 0,
+  /* 1054 */ 'n', 'i', 'l', 'f', 9, 0,
+  /* 1060 */ 'o', 'i', 'l', 'f', 9, 0,
+  /* 1066 */ 'x', 'i', 'l', 'f', 9, 0,
+  /* 1072 */ 'l', 'a', 'a', 'g', 9, 0,
+  /* 1078 */ 's', 'r', 'a', 'g', 9, 0,
+  /* 1084 */ 's', 'l', 'b', 'g', 9, 0,
+  /* 1090 */ 'r', 'i', 's', 'b', 'g', 9, 0,
+  /* 1097 */ 'r', 'n', 's', 'b', 'g', 9, 0,
+  /* 1104 */ 'r', 'o', 's', 'b', 'g', 9, 0,
+  /* 1111 */ 'r', 'x', 's', 'b', 'g', 9, 0,
+  /* 1118 */ 'a', 'l', 'c', 'g', 9, 0,
+  /* 1124 */ 'l', 'o', 'c', 'g', 9, 0,
+  /* 1130 */ 's', 't', 'o', 'c', 'g', 9, 0,
+  /* 1137 */ 'r', 'i', 's', 'b', 'h', 'g', 9, 0,
+  /* 1145 */ 'j', 'g', 9, 0,
+  /* 1149 */ 'l', 'a', 'a', 'l', 'g', 9, 0,
+  /* 1156 */ 'r', 'i', 's', 'b', 'l', 'g', 9, 0,
+  /* 1164 */ 'c', 'l', 'g', 9, 0,
+  /* 1169 */ 'd', 'l', 'g', 9, 0,
+  /* 1174 */ 'r', 'l', 'l', 'g', 9, 0,
+  /* 1180 */ 's', 'l', 'l', 'g', 9, 0,
+  /* 1186 */ 'm', 'l', 'g', 9, 0,
+  /* 1191 */ 's', 'r', 'l', 'g', 9, 0,
+  /* 1197 */ 's', 'l', 'g', 9, 0,
+  /* 1202 */ 'l', 'm', 'g', 9, 0,
+  /* 1207 */ 's', 't', 'm', 'g', 9, 0,
+  /* 1213 */ 'l', 'a', 'n', 'g', 9, 0,
+  /* 1219 */ 'l', 'a', 'o', 'g', 9, 0,
+  /* 1225 */ 'c', 's', 'g', 9, 0,
+  /* 1230 */ 'd', 's', 'g', 9, 0,
+  /* 1235 */ 'm', 's', 'g', 9, 0,
+  /* 1240 */ 'b', 'r', 'c', 't', 'g', 9, 0,
+  /* 1247 */ 'l', 't', 'g', 9, 0,
+  /* 1252 */ 's', 't', 'g', 9, 0,
+  /* 1257 */ 'l', 'r', 'v', 'g', 9, 0,
+  /* 1263 */ 's', 't', 'r', 'v', 'g', 9, 0,
+  /* 1270 */ 'l', 'a', 'x', 'g', 9, 0,
+  /* 1276 */ 'a', 'h', 9, 0,
+  /* 1280 */ 'l', 'b', 'h', 9, 0,
+  /* 1285 */ 'l', 'l', 'c', 'h', 9, 0,
+  /* 1291 */ 'l', 'o', 'c', 'h', 9, 0,
+  /* 1297 */ 's', 't', 'o', 'c', 'h', 9, 0,
+  /* 1304 */ 's', 't', 'c', 'h', 9, 0,
+  /* 1310 */ 'l', 'f', 'h', 9, 0,
+  /* 1315 */ 's', 't', 'f', 'h', 9, 0,
+  /* 1321 */ 'l', 'o', 'c', 'g', 'h', 9, 0,
+  /* 1328 */ 's', 't', 'o', 'c', 'g', 'h', 9, 0,
+  /* 1336 */ 'j', 'g', 'h', 9, 0,
+  /* 1341 */ 'l', 'l', 'g', 'h', 9, 0,
+  /* 1347 */ 'i', 'i', 'h', 'h', 9, 0,
+  /* 1353 */ 'l', 'l', 'i', 'h', 'h', 9, 0,
+  /* 1360 */ 'n', 'i', 'h', 'h', 9, 0,
+  /* 1366 */ 'o', 'i', 'h', 'h', 9, 0,
+  /* 1372 */ 'l', 'l', 'h', 'h', 9, 0,
+  /* 1378 */ 't', 'm', 'h', 'h', 9, 0,
+  /* 1384 */ 's', 't', 'h', 'h', 9, 0,
+  /* 1390 */ 'a', 'i', 'h', 9, 0,
+  /* 1395 */ 'c', 'i', 'h', 9, 0,
+  /* 1400 */ 'c', 'l', 'i', 'h', 9, 0,
+  /* 1406 */ 'c', 'i', 'j', 'h', 9, 0,
+  /* 1412 */ 'c', 'g', 'i', 'j', 'h', 9, 0,
+  /* 1419 */ 'c', 'l', 'g', 'i', 'j', 'h', 9, 0,
+  /* 1427 */ 'c', 'l', 'i', 'j', 'h', 9, 0,
+  /* 1434 */ 'c', 'r', 'j', 'h', 9, 0,
+  /* 1440 */ 'c', 'g', 'r', 'j', 'h', 9, 0,
+  /* 1447 */ 'c', 'l', 'g', 'r', 'j', 'h', 9, 0,
+  /* 1455 */ 'c', 'l', 'r', 'j', 'h', 9, 0,
+  /* 1462 */ 'l', 'o', 'c', 'l', 'h', 9, 0,
+  /* 1469 */ 's', 't', 'o', 'c', 'l', 'h', 9, 0,
+  /* 1477 */ 'l', 'o', 'c', 'g', 'l', 'h', 9, 0,
+  /* 1485 */ 's', 't', 'o', 'c', 'g', 'l', 'h', 9, 0,
+  /* 1494 */ 'j', 'g', 'l', 'h', 9, 0,
+  /* 1500 */ 'i', 'i', 'l', 'h', 9, 0,
+  /* 1506 */ 'l', 'l', 'i', 'l', 'h', 9, 0,
+  /* 1513 */ 'n', 'i', 'l', 'h', 9, 0,
+  /* 1519 */ 'o', 'i', 'l', 'h', 9, 0,
+  /* 1525 */ 'c', 'i', 'j', 'l', 'h', 9, 0,
+  /* 1532 */ 'c', 'g', 'i', 'j', 'l', 'h', 9, 0,
+  /* 1540 */ 'c', 'l', 'g', 'i', 'j', 'l', 'h', 9, 0,
+  /* 1549 */ 'c', 'l', 'i', 'j', 'l', 'h', 9, 0,
+  /* 1557 */ 'c', 'r', 'j', 'l', 'h', 9, 0,
+  /* 1564 */ 'c', 'g', 'r', 'j', 'l', 'h', 9, 0,
+  /* 1572 */ 'c', 'l', 'g', 'r', 'j', 'l', 'h', 9, 0,
+  /* 1581 */ 'c', 'l', 'r', 'j', 'l', 'h', 9, 0,
+  /* 1589 */ 'l', 'l', 'h', 9, 0,
+  /* 1594 */ 't', 'm', 'l', 'h', 9, 0,
+  /* 1600 */ 'l', 'o', 'c', 'n', 'l', 'h', 9, 0,
+  /* 1608 */ 's', 't', 'o', 'c', 'n', 'l', 'h', 9, 0,
+  /* 1617 */ 'l', 'o', 'c', 'g', 'n', 'l', 'h', 9, 0,
+  /* 1626 */ 's', 't', 'o', 'c', 'g', 'n', 'l', 'h', 9, 0,
+  /* 1636 */ 'j', 'g', 'n', 'l', 'h', 9, 0,
+  /* 1643 */ 'c', 'i', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1651 */ 'c', 'g', 'i', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1660 */ 'c', 'l', 'g', 'i', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1670 */ 'c', 'l', 'i', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1679 */ 'c', 'r', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1687 */ 'c', 'g', 'r', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1696 */ 'c', 'l', 'g', 'r', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1706 */ 'c', 'l', 'r', 'j', 'n', 'l', 'h', 9, 0,
+  /* 1715 */ 'l', 'o', 'c', 'r', 'n', 'l', 'h', 9, 0,
+  /* 1724 */ 'l', 'o', 'c', 'g', 'r', 'n', 'l', 'h', 9, 0,
+  /* 1734 */ 'l', 'o', 'c', 'r', 'l', 'h', 9, 0,
+  /* 1742 */ 'l', 'o', 'c', 'g', 'r', 'l', 'h', 9, 0,
+  /* 1751 */ 'm', 'h', 9, 0,
+  /* 1755 */ 'l', 'o', 'c', 'n', 'h', 9, 0,
+  /* 1762 */ 's', 't', 'o', 'c', 'n', 'h', 9, 0,
+  /* 1770 */ 'l', 'o', 'c', 'g', 'n', 'h', 9, 0,
+  /* 1778 */ 's', 't', 'o', 'c', 'g', 'n', 'h', 9, 0,
+  /* 1787 */ 'j', 'g', 'n', 'h', 9, 0,
+  /* 1793 */ 'c', 'i', 'j', 'n', 'h', 9, 0,
+  /* 1800 */ 'c', 'g', 'i', 'j', 'n', 'h', 9, 0,
+  /* 1808 */ 'c', 'l', 'g', 'i', 'j', 'n', 'h', 9, 0,
+  /* 1817 */ 'c', 'l', 'i', 'j', 'n', 'h', 9, 0,
+  /* 1825 */ 'c', 'r', 'j', 'n', 'h', 9, 0,
+  /* 1832 */ 'c', 'g', 'r', 'j', 'n', 'h', 9, 0,
+  /* 1840 */ 'c', 'l', 'g', 'r', 'j', 'n', 'h', 9, 0,
+  /* 1849 */ 'c', 'l', 'r', 'j', 'n', 'h', 9, 0,
+  /* 1857 */ 'l', 'o', 'c', 'r', 'n', 'h', 9, 0,
+  /* 1865 */ 'l', 'o', 'c', 'g', 'r', 'n', 'h', 9, 0,
+  /* 1874 */ 'l', 'o', 'c', 'r', 'h', 9, 0,
+  /* 1881 */ 'l', 'o', 'c', 'g', 'r', 'h', 9, 0,
+  /* 1889 */ 's', 'h', 9, 0,
+  /* 1893 */ 's', 't', 'h', 9, 0,
+  /* 1898 */ 'a', 'f', 'i', 9, 0,
+  /* 1903 */ 'c', 'f', 'i', 9, 0,
+  /* 1908 */ 'a', 'g', 'f', 'i', 9, 0,
+  /* 1914 */ 'c', 'g', 'f', 'i', 9, 0,
+  /* 1920 */ 'a', 'l', 'g', 'f', 'i', 9, 0,
+  /* 1927 */ 'c', 'l', 'g', 'f', 'i', 9, 0,
+  /* 1934 */ 's', 'l', 'g', 'f', 'i', 9, 0,
+  /* 1941 */ 'm', 's', 'g', 'f', 'i', 9, 0,
+  /* 1948 */ 'a', 'l', 'f', 'i', 9, 0,
+  /* 1954 */ 'c', 'l', 'f', 'i', 9, 0,
+  /* 1960 */ 's', 'l', 'f', 'i', 9, 0,
+  /* 1966 */ 'm', 's', 'f', 'i', 9, 0,
+  /* 1972 */ 'a', 'h', 'i', 9, 0,
+  /* 1977 */ 'c', 'h', 'i', 9, 0,
+  /* 1982 */ 'a', 'g', 'h', 'i', 9, 0,
+  /* 1988 */ 'c', 'g', 'h', 'i', 9, 0,
+  /* 1994 */ 'l', 'g', 'h', 'i', 9, 0,
+  /* 2000 */ 'm', 'g', 'h', 'i', 9, 0,
+  /* 2006 */ 'm', 'v', 'g', 'h', 'i', 9, 0,
+  /* 2013 */ 'm', 'v', 'h', 'h', 'i', 9, 0,
+  /* 2020 */ 'l', 'h', 'i', 9, 0,
+  /* 2025 */ 'm', 'h', 'i', 9, 0,
+  /* 2030 */ 'm', 'v', 'h', 'i', 9, 0,
+  /* 2036 */ 'c', 'l', 'i', 9, 0,
+  /* 2041 */ 'n', 'i', 9, 0,
+  /* 2045 */ 'o', 'i', 9, 0,
+  /* 2049 */ 'a', 's', 'i', 9, 0,
+  /* 2054 */ 'a', 'g', 's', 'i', 9, 0,
+  /* 2060 */ 'c', 'h', 's', 'i', 9, 0,
+  /* 2066 */ 'c', 'l', 'f', 'h', 's', 'i', 9, 0,
+  /* 2074 */ 'c', 'g', 'h', 's', 'i', 9, 0,
+  /* 2081 */ 'c', 'l', 'g', 'h', 's', 'i', 9, 0,
+  /* 2089 */ 'c', 'h', 'h', 's', 'i', 9, 0,
+  /* 2096 */ 'c', 'l', 'h', 'h', 's', 'i', 9, 0,
+  /* 2104 */ 'm', 'v', 'i', 9, 0,
+  /* 2109 */ 'x', 'i', 9, 0,
+  /* 2113 */ 'c', 'i', 'j', 9, 0,
+  /* 2118 */ 'c', 'g', 'i', 'j', 9, 0,
+  /* 2124 */ 'c', 'l', 'g', 'i', 'j', 9, 0,
+  /* 2131 */ 'c', 'l', 'i', 'j', 9, 0,
+  /* 2137 */ 'c', 'r', 'j', 9, 0,
+  /* 2142 */ 'c', 'g', 'r', 'j', 9, 0,
+  /* 2148 */ 'c', 'l', 'g', 'r', 'j', 9, 0,
+  /* 2155 */ 'c', 'l', 'r', 'j', 9, 0,
+  /* 2161 */ 's', 'r', 'a', 'k', 9, 0,
+  /* 2167 */ 'a', 'h', 'i', 'k', 9, 0,
+  /* 2173 */ 'a', 'g', 'h', 'i', 'k', 9, 0,
+  /* 2180 */ 'a', 'l', 'g', 'h', 's', 'i', 'k', 9, 0,
+  /* 2189 */ 'a', 'l', 'h', 's', 'i', 'k', 9, 0,
+  /* 2197 */ 's', 'l', 'l', 'k', 9, 0,
+  /* 2203 */ 's', 'r', 'l', 'k', 9, 0,
+  /* 2209 */ 'a', 'r', 'k', 9, 0,
+  /* 2214 */ 'a', 'g', 'r', 'k', 9, 0,
+  /* 2220 */ 'a', 'l', 'g', 'r', 'k', 9, 0,
+  /* 2227 */ 's', 'l', 'g', 'r', 'k', 9, 0,
+  /* 2234 */ 'n', 'g', 'r', 'k', 9, 0,
+  /* 2240 */ 'o', 'g', 'r', 'k', 9, 0,
+  /* 2246 */ 's', 'g', 'r', 'k', 9, 0,
+  /* 2252 */ 'x', 'g', 'r', 'k', 9, 0,
+  /* 2258 */ 'a', 'l', 'r', 'k', 9, 0,
+  /* 2264 */ 's', 'l', 'r', 'k', 9, 0,
+  /* 2270 */ 'n', 'r', 'k', 9, 0,
+  /* 2275 */ 'o', 'r', 'k', 9, 0,
+  /* 2280 */ 's', 'r', 'k', 9, 0,
+  /* 2285 */ 'x', 'r', 'k', 9, 0,
+  /* 2290 */ 'l', 'a', 'a', 'l', 9, 0,
+  /* 2296 */ 'l', 'o', 'c', 'l', 9, 0,
+  /* 2302 */ 's', 't', 'o', 'c', 'l', 9, 0,
+  /* 2309 */ 'b', 'r', 'c', 'l', 9, 0,
+  /* 2315 */ 'd', 'l', 9, 0,
+  /* 2319 */ 'l', 'o', 'c', 'g', 'l', 9, 0,
+  /* 2326 */ 's', 't', 'o', 'c', 'g', 'l', 9, 0,
+  /* 2334 */ 'j', 'g', 'l', 9, 0,
+  /* 2339 */ 'i', 'i', 'h', 'l', 9, 0,
+  /* 2345 */ 'l', 'l', 'i', 'h', 'l', 9, 0,
+  /* 2352 */ 'n', 'i', 'h', 'l', 9, 0,
+  /* 2358 */ 'o', 'i', 'h', 'l', 9, 0,
+  /* 2364 */ 't', 'm', 'h', 'l', 9, 0,
+  /* 2370 */ 'c', 'i', 'j', 'l', 9, 0,
+  /* 2376 */ 'c', 'g', 'i', 'j', 'l', 9, 0,
+  /* 2383 */ 'c', 'l', 'g', 'i', 'j', 'l', 9, 0,
+  /* 2391 */ 'c', 'l', 'i', 'j', 'l', 9, 0,
+  /* 2398 */ 'c', 'r', 'j', 'l', 9, 0,
+  /* 2404 */ 'c', 'g', 'r', 'j', 'l', 9, 0,
+  /* 2411 */ 'c', 'l', 'g', 'r', 'j', 'l', 9, 0,
+  /* 2419 */ 'c', 'l', 'r', 'j', 'l', 9, 0,
+  /* 2426 */ 'i', 'i', 'l', 'l', 9, 0,
+  /* 2432 */ 'l', 'l', 'i', 'l', 'l', 9, 0,
+  /* 2439 */ 'n', 'i', 'l', 'l', 9, 0,
+  /* 2445 */ 'o', 'i', 'l', 'l', 9, 0,
+  /* 2451 */ 't', 'm', 'l', 'l', 9, 0,
+  /* 2457 */ 'r', 'l', 'l', 9, 0,
+  /* 2462 */ 's', 'l', 'l', 9, 0,
+  /* 2467 */ 'l', 'o', 'c', 'n', 'l', 9, 0,
+  /* 2474 */ 's', 't', 'o', 'c', 'n', 'l', 9, 0,
+  /* 2482 */ 'l', 'o', 'c', 'g', 'n', 'l', 9, 0,
+  /* 2490 */ 's', 't', 'o', 'c', 'g', 'n', 'l', 9, 0,
+  /* 2499 */ 'j', 'g', 'n', 'l', 9, 0,
+  /* 2505 */ 'c', 'i', 'j', 'n', 'l', 9, 0,
+  /* 2512 */ 'c', 'g', 'i', 'j', 'n', 'l', 9, 0,
+  /* 2520 */ 'c', 'l', 'g', 'i', 'j', 'n', 'l', 9, 0,
+  /* 2529 */ 'c', 'l', 'i', 'j', 'n', 'l', 9, 0,
+  /* 2537 */ 'c', 'r', 'j', 'n', 'l', 9, 0,
+  /* 2544 */ 'c', 'g', 'r', 'j', 'n', 'l', 9, 0,
+  /* 2552 */ 'c', 'l', 'g', 'r', 'j', 'n', 'l', 9, 0,
+  /* 2561 */ 'c', 'l', 'r', 'j', 'n', 'l', 9, 0,
+  /* 2569 */ 'l', 'o', 'c', 'r', 'n', 'l', 9, 0,
+  /* 2577 */ 'l', 'o', 'c', 'g', 'r', 'n', 'l', 9, 0,
+  /* 2586 */ 'l', 'a', 'r', 'l', 9, 0,
+  /* 2592 */ 'l', 'o', 'c', 'r', 'l', 9, 0,
+  /* 2599 */ 'p', 'f', 'd', 'r', 'l', 9, 0,
+  /* 2606 */ 'c', 'g', 'f', 'r', 'l', 9, 0,
+  /* 2613 */ 'c', 'l', 'g', 'f', 'r', 'l', 9, 0,
+  /* 2621 */ 'l', 'l', 'g', 'f', 'r', 'l', 9, 0,
+  /* 2629 */ 'l', 'o', 'c', 'g', 'r', 'l', 9, 0,
+  /* 2637 */ 'c', 'l', 'g', 'r', 'l', 9, 0,
+  /* 2644 */ 's', 't', 'g', 'r', 'l', 9, 0,
+  /* 2651 */ 'c', 'h', 'r', 'l', 9, 0,
+  /* 2657 */ 'c', 'g', 'h', 'r', 'l', 9, 0,
+  /* 2664 */ 'c', 'l', 'g', 'h', 'r', 'l', 9, 0,
+  /* 2672 */ 'l', 'l', 'g', 'h', 'r', 'l', 9, 0,
+  /* 2680 */ 'c', 'l', 'h', 'r', 'l', 9, 0,
+  /* 2687 */ 'l', 'l', 'h', 'r', 'l', 9, 0,
+  /* 2694 */ 's', 't', 'h', 'r', 'l', 9, 0,
+  /* 2701 */ 'c', 'l', 'r', 'l', 9, 0,
+  /* 2707 */ 's', 'r', 'l', 9, 0,
+  /* 2712 */ 's', 't', 'r', 'l', 9, 0,
+  /* 2718 */ 'b', 'r', 'a', 's', 'l', 9, 0,
+  /* 2725 */ 'i', 'p', 'm', 9, 0,
+  /* 2730 */ 't', 'm', 9, 0,
+  /* 2734 */ 'l', 'a', 'n', 9, 0,
+  /* 2739 */ 'l', 'a', 'o', 9, 0,
+  /* 2744 */ 'l', 'o', 'c', 'o', 9, 0,
+  /* 2750 */ 's', 't', 'o', 'c', 'o', 9, 0,
+  /* 2757 */ 'l', 'o', 'c', 'g', 'o', 9, 0,
+  /* 2764 */ 's', 't', 'o', 'c', 'g', 'o', 9, 0,
+  /* 2772 */ 'j', 'g', 'o', 9, 0,
+  /* 2777 */ 'j', 'o', 9, 0,
+  /* 2781 */ 'l', 'o', 'c', 'n', 'o', 9, 0,
+  /* 2788 */ 's', 't', 'o', 'c', 'n', 'o', 9, 0,
+  /* 2796 */ 'l', 'o', 'c', 'g', 'n', 'o', 9, 0,
+  /* 2804 */ 's', 't', 'o', 'c', 'g', 'n', 'o', 9, 0,
+  /* 2813 */ 'j', 'g', 'n', 'o', 9, 0,
+  /* 2819 */ 'j', 'n', 'o', 9, 0,
+  /* 2824 */ 'l', 'o', 'c', 'r', 'n', 'o', 9, 0,
+  /* 2832 */ 'l', 'o', 'c', 'g', 'r', 'n', 'o', 9, 0,
+  /* 2841 */ 'l', 'o', 'c', 'r', 'o', 9, 0,
+  /* 2848 */ 'l', 'o', 'c', 'g', 'r', 'o', 9, 0,
+  /* 2856 */ 'e', 'a', 'r', 9, 0,
+  /* 2861 */ 'm', 'a', 'd', 'b', 'r', 9, 0,
+  /* 2868 */ 'l', 'c', 'd', 'b', 'r', 9, 0,
+  /* 2875 */ 'd', 'd', 'b', 'r', 9, 0,
+  /* 2881 */ 'l', 'e', 'd', 'b', 'r', 9, 0,
+  /* 2888 */ 'c', 'f', 'd', 'b', 'r', 9, 0,
+  /* 2895 */ 'c', 'l', 'f', 'd', 'b', 'r', 9, 0,
+  /* 2903 */ 'c', 'g', 'd', 'b', 'r', 9, 0,
+  /* 2910 */ 'c', 'l', 'g', 'd', 'b', 'r', 9, 0,
+  /* 2918 */ 'f', 'i', 'd', 'b', 'r', 9, 0,
+  /* 2925 */ 'm', 'd', 'b', 'r', 9, 0,
+  /* 2931 */ 'l', 'n', 'd', 'b', 'r', 9, 0,
+  /* 2938 */ 'l', 'p', 'd', 'b', 'r', 9, 0,
+  /* 2945 */ 's', 'q', 'd', 'b', 'r', 9, 0,
+  /* 2952 */ 'm', 's', 'd', 'b', 'r', 9, 0,
+  /* 2959 */ 'l', 't', 'd', 'b', 'r', 9, 0,
+  /* 2966 */ 'l', 'x', 'd', 'b', 'r', 9, 0,
+  /* 2973 */ 'm', 'x', 'd', 'b', 'r', 9, 0,
+  /* 2980 */ 'm', 'a', 'e', 'b', 'r', 9, 0,
+  /* 2987 */ 'l', 'c', 'e', 'b', 'r', 9, 0,
+  /* 2994 */ 'l', 'd', 'e', 'b', 'r', 9, 0,
+  /* 3001 */ 'm', 'd', 'e', 'b', 'r', 9, 0,
+  /* 3008 */ 'm', 'e', 'e', 'b', 'r', 9, 0,
+  /* 3015 */ 'c', 'f', 'e', 'b', 'r', 9, 0,
+  /* 3022 */ 'c', 'l', 'f', 'e', 'b', 'r', 9, 0,
+  /* 3030 */ 'c', 'g', 'e', 'b', 'r', 9, 0,
+  /* 3037 */ 'c', 'l', 'g', 'e', 'b', 'r', 9, 0,
+  /* 3045 */ 'f', 'i', 'e', 'b', 'r', 9, 0,
+  /* 3052 */ 'l', 'n', 'e', 'b', 'r', 9, 0,
+  /* 3059 */ 'l', 'p', 'e', 'b', 'r', 9, 0,
+  /* 3066 */ 's', 'q', 'e', 'b', 'r', 9, 0,
+  /* 3073 */ 'm', 's', 'e', 'b', 'r', 9, 0,
+  /* 3080 */ 'l', 't', 'e', 'b', 'r', 9, 0,
+  /* 3087 */ 'l', 'x', 'e', 'b', 'r', 9, 0,
+  /* 3094 */ 'c', 'd', 'f', 'b', 'r', 9, 0,
+  /* 3101 */ 'c', 'e', 'f', 'b', 'r', 9, 0,
+  /* 3108 */ 'c', 'd', 'l', 'f', 'b', 'r', 9, 0,
+  /* 3116 */ 'c', 'e', 'l', 'f', 'b', 'r', 9, 0,
+  /* 3124 */ 'c', 'x', 'l', 'f', 'b', 'r', 9, 0,
+  /* 3132 */ 'c', 'x', 'f', 'b', 'r', 9, 0,
+  /* 3139 */ 'c', 'd', 'g', 'b', 'r', 9, 0,
+  /* 3146 */ 'c', 'e', 'g', 'b', 'r', 9, 0,
+  /* 3153 */ 'c', 'd', 'l', 'g', 'b', 'r', 9, 0,
+  /* 3161 */ 'c', 'e', 'l', 'g', 'b', 'r', 9, 0,
+  /* 3169 */ 'c', 'x', 'l', 'g', 'b', 'r', 9, 0,
+  /* 3177 */ 'c', 'x', 'g', 'b', 'r', 9, 0,
+  /* 3184 */ 's', 'l', 'b', 'r', 9, 0,
+  /* 3190 */ 'a', 'x', 'b', 'r', 9, 0,
+  /* 3196 */ 'l', 'c', 'x', 'b', 'r', 9, 0,
+  /* 3203 */ 'l', 'd', 'x', 'b', 'r', 9, 0,
+  /* 3210 */ 'l', 'e', 'x', 'b', 'r', 9, 0,
+  /* 3217 */ 'c', 'f', 'x', 'b', 'r', 9, 0,
+  /* 3224 */ 'c', 'l', 'f', 'x', 'b', 'r', 9, 0,
+  /* 3232 */ 'c', 'g', 'x', 'b', 'r', 9, 0,
+  /* 3239 */ 'c', 'l', 'g', 'x', 'b', 'r', 9, 0,
+  /* 3247 */ 'f', 'i', 'x', 'b', 'r', 9, 0,
+  /* 3254 */ 'm', 'x', 'b', 'r', 9, 0,
+  /* 3260 */ 'l', 'n', 'x', 'b', 'r', 9, 0,
+  /* 3267 */ 'l', 'p', 'x', 'b', 'r', 9, 0,
+  /* 3274 */ 's', 'q', 'x', 'b', 'r', 9, 0,
+  /* 3281 */ 's', 'x', 'b', 'r', 9, 0,
+  /* 3287 */ 'l', 't', 'x', 'b', 'r', 9, 0,
+  /* 3294 */ 'b', 'c', 'r', 9, 0,
+  /* 3299 */ 'l', 'l', 'g', 'c', 'r', 9, 0,
+  /* 3306 */ 'a', 'l', 'c', 'r', 9, 0,
+  /* 3312 */ 'l', 'l', 'c', 'r', 9, 0,
+  /* 3318 */ 'l', 'o', 'c', 'r', 9, 0,
+  /* 3324 */ 'l', 'g', 'd', 'r', 9, 0,
+  /* 3330 */ 'l', 'd', 'r', 9, 0,
+  /* 3335 */ 'c', 'p', 's', 'd', 'r', 9, 0,
+  /* 3342 */ 'l', 'z', 'd', 'r', 9, 0,
+  /* 3348 */ 'b', 'e', 'r', 9, 0,
+  /* 3353 */ 'b', 'h', 'e', 'r', 9, 0,
+  /* 3359 */ 'b', 'n', 'h', 'e', 'r', 9, 0,
+  /* 3366 */ 'b', 'l', 'e', 'r', 9, 0,
+  /* 3372 */ 'b', 'n', 'l', 'e', 'r', 9, 0,
+  /* 3379 */ 'b', 'n', 'e', 'r', 9, 0,
+  /* 3385 */ 'l', 'z', 'e', 'r', 9, 0,
+  /* 3391 */ 'a', 'g', 'f', 'r', 9, 0,
+  /* 3397 */ 'l', 'c', 'g', 'f', 'r', 9, 0,
+  /* 3404 */ 'a', 'l', 'g', 'f', 'r', 9, 0,
+  /* 3411 */ 'c', 'l', 'g', 'f', 'r', 9, 0,
+  /* 3418 */ 'l', 'l', 'g', 'f', 'r', 9, 0,
+  /* 3425 */ 's', 'l', 'g', 'f', 'r', 9, 0,
+  /* 3432 */ 'l', 'n', 'g', 'f', 'r', 9, 0,
+  /* 3439 */ 'l', 'p', 'g', 'f', 'r', 9, 0,
+  /* 3446 */ 'd', 's', 'g', 'f', 'r', 9, 0,
+  /* 3453 */ 'm', 's', 'g', 'f', 'r', 9, 0,
+  /* 3460 */ 'l', 't', 'g', 'f', 'r', 9, 0,
+  /* 3467 */ 'a', 'g', 'r', 9, 0,
+  /* 3472 */ 's', 'l', 'b', 'g', 'r', 9, 0,
+  /* 3479 */ 'a', 'l', 'c', 'g', 'r', 9, 0,
+  /* 3486 */ 'l', 'o', 'c', 'g', 'r', 9, 0,
+  /* 3493 */ 'l', 'd', 'g', 'r', 9, 0,
+  /* 3499 */ 'a', 'l', 'g', 'r', 9, 0,
+  /* 3505 */ 'c', 'l', 'g', 'r', 9, 0,
+  /* 3511 */ 'd', 'l', 'g', 'r', 9, 0,
+  /* 3517 */ 'm', 'l', 'g', 'r', 9, 0,
+  /* 3523 */ 's', 'l', 'g', 'r', 9, 0,
+  /* 3529 */ 'l', 'n', 'g', 'r', 9, 0,
+  /* 3535 */ 'f', 'l', 'o', 'g', 'r', 9, 0,
+  /* 3542 */ 'l', 'p', 'g', 'r', 9, 0,
+  /* 3548 */ 'd', 's', 'g', 'r', 9, 0,
+  /* 3554 */ 'm', 's', 'g', 'r', 9, 0,
+  /* 3560 */ 'l', 't', 'g', 'r', 9, 0,
+  /* 3566 */ 'l', 'r', 'v', 'g', 'r', 9, 0,
+  /* 3573 */ 'x', 'g', 'r', 9, 0,
+  /* 3578 */ 'b', 'h', 'r', 9, 0,
+  /* 3583 */ 'l', 'l', 'g', 'h', 'r', 9, 0,
+  /* 3590 */ 'b', 'l', 'h', 'r', 9, 0,
+  /* 3596 */ 'l', 'l', 'h', 'r', 9, 0,
+  /* 3602 */ 'b', 'n', 'l', 'h', 'r', 9, 0,
+  /* 3609 */ 'b', 'n', 'h', 'r', 9, 0,
+  /* 3615 */ 'a', 'l', 'r', 9, 0,
+  /* 3620 */ 'b', 'l', 'r', 9, 0,
+  /* 3625 */ 'c', 'l', 'r', 9, 0,
+  /* 3630 */ 'd', 'l', 'r', 9, 0,
+  /* 3635 */ 'b', 'n', 'l', 'r', 9, 0,
+  /* 3641 */ 's', 'l', 'r', 9, 0,
+  /* 3646 */ 'l', 'n', 'r', 9, 0,
+  /* 3651 */ 'b', 'o', 'r', 9, 0,
+  /* 3656 */ 'b', 'n', 'o', 'r', 9, 0,
+  /* 3662 */ 'l', 'p', 'r', 9, 0,
+  /* 3667 */ 'b', 'a', 's', 'r', 9, 0,
+  /* 3673 */ 'm', 's', 'r', 9, 0,
+  /* 3678 */ 'l', 't', 'r', 9, 0,
+  /* 3683 */ 'l', 'r', 'v', 'r', 9, 0,
+  /* 3689 */ 'l', 'x', 'r', 9, 0,
+  /* 3694 */ 'l', 'z', 'x', 'r', 9, 0,
+  /* 3700 */ 'b', 'r', 'a', 's', 9, 0,
+  /* 3706 */ 'c', 's', 9, 0,
+  /* 3710 */ 'm', 's', 9, 0,
+  /* 3714 */ 'b', 'r', 'c', 't', 9, 0,
+  /* 3720 */ 'l', 't', 9, 0,
+  /* 3724 */ 'c', 'l', 's', 't', 9, 0,
+  /* 3730 */ 's', 'r', 's', 't', 9, 0,
+  /* 3736 */ 'm', 'v', 's', 't', 9, 0,
+  /* 3742 */ 'l', 'r', 'v', 9, 0,
+  /* 3747 */ 's', 't', 'r', 'v', 9, 0,
+  /* 3753 */ 'l', 'a', 'x', 9, 0,
+  /* 3758 */ 'l', 'a', 'y', 9, 0,
+  /* 3763 */ 'i', 'c', 'y', 9, 0,
+  /* 3768 */ 's', 't', 'c', 'y', 9, 0,
+  /* 3774 */ 'l', 'd', 'y', 9, 0,
+  /* 3779 */ 's', 't', 'd', 'y', 9, 0,
+  /* 3785 */ 'l', 'e', 'y', 9, 0,
+  /* 3790 */ 's', 't', 'e', 'y', 9, 0,
+  /* 3796 */ 'a', 'h', 'y', 9, 0,
+  /* 3801 */ 'c', 'h', 'y', 9, 0,
+  /* 3806 */ 'l', 'h', 'y', 9, 0,
+  /* 3811 */ 'm', 'h', 'y', 9, 0,
+  /* 3816 */ 's', 'h', 'y', 9, 0,
+  /* 3821 */ 's', 't', 'h', 'y', 9, 0,
+  /* 3827 */ 'c', 'l', 'i', 'y', 9, 0,
+  /* 3833 */ 'n', 'i', 'y', 9, 0,
+  /* 3838 */ 'o', 'i', 'y', 9, 0,
+  /* 3843 */ 'm', 'v', 'i', 'y', 9, 0,
+  /* 3849 */ 'x', 'i', 'y', 9, 0,
+  /* 3854 */ 'a', 'l', 'y', 9, 0,
+  /* 3859 */ 'c', 'l', 'y', 9, 0,
+  /* 3864 */ 's', 'l', 'y', 9, 0,
+  /* 3869 */ 't', 'm', 'y', 9, 0,
+  /* 3874 */ 'n', 'y', 9, 0,
+  /* 3878 */ 'o', 'y', 9, 0,
+  /* 3882 */ 'c', 's', 'y', 9, 0,
+  /* 3887 */ 'm', 's', 'y', 9, 0,
+  /* 3892 */ 's', 't', 'y', 9, 0,
+  /* 3897 */ 'x', 'y', 9, 0,
+  /* 3901 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
+  /* 3914 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
+  /* 3921 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
+  /* 3931 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
+  /* 3946 */ 'l', 'o', 'c', 0,
+  /* 3950 */ 's', 't', 'o', 'c', 0,
+  /* 3955 */ 'l', 'o', 'c', 'g', 0,
+  /* 3960 */ 's', 't', 'o', 'c', 'g', 0,
+  /* 3966 */ 'j', 'g', 0,
+  /* 3969 */ 'c', 'i', 'j', 0,
+  /* 3973 */ 'c', 'g', 'i', 'j', 0,
+  /* 3978 */ 'c', 'l', 'g', 'i', 'j', 0,
+  /* 3984 */ 'c', 'l', 'i', 'j', 0,
+  /* 3989 */ 'c', 'r', 'j', 0,
+  /* 3993 */ 'c', 'g', 'r', 'j', 0,
+  /* 3998 */ 'c', 'l', 'g', 'r', 'j', 0,
+  /* 4004 */ 'c', 'l', 'r', 'j', 0,
+  /* 4009 */ 'l', 'o', 'c', 'r', 0,
+  /* 4014 */ 'l', 'o', 'c', 'g', 'r', 0,
+  };
+#endif
+
+  // Emit the opcode for the instruction.
+  uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
+  // assert(Bits != 0 && "Cannot print this instruction.");
+#ifndef CAPSTONE_DIET
+  SStream_concat(O, "%s", AsmStrs+(Bits & 4095)-1);
+#endif
+
+
+  // Fragment 0 encoded into 4 bits for 11 unique commands.
+  //printf("Frag-0: %"PRIu64"\n", (Bits >> 12) & 15);
+  switch ((Bits >> 12) & 15) {
+  default:   // unreachable.
+  case 0:
+    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END
+    return;
+    break;
+  case 1:
+    // A, ADB, ADBR, AEB, AEBR, AFI, AG, AGF, AGFI, AGFR, AGHI, AGHIK, AGR, A...
+    printOperand(MI, 0, O); 
+    break;
+  case 2:
+    // AGSI, ASI, CGHSI, CHHSI, CHSI, CLFHSI, CLGHSI, CLHHSI, CLI, CLIY, MVGH...
+    printBDAddrOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 3:
+    // AsmBCR, AsmBRC, AsmBRCL, PFD, PFDRL
+    printU4ImmOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 4:
+    // AsmEJ, AsmEJG, AsmHEJ, AsmHEJG, AsmHJ, AsmHJG, AsmLEJ, AsmLEJG, AsmLHJ...
+    printPCRelOperand(MI, 0, O); 
+    return;
+    break;
+  case 5:
+    // BRC, BRCL
+    printCond4Operand(MI, 1, O); 
+    SStream_concat(O, "%s", "\t"); 
+    printPCRelOperand(MI, 2, O); 
+    return;
+    break;
+  case 6:
+    // CGIJ, CGRJ, CIJ, CLGIJ, CLGRJ, CLIJ, CLRJ, CRJ
+    printCond4Operand(MI, 2, O); 
+    SStream_concat(O, "%s", "\t"); 
+    printOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 7:
+    // CLC, MVC, NC, OC, XC
+    printBDLAddrOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    printBDAddrOperand(MI, 3, O); 
+    return;
+    break;
+  case 8:
+    // LOC, LOCG
+    printCond4Operand(MI, 5, O); 
+    SStream_concat(O, "%s", "\t"); 
+    printOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    printBDAddrOperand(MI, 2, O); 
+    return;
+    break;
+  case 9:
+    // LOCGR, LOCR
+    printCond4Operand(MI, 3, O); 
+    SStream_concat(O, "%s", "\t"); 
+    printOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 10:
+    // STOC, STOCG
+    printCond4Operand(MI, 4, O); 
+    SStream_concat(O, "%s", "\t"); 
+    printOperand(MI, 0, O); 
+    SStream_concat(O, "%s", ", "); 
+    printBDAddrOperand(MI, 1, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 1 encoded into 4 bits for 11 unique commands.
+  //printf("Frag-1: %"PRIu64"\n", (Bits >> 16) & 15);
+  switch ((Bits >> 16) & 15) {
+  default:   // unreachable.
+  case 0:
+    // A, ADB, ADBR, AEB, AEBR, AFI, AG, AGF, AGFI, AGFR, AGHI, AGHIK, AGR, A...
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 1:
+    // AGSI, ASI
+    printS8ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 2:
+    // AsmBCR, CGRJ, CLGRJ, CLRJ, CRJ
+    printOperand(MI, 1, O); 
+    break;
+  case 3:
+    // AsmBRC, AsmBRCL, PFDRL
+    printPCRelOperand(MI, 1, O); 
+    return;
+    break;
+  case 4:
+    // AsmEBR, AsmHBR, AsmHEBR, AsmLBR, AsmLEBR, AsmLHBR, AsmNEBR, AsmNHBR, A...
+    return;
+    break;
+  case 5:
+    // CGHSI, CHHSI, CHSI, MVGHI, MVHHI, MVHI
+    printS16ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 6:
+    // CGIJ, CIJ
+    printS8ImmOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printPCRelOperand(MI, 3, O); 
+    return;
+    break;
+  case 7:
+    // CLFHSI, CLGHSI, CLHHSI
+    printU16ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 8:
+    // CLGIJ, CLIJ
+    printU8ImmOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printPCRelOperand(MI, 3, O); 
+    return;
+    break;
+  case 9:
+    // CLI, CLIY, MVI, MVIY, NI, NIY, OI, OIY, TM, TMY, XI, XIY
+    printU8ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 10:
+    // PFD
+    printBDXAddrOperand(MI, 1, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 2 encoded into 5 bits for 22 unique commands.
+  //printf("Frag-2: %"PRIu64"\n", (Bits >> 20) & 31);
+  switch ((Bits >> 20) & 31) {
+  default:   // unreachable.
+  case 0:
+    // A, ADB, AEB, AG, AGF, AH, AHY, AL, ALC, ALCG, ALG, ALGF, ALY, AY, DDB,...
+    printBDXAddrOperand(MI, 2, O); 
+    return;
+    break;
+  case 1:
+    // ADBR, AEBR, AGFR, AGR, ALCGR, ALCR, ALGFR, ALGR, ALR, AR, AXBR, AsmELO...
+    printOperand(MI, 2, O); 
+    break;
+  case 2:
+    // AFI, AGFI, AIH, MSFI, MSGFI
+    printS32ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 3:
+    // AGHI, AHI, MGHI, MHI
+    printS16ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 4:
+    // AGHIK, AGRK, AHIK, ALGHSIK, ALGRK, ALHSIK, ALRK, ARK, AsmCGRJ, AsmCLGR...
+    printOperand(MI, 1, O); 
+    break;
+  case 5:
+    // ALFI, ALGFI, NIHF, NILF, OIHF, OILF, SLFI, SLGFI, XIHF, XILF
+    printU32ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 6:
+    // AsmBCR
+    return;
+    break;
+  case 7:
+    // AsmCGIJ, AsmCIJ, AsmJEAltCGI, AsmJEAltCI, AsmJECGI, AsmJECI, AsmJHAltC...
+    printS8ImmOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 8:
+    // AsmCLGIJ, AsmCLIJ, AsmJEAltCLGI, AsmJEAltCLI, AsmJECLGI, AsmJECLI, Asm...
+    printU8ImmOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 9:
+    // AsmELOC, AsmELOCG, AsmHELOC, AsmHELOCG, AsmHLOC, AsmHLOCG, AsmLELOC, A...
+    printBDAddrOperand(MI, 2, O); 
+    break;
+  case 10:
+    // AsmESTOC, AsmESTOCG, AsmHESTOC, AsmHESTOCG, AsmHSTOC, AsmHSTOCG, AsmLE...
+    printBDAddrOperand(MI, 1, O); 
+    break;
+  case 11:
+    // BRAS, BRASL, CGFRL, CGHRL, CGRL, CHRL, CLGFRL, CLGHRL, CLGRL, CLHRL, C...
+    printPCRelOperand(MI, 1, O); 
+    return;
+    break;
+  case 12:
+    // BRCT, BRCTG
+    printPCRelOperand(MI, 2, O); 
+    return;
+    break;
+  case 13:
+    // C, CDB, CEB, CG, CGF, CGH, CH, CHF, CHY, CL, CLG, CLGF, CLHF, CLY, CY,...
+    printBDXAddrOperand(MI, 1, O); 
+    return;
+    break;
+  case 14:
+    // CDLFBR, CDLGBR, CELFBR, CELGBR, CFDBR, CFEBR, CFXBR, CGDBR, CGEBR, CGX...
+    printU4ImmOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 2, O); 
+    break;
+  case 15:
+    // CFI, CGFI, CIH, LGFI
+    printS32ImmOperand(MI, 1, O); 
+    return;
+    break;
+  case 16:
+    // CGHI, CHI, LGHI, LHI
+    printS16ImmOperand(MI, 1, O); 
+    return;
+    break;
+  case 17:
+    // CGRJ, CLGRJ, CLRJ, CRJ
+    SStream_concat(O, "%s", ", "); 
+    printPCRelOperand(MI, 3, O); 
+    return;
+    break;
+  case 18:
+    // CLFI, CLGFI, CLIH, IIHF, IILF, LLIHF, LLILF
+    printU32ImmOperand(MI, 1, O); 
+    return;
+    break;
+  case 19:
+    // EAR
+    printAccessRegOperand(MI, 1, O); 
+    return;
+    break;
+  case 20:
+    // IIHH, IIHL, IILH, IILL, NIHH, NIHL, NILH, NILL, OIHH, OIHL, OILH, OILL
+    printU16ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 21:
+    // LLIHH, LLIHL, LLILH, LLILL, TMHH, TMHL, TMLH, TMLL
+    printU16ImmOperand(MI, 1, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 3 encoded into 2 bits for 4 unique commands.
+  //printf("Frag-3: %"PRIu64"\n", (Bits >> 25) & 3);
+  switch ((Bits >> 25) & 3) {
+  default:   // unreachable.
+  case 0:
+    // ADBR, AEBR, AGFR, AGR, ALCGR, ALCR, ALGFR, ALGR, ALR, AR, AXBR, AsmELO...
+    return;
+    break;
+  case 1:
+    // AGHIK, AGRK, AHIK, ALGHSIK, ALGRK, ALHSIK, ALRK, ARK, AsmCGRJ, AsmCLGR...
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 2:
+    // AsmCGIJ, AsmCIJ, AsmCLGIJ, AsmCLIJ
+    printU4ImmOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printPCRelOperand(MI, 3, O); 
+    return;
+    break;
+  case 3:
+    // AsmJEAltCGI, AsmJEAltCI, AsmJEAltCLGI, AsmJEAltCLI, AsmJECGI, AsmJECI,...
+    printPCRelOperand(MI, 2, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 4 encoded into 4 bits for 11 unique commands.
+  //printf("Frag-4: %"PRIu64"\n", (Bits >> 27) & 15);
+  switch ((Bits >> 27) & 15) {
+  default:   // unreachable.
+  case 0:
+    // AGHIK, AHIK, ALGHSIK, ALHSIK
+    printS16ImmOperand(MI, 2, O); 
+    return;
+    break;
+  case 1:
+    // AGRK, ALGRK, ALRK, ARK, CPSDRdd, CPSDRds, CPSDRsd, CPSDRss, NGRK, NRK,...
+    printOperand(MI, 2, O); 
+    return;
+    break;
+  case 2:
+    // AsmCGRJ, AsmCLGRJ, AsmCLRJ, AsmCRJ
+    printU4ImmOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printPCRelOperand(MI, 3, O); 
+    return;
+    break;
+  case 3:
+    // AsmJEAltCGR, AsmJEAltCLGR, AsmJEAltCLR, AsmJEAltCR, AsmJECGR, AsmJECLG...
+    printPCRelOperand(MI, 2, O); 
+    return;
+    break;
+  case 4:
+    // AsmLOC, AsmLOCG
+    printU4ImmOperand(MI, 4, O); 
+    return;
+    break;
+  case 5:
+    // AsmLOCGR, AsmLOCR, AsmSTOC, AsmSTOCG, CDLFBR, CDLGBR, CELFBR, CELGBR, ...
+    printU4ImmOperand(MI, 3, O); 
+    return;
+    break;
+  case 6:
+    // CS, CSG, CSY
+    printBDAddrOperand(MI, 3, O); 
+    return;
+    break;
+  case 7:
+    // LAA, LAAG, LAAL, LAALG, LAN, LANG, LAO, LAOG, LAX, LAXG, LMG, RLL, RLL...
+    printBDAddrOperand(MI, 2, O); 
+    return;
+    break;
+  case 8:
+    // MADB, MAEB, MSDB, MSEB
+    printBDXAddrOperand(MI, 3, O); 
+    return;
+    break;
+  case 9:
+    // MADBR, MAEBR, MSDBR, MSEBR
+    printOperand(MI, 3, O); 
+    return;
+    break;
+  case 10:
+    // RISBG, RISBG32, RISBHG, RISBLG, RNSBG, ROSBG, RXSBG
+    printU8ImmOperand(MI, 3, O); 
+    SStream_concat(O, "%s", ", "); 
+    printU8ImmOperand(MI, 4, O); 
+    SStream_concat(O, "%s", ", "); 
+    printU6ImmOperand(MI, 5, O); 
+    return;
+    break;
+  }
+}
+
+
+/// getRegisterName - This method is automatically generated by tblgen
+/// from the register set description.  This returns the assembler name
+/// for the specified register.
+static const char *getRegisterName(unsigned RegNo)
+{
+  // assert(RegNo && RegNo < 119 && "Invalid register number!");
+
+#ifndef CAPSTONE_DIET
+  static const char AsmStrs[] = {
+  /* 0 */ 'f', '1', '0', 0,
+  /* 4 */ 'r', '1', '0', 0,
+  /* 8 */ 'f', '0', 0,
+  /* 11 */ 'r', '0', 0,
+  /* 14 */ 'f', '1', '1', 0,
+  /* 18 */ 'r', '1', '1', 0,
+  /* 22 */ 'f', '1', 0,
+  /* 25 */ 'r', '1', 0,
+  /* 28 */ 'f', '1', '2', 0,
+  /* 32 */ 'r', '1', '2', 0,
+  /* 36 */ 'f', '2', 0,
+  /* 39 */ 'r', '2', 0,
+  /* 42 */ 'f', '1', '3', 0,
+  /* 46 */ 'r', '1', '3', 0,
+  /* 50 */ 'f', '3', 0,
+  /* 53 */ 'r', '3', 0,
+  /* 56 */ 'f', '1', '4', 0,
+  /* 60 */ 'r', '1', '4', 0,
+  /* 64 */ 'f', '4', 0,
+  /* 67 */ 'r', '4', 0,
+  /* 70 */ 'f', '1', '5', 0,
+  /* 74 */ 'r', '1', '5', 0,
+  /* 78 */ 'f', '5', 0,
+  /* 81 */ 'r', '5', 0,
+  /* 84 */ 'f', '6', 0,
+  /* 87 */ 'r', '6', 0,
+  /* 90 */ 'f', '7', 0,
+  /* 93 */ 'r', '7', 0,
+  /* 96 */ 'f', '8', 0,
+  /* 99 */ 'r', '8', 0,
+  /* 102 */ 'f', '9', 0,
+  /* 105 */ 'r', '9', 0,
+  /* 108 */ 'c', 'c', 0,
+  };
+
+  static const uint32_t RegAsmOffset[] = {
+    108, 8, 22, 36, 50, 64, 78, 84, 90, 96, 102, 0, 14, 28, 
+    42, 56, 70, 8, 22, 64, 78, 96, 102, 28, 42, 8, 22, 36, 
+    50, 64, 78, 84, 90, 96, 102, 0, 14, 28, 42, 56, 70, 11, 
+    25, 39, 53, 67, 81, 87, 93, 99, 105, 4, 18, 32, 46, 60, 
+    74, 11, 25, 39, 53, 67, 81, 87, 93, 99, 105, 4, 18, 32, 
+    46, 60, 74, 11, 25, 39, 53, 67, 81, 87, 93, 99, 105, 4, 
+    18, 32, 46, 60, 74, 11, 39, 67, 87, 99, 4, 32, 60, 
+  };
+
+  //int i;
+  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
+  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
+  //printf("*************************\n");
+  return AsmStrs+RegAsmOffset[RegNo-1];
+#else
+  return NULL;
+#endif
+}
diff --git a/arch/SystemZ/SystemZGenDisassemblerTables.inc b/arch/SystemZ/SystemZGenDisassemblerTables.inc
new file mode 100644
index 0000000..3650ed7
--- /dev/null
+++ b/arch/SystemZ/SystemZGenDisassemblerTables.inc
@@ -0,0 +1,3000 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|* * Sparc Disassembler                                                         *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include "../../MCInst.h"
+#include "../../LEB128.h"
+
+// Helper function for extracting fields from encoded instructions.
+#define FieldFromInstruction(fname, InsnType) \
+static InsnType fname(InsnType insn, unsigned startBit, unsigned numBits) \
+{ \
+  InsnType fieldMask; \
+  if (numBits == sizeof(InsnType)*8) \
+    fieldMask = (InsnType)(-1LL); \
+  else \
+    fieldMask = (((InsnType)1 << numBits) - 1) << startBit; \
+  return (insn & fieldMask) >> startBit; \
+}
+
+static uint8_t DecoderTable16[] = {
+/* 0 */       MCD_OPC_ExtractField, 8, 8,  // Inst{15-8} ...
+/* 3 */       MCD_OPC_FilterValue, 7, 127, 0, // Skip to: 134
+/* 7 */       MCD_OPC_ExtractField, 4, 4,  // Inst{7-4} ...
+/* 10 */      MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 18
+/* 14 */      MCD_OPC_Decode, 241, 2, 0, // Opcode: AsmOBR
+/* 18 */      MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 26
+/* 22 */      MCD_OPC_Decode, 161, 1, 0, // Opcode: AsmHBR
+/* 26 */      MCD_OPC_FilterValue, 3, 4, 0, // Skip to: 34
+/* 30 */      MCD_OPC_Decode, 206, 2, 0, // Opcode: AsmNLEBR
+/* 34 */      MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 42
+/* 38 */      MCD_OPC_Decode, 147, 2, 0, // Opcode: AsmLBR
+/* 42 */      MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 50
+/* 46 */      MCD_OPC_Decode, 188, 2, 0, // Opcode: AsmNHEBR
+/* 50 */      MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 58
+/* 54 */      MCD_OPC_Decode, 157, 2, 0, // Opcode: AsmLHBR
+/* 58 */      MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 66
+/* 62 */      MCD_OPC_Decode, 178, 2, 0, // Opcode: AsmNEBR
+/* 66 */      MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 74
+/* 70 */      MCD_OPC_Decode, 152, 1, 0, // Opcode: AsmEBR
+/* 74 */      MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 82
+/* 78 */      MCD_OPC_Decode, 215, 2, 0, // Opcode: AsmNLHBR
+/* 82 */      MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 90
+/* 86 */      MCD_OPC_Decode, 162, 1, 0, // Opcode: AsmHEBR
+/* 90 */      MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 98
+/* 94 */      MCD_OPC_Decode, 205, 2, 0, // Opcode: AsmNLBR
+/* 98 */      MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 106
+/* 102 */     MCD_OPC_Decode, 148, 2, 0, // Opcode: AsmLEBR
+/* 106 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 114
+/* 110 */     MCD_OPC_Decode, 187, 2, 0, // Opcode: AsmNHBR
+/* 114 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 122
+/* 118 */     MCD_OPC_Decode, 232, 2, 0, // Opcode: AsmNOBR
+/* 122 */     MCD_OPC_FilterValue, 15, 4, 0, // Skip to: 130
+/* 126 */     MCD_OPC_Decode, 253, 2, 0, // Opcode: BR
+/* 130 */     MCD_OPC_Decode, 141, 1, 1, // Opcode: AsmBCR
+/* 134 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 142
+/* 138 */     MCD_OPC_Decode, 252, 2, 2, // Opcode: BASR
+/* 142 */     MCD_OPC_FilterValue, 16, 4, 0, // Skip to: 150
+/* 146 */     MCD_OPC_Decode, 138, 5, 3, // Opcode: LPR
+/* 150 */     MCD_OPC_FilterValue, 17, 4, 0, // Skip to: 158
+/* 154 */     MCD_OPC_Decode, 128, 5, 3, // Opcode: LNR
+/* 158 */     MCD_OPC_FilterValue, 18, 4, 0, // Skip to: 166
+/* 162 */     MCD_OPC_Decode, 156, 5, 3, // Opcode: LTR
+/* 166 */     MCD_OPC_FilterValue, 19, 4, 0, // Skip to: 174
+/* 170 */     MCD_OPC_Decode, 188, 4, 3, // Opcode: LCR
+/* 174 */     MCD_OPC_FilterValue, 20, 4, 0, // Skip to: 182
+/* 178 */     MCD_OPC_Decode, 235, 5, 4, // Opcode: NR
+/* 182 */     MCD_OPC_FilterValue, 21, 4, 0, // Skip to: 190
+/* 186 */     MCD_OPC_Decode, 207, 3, 3, // Opcode: CLR
+/* 190 */     MCD_OPC_FilterValue, 22, 4, 0, // Skip to: 198
+/* 194 */     MCD_OPC_Decode, 134, 6, 4, // Opcode: OR
+/* 198 */     MCD_OPC_FilterValue, 23, 4, 0, // Skip to: 206
+/* 202 */     MCD_OPC_Decode, 133, 7, 4, // Opcode: XR
+/* 206 */     MCD_OPC_FilterValue, 24, 4, 0, // Skip to: 214
+/* 210 */     MCD_OPC_Decode, 140, 5, 3, // Opcode: LR
+/* 214 */     MCD_OPC_FilterValue, 25, 4, 0, // Skip to: 222
+/* 218 */     MCD_OPC_Decode, 218, 3, 3, // Opcode: CR
+/* 222 */     MCD_OPC_FilterValue, 26, 3, 0, // Skip to: 229
+/* 226 */     MCD_OPC_Decode, 63, 4, // Opcode: AR
+/* 229 */     MCD_OPC_FilterValue, 27, 4, 0, // Skip to: 237
+/* 233 */     MCD_OPC_Decode, 189, 6, 4, // Opcode: SR
+/* 237 */     MCD_OPC_FilterValue, 30, 3, 0, // Skip to: 244
+/* 241 */     MCD_OPC_Decode, 60, 4, // Opcode: ALR
+/* 244 */     MCD_OPC_FilterValue, 31, 4, 0, // Skip to: 252
+/* 248 */     MCD_OPC_Decode, 181, 6, 4, // Opcode: SLR
+/* 252 */     MCD_OPC_FilterValue, 40, 4, 0, // Skip to: 260
+/* 256 */     MCD_OPC_Decode, 194, 4, 5, // Opcode: LDR
+/* 260 */     MCD_OPC_FilterValue, 56, 4, 0, // Skip to: 268
+/* 264 */     MCD_OPC_Decode, 199, 4, 6, // Opcode: LER
+/* 268 */     MCD_OPC_Fail,
+  0
+};
+
+static uint8_t DecoderTable32[] = {
+/* 0 */       MCD_OPC_ExtractField, 24, 8,  // Inst{31-24} ...
+/* 3 */       MCD_OPC_FilterValue, 64, 4, 0, // Skip to: 11
+/* 7 */       MCD_OPC_Decode, 212, 6, 7, // Opcode: STH
+/* 11 */      MCD_OPC_FilterValue, 65, 4, 0, // Skip to: 19
+/* 15 */      MCD_OPC_Decode, 167, 4, 8, // Opcode: LA
+/* 19 */      MCD_OPC_FilterValue, 66, 4, 0, // Skip to: 27
+/* 23 */      MCD_OPC_Decode, 201, 6, 7, // Opcode: STC
+/* 27 */      MCD_OPC_FilterValue, 67, 4, 0, // Skip to: 35
+/* 31 */      MCD_OPC_Decode, 143, 4, 9, // Opcode: IC
+/* 35 */      MCD_OPC_FilterValue, 72, 4, 0, // Skip to: 43
+/* 39 */      MCD_OPC_Decode, 217, 4, 7, // Opcode: LH
+/* 43 */      MCD_OPC_FilterValue, 73, 4, 0, // Skip to: 51
+/* 47 */      MCD_OPC_Decode, 166, 3, 7, // Opcode: CH
+/* 51 */      MCD_OPC_FilterValue, 74, 3, 0, // Skip to: 58
+/* 55 */      MCD_OPC_Decode, 39, 10, // Opcode: AH
+/* 58 */      MCD_OPC_FilterValue, 75, 4, 0, // Skip to: 66
+/* 62 */      MCD_OPC_Decode, 164, 6, 10, // Opcode: SH
+/* 66 */      MCD_OPC_FilterValue, 76, 4, 0, // Skip to: 74
+/* 70 */      MCD_OPC_Decode, 180, 5, 10, // Opcode: MH
+/* 74 */      MCD_OPC_FilterValue, 80, 4, 0, // Skip to: 82
+/* 78 */      MCD_OPC_Decode, 199, 6, 7, // Opcode: ST
+/* 82 */      MCD_OPC_FilterValue, 84, 4, 0, // Skip to: 90
+/* 86 */      MCD_OPC_Decode, 211, 5, 10, // Opcode: N
+/* 90 */      MCD_OPC_FilterValue, 85, 4, 0, // Skip to: 98
+/* 94 */      MCD_OPC_Decode, 175, 3, 7, // Opcode: CL
+/* 98 */      MCD_OPC_FilterValue, 86, 4, 0, // Skip to: 106
+/* 102 */     MCD_OPC_Decode, 238, 5, 10, // Opcode: O
+/* 106 */     MCD_OPC_FilterValue, 87, 4, 0, // Skip to: 114
+/* 110 */     MCD_OPC_Decode, 247, 6, 10, // Opcode: X
+/* 114 */     MCD_OPC_FilterValue, 88, 4, 0, // Skip to: 122
+/* 118 */     MCD_OPC_Decode, 165, 4, 7, // Opcode: L
+/* 122 */     MCD_OPC_FilterValue, 89, 4, 0, // Skip to: 130
+/* 126 */     MCD_OPC_Decode, 132, 3, 7, // Opcode: C
+/* 130 */     MCD_OPC_FilterValue, 90, 3, 0, // Skip to: 137
+/* 134 */     MCD_OPC_Decode, 19, 10, // Opcode: A
+/* 137 */     MCD_OPC_FilterValue, 91, 4, 0, // Skip to: 145
+/* 141 */     MCD_OPC_Decode, 154, 6, 10, // Opcode: S
+/* 145 */     MCD_OPC_FilterValue, 94, 3, 0, // Skip to: 152
+/* 149 */     MCD_OPC_Decode, 46, 10, // Opcode: AL
+/* 152 */     MCD_OPC_FilterValue, 95, 4, 0, // Skip to: 160
+/* 156 */     MCD_OPC_Decode, 166, 6, 10, // Opcode: SL
+/* 160 */     MCD_OPC_FilterValue, 96, 4, 0, // Skip to: 168
+/* 164 */     MCD_OPC_Decode, 205, 6, 11, // Opcode: STD
+/* 168 */     MCD_OPC_FilterValue, 104, 4, 0, // Skip to: 176
+/* 172 */     MCD_OPC_Decode, 190, 4, 11, // Opcode: LD
+/* 176 */     MCD_OPC_FilterValue, 112, 4, 0, // Skip to: 184
+/* 180 */     MCD_OPC_Decode, 207, 6, 12, // Opcode: STE
+/* 184 */     MCD_OPC_FilterValue, 113, 4, 0, // Skip to: 192
+/* 188 */     MCD_OPC_Decode, 185, 5, 10, // Opcode: MS
+/* 192 */     MCD_OPC_FilterValue, 120, 4, 0, // Skip to: 200
+/* 196 */     MCD_OPC_Decode, 197, 4, 12, // Opcode: LE
+/* 200 */     MCD_OPC_FilterValue, 136, 1, 10, 0, // Skip to: 215
+/* 205 */     MCD_OPC_CheckField, 16, 4, 0, 194, 11, // Skip to: 3221
+/* 211 */     MCD_OPC_Decode, 194, 6, 13, // Opcode: SRL
+/* 215 */     MCD_OPC_FilterValue, 137, 1, 10, 0, // Skip to: 230
+/* 220 */     MCD_OPC_CheckField, 16, 4, 0, 179, 11, // Skip to: 3221
+/* 226 */     MCD_OPC_Decode, 178, 6, 13, // Opcode: SLL
+/* 230 */     MCD_OPC_FilterValue, 138, 1, 10, 0, // Skip to: 245
+/* 235 */     MCD_OPC_CheckField, 16, 4, 0, 164, 11, // Skip to: 3221
+/* 241 */     MCD_OPC_Decode, 190, 6, 13, // Opcode: SRA
+/* 245 */     MCD_OPC_FilterValue, 145, 1, 4, 0, // Skip to: 254
+/* 250 */     MCD_OPC_Decode, 235, 6, 14, // Opcode: TM
+/* 254 */     MCD_OPC_FilterValue, 146, 1, 4, 0, // Skip to: 263
+/* 259 */     MCD_OPC_Decode, 204, 5, 14, // Opcode: MVI
+/* 263 */     MCD_OPC_FilterValue, 148, 1, 4, 0, // Skip to: 272
+/* 268 */     MCD_OPC_Decode, 218, 5, 14, // Opcode: NI
+/* 272 */     MCD_OPC_FilterValue, 149, 1, 4, 0, // Skip to: 281
+/* 277 */     MCD_OPC_Decode, 202, 3, 14, // Opcode: CLI
+/* 281 */     MCD_OPC_FilterValue, 150, 1, 4, 0, // Skip to: 290
+/* 286 */     MCD_OPC_Decode, 245, 5, 14, // Opcode: OI
+/* 290 */     MCD_OPC_FilterValue, 151, 1, 4, 0, // Skip to: 299
+/* 295 */     MCD_OPC_Decode, 254, 6, 14, // Opcode: XI
+/* 299 */     MCD_OPC_FilterValue, 165, 1, 131, 0, // Skip to: 435
+/* 304 */     MCD_OPC_ExtractField, 16, 4,  // Inst{19-16} ...
+/* 307 */     MCD_OPC_FilterValue, 0, 4, 0, // Skip to: 315
+/* 311 */     MCD_OPC_Decode, 150, 4, 15, // Opcode: IIHH
+/* 315 */     MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 323
+/* 319 */     MCD_OPC_Decode, 152, 4, 15, // Opcode: IIHL
+/* 323 */     MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 331
+/* 327 */     MCD_OPC_Decode, 157, 4, 16, // Opcode: IILH
+/* 331 */     MCD_OPC_FilterValue, 3, 4, 0, // Skip to: 339
+/* 335 */     MCD_OPC_Decode, 159, 4, 16, // Opcode: IILL
+/* 339 */     MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 347
+/* 343 */     MCD_OPC_Decode, 222, 5, 15, // Opcode: NIHH
+/* 347 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 355
+/* 351 */     MCD_OPC_Decode, 224, 5, 15, // Opcode: NIHL
+/* 355 */     MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 363
+/* 359 */     MCD_OPC_Decode, 229, 5, 16, // Opcode: NILH
+/* 363 */     MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 371
+/* 367 */     MCD_OPC_Decode, 231, 5, 16, // Opcode: NILL
+/* 371 */     MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 379
+/* 375 */     MCD_OPC_Decode, 249, 5, 15, // Opcode: OIHH
+/* 379 */     MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 387
+/* 383 */     MCD_OPC_Decode, 251, 5, 15, // Opcode: OIHL
+/* 387 */     MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 395
+/* 391 */     MCD_OPC_Decode, 128, 6, 16, // Opcode: OILH
+/* 395 */     MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 403
+/* 399 */     MCD_OPC_Decode, 130, 6, 16, // Opcode: OILL
+/* 403 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 411
+/* 407 */     MCD_OPC_Decode, 245, 4, 17, // Opcode: LLIHH
+/* 411 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 419
+/* 415 */     MCD_OPC_Decode, 246, 4, 17, // Opcode: LLIHL
+/* 419 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 427
+/* 423 */     MCD_OPC_Decode, 248, 4, 17, // Opcode: LLILH
+/* 427 */     MCD_OPC_FilterValue, 15, 230, 10, // Skip to: 3221
+/* 431 */     MCD_OPC_Decode, 249, 4, 17, // Opcode: LLILL
+/* 435 */     MCD_OPC_FilterValue, 167, 1, 252, 0, // Skip to: 692
+/* 440 */     MCD_OPC_ExtractField, 16, 4,  // Inst{19-16} ...
+/* 443 */     MCD_OPC_FilterValue, 0, 4, 0, // Skip to: 451
+/* 447 */     MCD_OPC_Decode, 241, 6, 18, // Opcode: TMLH
+/* 451 */     MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 459
+/* 455 */     MCD_OPC_Decode, 243, 6, 18, // Opcode: TMLL
+/* 459 */     MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 467
+/* 463 */     MCD_OPC_Decode, 236, 6, 19, // Opcode: TMHH
+/* 467 */     MCD_OPC_FilterValue, 3, 4, 0, // Skip to: 475
+/* 471 */     MCD_OPC_Decode, 238, 6, 19, // Opcode: TMHL
+/* 475 */     MCD_OPC_FilterValue, 4, 127, 0, // Skip to: 606
+/* 479 */     MCD_OPC_ExtractField, 20, 4,  // Inst{23-20} ...
+/* 482 */     MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 490
+/* 486 */     MCD_OPC_Decode, 242, 2, 20, // Opcode: AsmOJ
+/* 490 */     MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 498
+/* 494 */     MCD_OPC_Decode, 171, 1, 20, // Opcode: AsmHJ
+/* 498 */     MCD_OPC_FilterValue, 3, 4, 0, // Skip to: 506
+/* 502 */     MCD_OPC_Decode, 207, 2, 20, // Opcode: AsmNLEJ
+/* 506 */     MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 514
+/* 510 */     MCD_OPC_Decode, 166, 2, 20, // Opcode: AsmLJ
+/* 514 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 522
+/* 518 */     MCD_OPC_Decode, 189, 2, 20, // Opcode: AsmNHEJ
+/* 522 */     MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 530
+/* 526 */     MCD_OPC_Decode, 158, 2, 20, // Opcode: AsmLHJ
+/* 530 */     MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 538
+/* 534 */     MCD_OPC_Decode, 179, 2, 20, // Opcode: AsmNEJ
+/* 538 */     MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 546
+/* 542 */     MCD_OPC_Decode, 153, 1, 20, // Opcode: AsmEJ
+/* 546 */     MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 554
+/* 550 */     MCD_OPC_Decode, 216, 2, 20, // Opcode: AsmNLHJ
+/* 554 */     MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 562
+/* 558 */     MCD_OPC_Decode, 163, 1, 20, // Opcode: AsmHEJ
+/* 562 */     MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 570
+/* 566 */     MCD_OPC_Decode, 224, 2, 20, // Opcode: AsmNLJ
+/* 570 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 578
+/* 574 */     MCD_OPC_Decode, 149, 2, 20, // Opcode: AsmLEJ
+/* 578 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 586
+/* 582 */     MCD_OPC_Decode, 197, 2, 20, // Opcode: AsmNHJ
+/* 586 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 594
+/* 590 */     MCD_OPC_Decode, 233, 2, 20, // Opcode: AsmNOJ
+/* 594 */     MCD_OPC_FilterValue, 15, 4, 0, // Skip to: 602
+/* 598 */     MCD_OPC_Decode, 163, 4, 20, // Opcode: J
+/* 602 */     MCD_OPC_Decode, 142, 1, 21, // Opcode: AsmBRC
+/* 606 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 614
+/* 610 */     MCD_OPC_Decode, 254, 2, 22, // Opcode: BRAS
+/* 614 */     MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 622
+/* 618 */     MCD_OPC_Decode, 130, 3, 23, // Opcode: BRCT
+/* 622 */     MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 630
+/* 626 */     MCD_OPC_Decode, 131, 3, 24, // Opcode: BRCTG
+/* 630 */     MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 638
+/* 634 */     MCD_OPC_Decode, 219, 4, 25, // Opcode: LHI
+/* 638 */     MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 646
+/* 642 */     MCD_OPC_Decode, 212, 4, 26, // Opcode: LGHI
+/* 646 */     MCD_OPC_FilterValue, 10, 3, 0, // Skip to: 653
+/* 650 */     MCD_OPC_Decode, 40, 27, // Opcode: AHI
+/* 653 */     MCD_OPC_FilterValue, 11, 3, 0, // Skip to: 660
+/* 657 */     MCD_OPC_Decode, 34, 28, // Opcode: AGHI
+/* 660 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 668
+/* 664 */     MCD_OPC_Decode, 181, 5, 27, // Opcode: MHI
+/* 668 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 676
+/* 672 */     MCD_OPC_Decode, 179, 5, 28, // Opcode: MGHI
+/* 676 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 684
+/* 680 */     MCD_OPC_Decode, 169, 3, 25, // Opcode: CHI
+/* 684 */     MCD_OPC_FilterValue, 15, 229, 9, // Skip to: 3221
+/* 688 */     MCD_OPC_Decode, 158, 3, 26, // Opcode: CGHI
+/* 692 */     MCD_OPC_FilterValue, 178, 1, 68, 0, // Skip to: 765
+/* 697 */     MCD_OPC_ExtractField, 8, 16,  // Inst{23-8} ...
+/* 700 */     MCD_OPC_FilterValue, 128, 68, 10, 0, // Skip to: 715
+/* 705 */     MCD_OPC_CheckField, 0, 4, 0, 206, 9, // Skip to: 3221
+/* 711 */     MCD_OPC_Decode, 162, 4, 29, // Opcode: IPM
+/* 715 */     MCD_OPC_FilterValue, 128, 158, 1, 4, 0, // Skip to: 725
+/* 721 */     MCD_OPC_Decode, 135, 4, 30, // Opcode: EAR
+/* 725 */     MCD_OPC_FilterValue, 128, 164, 1, 4, 0, // Skip to: 735
+/* 731 */     MCD_OPC_Decode, 196, 5, 4, // Opcode: MSR
+/* 735 */     MCD_OPC_FilterValue, 128, 170, 1, 4, 0, // Skip to: 745
+/* 741 */     MCD_OPC_Decode, 206, 5, 31, // Opcode: MVST
+/* 745 */     MCD_OPC_FilterValue, 128, 186, 1, 4, 0, // Skip to: 755
+/* 751 */     MCD_OPC_Decode, 210, 3, 31, // Opcode: CLST
+/* 755 */     MCD_OPC_FilterValue, 128, 188, 1, 156, 9, // Skip to: 3221
+/* 761 */     MCD_OPC_Decode, 197, 6, 31, // Opcode: SRST
+/* 765 */     MCD_OPC_FilterValue, 179, 1, 85, 4, // Skip to: 1879
+/* 770 */     MCD_OPC_ExtractField, 16, 8,  // Inst{23-16} ...
+/* 773 */     MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 787
+/* 777 */     MCD_OPC_CheckField, 8, 8, 0, 134, 9, // Skip to: 3221
+/* 783 */     MCD_OPC_Decode, 135, 5, 6, // Opcode: LPEBR
+/* 787 */     MCD_OPC_FilterValue, 1, 10, 0, // Skip to: 801
+/* 791 */     MCD_OPC_CheckField, 8, 8, 0, 120, 9, // Skip to: 3221
+/* 797 */     MCD_OPC_Decode, 253, 4, 6, // Opcode: LNEBR
+/* 801 */     MCD_OPC_FilterValue, 2, 10, 0, // Skip to: 815
+/* 805 */     MCD_OPC_CheckField, 8, 8, 0, 106, 9, // Skip to: 3221
+/* 811 */     MCD_OPC_Decode, 150, 5, 6, // Opcode: LTEBR
+/* 815 */     MCD_OPC_FilterValue, 3, 10, 0, // Skip to: 829
+/* 819 */     MCD_OPC_CheckField, 8, 8, 0, 92, 9, // Skip to: 3221
+/* 825 */     MCD_OPC_Decode, 185, 4, 6, // Opcode: LCEBR
+/* 829 */     MCD_OPC_FilterValue, 4, 10, 0, // Skip to: 843
+/* 833 */     MCD_OPC_CheckField, 8, 8, 0, 78, 9, // Skip to: 3221
+/* 839 */     MCD_OPC_Decode, 192, 4, 32, // Opcode: LDEBR
+/* 843 */     MCD_OPC_FilterValue, 5, 10, 0, // Skip to: 857
+/* 847 */     MCD_OPC_CheckField, 8, 8, 0, 64, 9, // Skip to: 3221
+/* 853 */     MCD_OPC_Decode, 161, 5, 33, // Opcode: LXDBR
+/* 857 */     MCD_OPC_FilterValue, 6, 10, 0, // Skip to: 871
+/* 861 */     MCD_OPC_CheckField, 8, 8, 0, 50, 9, // Skip to: 3221
+/* 867 */     MCD_OPC_Decode, 163, 5, 34, // Opcode: LXEBR
+/* 871 */     MCD_OPC_FilterValue, 7, 10, 0, // Skip to: 885
+/* 875 */     MCD_OPC_CheckField, 8, 8, 0, 36, 9, // Skip to: 3221
+/* 881 */     MCD_OPC_Decode, 210, 5, 35, // Opcode: MXDBR
+/* 885 */     MCD_OPC_FilterValue, 9, 10, 0, // Skip to: 899
+/* 889 */     MCD_OPC_CheckField, 8, 8, 0, 22, 9, // Skip to: 3221
+/* 895 */     MCD_OPC_Decode, 140, 3, 6, // Opcode: CEBR
+/* 899 */     MCD_OPC_FilterValue, 10, 9, 0, // Skip to: 912
+/* 903 */     MCD_OPC_CheckField, 8, 8, 0, 8, 9, // Skip to: 3221
+/* 909 */     MCD_OPC_Decode, 26, 36, // Opcode: AEBR
+/* 912 */     MCD_OPC_FilterValue, 11, 10, 0, // Skip to: 926
+/* 916 */     MCD_OPC_CheckField, 8, 8, 0, 251, 8, // Skip to: 3221
+/* 922 */     MCD_OPC_Decode, 158, 6, 36, // Opcode: SEBR
+/* 926 */     MCD_OPC_FilterValue, 12, 10, 0, // Skip to: 940
+/* 930 */     MCD_OPC_CheckField, 8, 8, 0, 237, 8, // Skip to: 3221
+/* 936 */     MCD_OPC_Decode, 176, 5, 37, // Opcode: MDEBR
+/* 940 */     MCD_OPC_FilterValue, 13, 10, 0, // Skip to: 954
+/* 944 */     MCD_OPC_CheckField, 8, 8, 0, 223, 8, // Skip to: 3221
+/* 950 */     MCD_OPC_Decode, 253, 3, 36, // Opcode: DEBR
+/* 954 */     MCD_OPC_FilterValue, 14, 10, 0, // Skip to: 968
+/* 958 */     MCD_OPC_CheckField, 8, 4, 0, 209, 8, // Skip to: 3221
+/* 964 */     MCD_OPC_Decode, 172, 5, 38, // Opcode: MAEBR
+/* 968 */     MCD_OPC_FilterValue, 15, 10, 0, // Skip to: 982
+/* 972 */     MCD_OPC_CheckField, 8, 4, 0, 195, 8, // Skip to: 3221
+/* 978 */     MCD_OPC_Decode, 189, 5, 38, // Opcode: MSEBR
+/* 982 */     MCD_OPC_FilterValue, 16, 10, 0, // Skip to: 996
+/* 986 */     MCD_OPC_CheckField, 8, 8, 0, 181, 8, // Skip to: 3221
+/* 992 */     MCD_OPC_Decode, 134, 5, 5, // Opcode: LPDBR
+/* 996 */     MCD_OPC_FilterValue, 17, 10, 0, // Skip to: 1010
+/* 1000 */    MCD_OPC_CheckField, 8, 8, 0, 167, 8, // Skip to: 3221
+/* 1006 */    MCD_OPC_Decode, 252, 4, 5, // Opcode: LNDBR
+/* 1010 */    MCD_OPC_FilterValue, 18, 10, 0, // Skip to: 1024
+/* 1014 */    MCD_OPC_CheckField, 8, 8, 0, 153, 8, // Skip to: 3221
+/* 1020 */    MCD_OPC_Decode, 148, 5, 5, // Opcode: LTDBR
+/* 1024 */    MCD_OPC_FilterValue, 19, 10, 0, // Skip to: 1038
+/* 1028 */    MCD_OPC_CheckField, 8, 8, 0, 139, 8, // Skip to: 3221
+/* 1034 */    MCD_OPC_Decode, 184, 4, 5, // Opcode: LCDBR
+/* 1038 */    MCD_OPC_FilterValue, 20, 10, 0, // Skip to: 1052
+/* 1042 */    MCD_OPC_CheckField, 8, 8, 0, 125, 8, // Skip to: 3221
+/* 1048 */    MCD_OPC_Decode, 187, 6, 6, // Opcode: SQEBR
+/* 1052 */    MCD_OPC_FilterValue, 21, 10, 0, // Skip to: 1066
+/* 1056 */    MCD_OPC_CheckField, 8, 8, 0, 111, 8, // Skip to: 3221
+/* 1062 */    MCD_OPC_Decode, 185, 6, 5, // Opcode: SQDBR
+/* 1066 */    MCD_OPC_FilterValue, 22, 10, 0, // Skip to: 1080
+/* 1070 */    MCD_OPC_CheckField, 8, 8, 0, 97, 8, // Skip to: 3221
+/* 1076 */    MCD_OPC_Decode, 188, 6, 39, // Opcode: SQXBR
+/* 1080 */    MCD_OPC_FilterValue, 23, 10, 0, // Skip to: 1094
+/* 1084 */    MCD_OPC_CheckField, 8, 8, 0, 83, 8, // Skip to: 3221
+/* 1090 */    MCD_OPC_Decode, 178, 5, 36, // Opcode: MEEBR
+/* 1094 */    MCD_OPC_FilterValue, 25, 10, 0, // Skip to: 1108
+/* 1098 */    MCD_OPC_CheckField, 8, 8, 0, 69, 8, // Skip to: 3221
+/* 1104 */    MCD_OPC_Decode, 134, 3, 5, // Opcode: CDBR
+/* 1108 */    MCD_OPC_FilterValue, 26, 9, 0, // Skip to: 1121
+/* 1112 */    MCD_OPC_CheckField, 8, 8, 0, 55, 8, // Skip to: 3221
+/* 1118 */    MCD_OPC_Decode, 21, 40, // Opcode: ADBR
+/* 1121 */    MCD_OPC_FilterValue, 27, 10, 0, // Skip to: 1135
+/* 1125 */    MCD_OPC_CheckField, 8, 8, 0, 42, 8, // Skip to: 3221
+/* 1131 */    MCD_OPC_Decode, 156, 6, 40, // Opcode: SDBR
+/* 1135 */    MCD_OPC_FilterValue, 28, 10, 0, // Skip to: 1149
+/* 1139 */    MCD_OPC_CheckField, 8, 8, 0, 28, 8, // Skip to: 3221
+/* 1145 */    MCD_OPC_Decode, 174, 5, 40, // Opcode: MDBR
+/* 1149 */    MCD_OPC_FilterValue, 29, 10, 0, // Skip to: 1163
+/* 1153 */    MCD_OPC_CheckField, 8, 8, 0, 14, 8, // Skip to: 3221
+/* 1159 */    MCD_OPC_Decode, 251, 3, 40, // Opcode: DDBR
+/* 1163 */    MCD_OPC_FilterValue, 30, 10, 0, // Skip to: 1177
+/* 1167 */    MCD_OPC_CheckField, 8, 4, 0, 0, 8, // Skip to: 3221
+/* 1173 */    MCD_OPC_Decode, 170, 5, 41, // Opcode: MADBR
+/* 1177 */    MCD_OPC_FilterValue, 31, 10, 0, // Skip to: 1191
+/* 1181 */    MCD_OPC_CheckField, 8, 4, 0, 242, 7, // Skip to: 3221
+/* 1187 */    MCD_OPC_Decode, 187, 5, 41, // Opcode: MSDBR
+/* 1191 */    MCD_OPC_FilterValue, 64, 10, 0, // Skip to: 1205
+/* 1195 */    MCD_OPC_CheckField, 8, 8, 0, 228, 7, // Skip to: 3221
+/* 1201 */    MCD_OPC_Decode, 139, 5, 39, // Opcode: LPXBR
+/* 1205 */    MCD_OPC_FilterValue, 65, 10, 0, // Skip to: 1219
+/* 1209 */    MCD_OPC_CheckField, 8, 8, 0, 214, 7, // Skip to: 3221
+/* 1215 */    MCD_OPC_Decode, 129, 5, 39, // Opcode: LNXBR
+/* 1219 */    MCD_OPC_FilterValue, 66, 10, 0, // Skip to: 1233
+/* 1223 */    MCD_OPC_CheckField, 8, 8, 0, 200, 7, // Skip to: 3221
+/* 1229 */    MCD_OPC_Decode, 157, 5, 39, // Opcode: LTXBR
+/* 1233 */    MCD_OPC_FilterValue, 67, 10, 0, // Skip to: 1247
+/* 1237 */    MCD_OPC_CheckField, 8, 8, 0, 186, 7, // Skip to: 3221
+/* 1243 */    MCD_OPC_Decode, 189, 4, 39, // Opcode: LCXBR
+/* 1247 */    MCD_OPC_FilterValue, 68, 10, 0, // Skip to: 1261
+/* 1251 */    MCD_OPC_CheckField, 8, 8, 0, 172, 7, // Skip to: 3221
+/* 1257 */    MCD_OPC_Decode, 198, 4, 42, // Opcode: LEDBR
+/* 1261 */    MCD_OPC_FilterValue, 69, 10, 0, // Skip to: 1275
+/* 1265 */    MCD_OPC_CheckField, 8, 8, 0, 158, 7, // Skip to: 3221
+/* 1271 */    MCD_OPC_Decode, 195, 4, 39, // Opcode: LDXBR
+/* 1275 */    MCD_OPC_FilterValue, 70, 10, 0, // Skip to: 1289
+/* 1279 */    MCD_OPC_CheckField, 8, 8, 0, 144, 7, // Skip to: 3221
+/* 1285 */    MCD_OPC_Decode, 200, 4, 39, // Opcode: LEXBR
+/* 1289 */    MCD_OPC_FilterValue, 71, 18, 0, // Skip to: 1311
+/* 1293 */    MCD_OPC_CheckField, 8, 4, 0, 4, 0, // Skip to: 1303
+/* 1299 */    MCD_OPC_Decode, 140, 4, 43, // Opcode: FIXBR
+/* 1303 */    MCD_OPC_CheckPredicate, 0, 122, 7, // Skip to: 3221
+/* 1307 */    MCD_OPC_Decode, 141, 4, 44, // Opcode: FIXBRA
+/* 1311 */    MCD_OPC_FilterValue, 73, 10, 0, // Skip to: 1325
+/* 1315 */    MCD_OPC_CheckField, 8, 8, 0, 108, 7, // Skip to: 3221
+/* 1321 */    MCD_OPC_Decode, 224, 3, 39, // Opcode: CXBR
+/* 1325 */    MCD_OPC_FilterValue, 74, 10, 0, // Skip to: 1339
+/* 1329 */    MCD_OPC_CheckField, 8, 8, 0, 94, 7, // Skip to: 3221
+/* 1335 */    MCD_OPC_Decode, 139, 1, 45, // Opcode: AXBR
+/* 1339 */    MCD_OPC_FilterValue, 75, 10, 0, // Skip to: 1353
+/* 1343 */    MCD_OPC_CheckField, 8, 8, 0, 80, 7, // Skip to: 3221
+/* 1349 */    MCD_OPC_Decode, 226, 6, 45, // Opcode: SXBR
+/* 1353 */    MCD_OPC_FilterValue, 76, 10, 0, // Skip to: 1367
+/* 1357 */    MCD_OPC_CheckField, 8, 8, 0, 66, 7, // Skip to: 3221
+/* 1363 */    MCD_OPC_Decode, 208, 5, 45, // Opcode: MXBR
+/* 1367 */    MCD_OPC_FilterValue, 77, 10, 0, // Skip to: 1381
+/* 1371 */    MCD_OPC_CheckField, 8, 8, 0, 52, 7, // Skip to: 3221
+/* 1377 */    MCD_OPC_Decode, 134, 4, 45, // Opcode: DXBR
+/* 1381 */    MCD_OPC_FilterValue, 87, 18, 0, // Skip to: 1403
+/* 1385 */    MCD_OPC_CheckField, 8, 4, 0, 4, 0, // Skip to: 1395
+/* 1391 */    MCD_OPC_Decode, 138, 4, 46, // Opcode: FIEBR
+/* 1395 */    MCD_OPC_CheckPredicate, 0, 30, 7, // Skip to: 3221
+/* 1399 */    MCD_OPC_Decode, 139, 4, 47, // Opcode: FIEBRA
+/* 1403 */    MCD_OPC_FilterValue, 95, 18, 0, // Skip to: 1425
+/* 1407 */    MCD_OPC_CheckField, 8, 4, 0, 4, 0, // Skip to: 1417
+/* 1413 */    MCD_OPC_Decode, 136, 4, 48, // Opcode: FIDBR
+/* 1417 */    MCD_OPC_CheckPredicate, 0, 8, 7, // Skip to: 3221
+/* 1421 */    MCD_OPC_Decode, 137, 4, 49, // Opcode: FIDBRA
+/* 1425 */    MCD_OPC_FilterValue, 101, 10, 0, // Skip to: 1439
+/* 1429 */    MCD_OPC_CheckField, 8, 8, 0, 250, 6, // Skip to: 3221
+/* 1435 */    MCD_OPC_Decode, 164, 5, 39, // Opcode: LXR
+/* 1439 */    MCD_OPC_FilterValue, 114, 10, 0, // Skip to: 1453
+/* 1443 */    MCD_OPC_CheckField, 8, 4, 0, 236, 6, // Skip to: 3221
+/* 1449 */    MCD_OPC_Decode, 214, 3, 50, // Opcode: CPSDRdd
+/* 1453 */    MCD_OPC_FilterValue, 116, 16, 0, // Skip to: 1473
+/* 1457 */    MCD_OPC_CheckField, 8, 8, 0, 222, 6, // Skip to: 3221
+/* 1463 */    MCD_OPC_CheckField, 0, 4, 0, 216, 6, // Skip to: 3221
+/* 1469 */    MCD_OPC_Decode, 167, 5, 51, // Opcode: LZER
+/* 1473 */    MCD_OPC_FilterValue, 117, 16, 0, // Skip to: 1493
+/* 1477 */    MCD_OPC_CheckField, 8, 8, 0, 202, 6, // Skip to: 3221
+/* 1483 */    MCD_OPC_CheckField, 0, 4, 0, 196, 6, // Skip to: 3221
+/* 1489 */    MCD_OPC_Decode, 166, 5, 52, // Opcode: LZDR
+/* 1493 */    MCD_OPC_FilterValue, 118, 16, 0, // Skip to: 1513
+/* 1497 */    MCD_OPC_CheckField, 8, 8, 0, 182, 6, // Skip to: 3221
+/* 1503 */    MCD_OPC_CheckField, 0, 4, 0, 176, 6, // Skip to: 3221
+/* 1509 */    MCD_OPC_Decode, 168, 5, 53, // Opcode: LZXR
+/* 1513 */    MCD_OPC_FilterValue, 144, 1, 8, 0, // Skip to: 1526
+/* 1518 */    MCD_OPC_CheckPredicate, 0, 163, 6, // Skip to: 3221
+/* 1522 */    MCD_OPC_Decode, 143, 3, 54, // Opcode: CELFBR
+/* 1526 */    MCD_OPC_FilterValue, 145, 1, 8, 0, // Skip to: 1539
+/* 1531 */    MCD_OPC_CheckPredicate, 0, 150, 6, // Skip to: 3221
+/* 1535 */    MCD_OPC_Decode, 137, 3, 55, // Opcode: CDLFBR
+/* 1539 */    MCD_OPC_FilterValue, 146, 1, 8, 0, // Skip to: 1552
+/* 1544 */    MCD_OPC_CheckPredicate, 0, 137, 6, // Skip to: 3221
+/* 1548 */    MCD_OPC_Decode, 227, 3, 56, // Opcode: CXLFBR
+/* 1552 */    MCD_OPC_FilterValue, 148, 1, 10, 0, // Skip to: 1567
+/* 1557 */    MCD_OPC_CheckField, 8, 8, 0, 122, 6, // Skip to: 3221
+/* 1563 */    MCD_OPC_Decode, 141, 3, 57, // Opcode: CEFBR
+/* 1567 */    MCD_OPC_FilterValue, 149, 1, 10, 0, // Skip to: 1582
+/* 1572 */    MCD_OPC_CheckField, 8, 8, 0, 107, 6, // Skip to: 3221
+/* 1578 */    MCD_OPC_Decode, 135, 3, 58, // Opcode: CDFBR
+/* 1582 */    MCD_OPC_FilterValue, 150, 1, 10, 0, // Skip to: 1597
+/* 1587 */    MCD_OPC_CheckField, 8, 8, 0, 92, 6, // Skip to: 3221
+/* 1593 */    MCD_OPC_Decode, 225, 3, 59, // Opcode: CXFBR
+/* 1597 */    MCD_OPC_FilterValue, 152, 1, 10, 0, // Skip to: 1612
+/* 1602 */    MCD_OPC_CheckField, 8, 4, 0, 77, 6, // Skip to: 3221
+/* 1608 */    MCD_OPC_Decode, 146, 3, 60, // Opcode: CFEBR
+/* 1612 */    MCD_OPC_FilterValue, 153, 1, 10, 0, // Skip to: 1627
+/* 1617 */    MCD_OPC_CheckField, 8, 4, 0, 62, 6, // Skip to: 3221
+/* 1623 */    MCD_OPC_Decode, 145, 3, 61, // Opcode: CFDBR
+/* 1627 */    MCD_OPC_FilterValue, 154, 1, 10, 0, // Skip to: 1642
+/* 1632 */    MCD_OPC_CheckField, 8, 4, 0, 47, 6, // Skip to: 3221
+/* 1638 */    MCD_OPC_Decode, 149, 3, 62, // Opcode: CFXBR
+/* 1642 */    MCD_OPC_FilterValue, 156, 1, 8, 0, // Skip to: 1655
+/* 1647 */    MCD_OPC_CheckPredicate, 0, 34, 6, // Skip to: 3221
+/* 1651 */    MCD_OPC_Decode, 180, 3, 63, // Opcode: CLFEBR
+/* 1655 */    MCD_OPC_FilterValue, 157, 1, 8, 0, // Skip to: 1668
+/* 1660 */    MCD_OPC_CheckPredicate, 0, 21, 6, // Skip to: 3221
+/* 1664 */    MCD_OPC_Decode, 179, 3, 64, // Opcode: CLFDBR
+/* 1668 */    MCD_OPC_FilterValue, 158, 1, 8, 0, // Skip to: 1681
+/* 1673 */    MCD_OPC_CheckPredicate, 0, 8, 6, // Skip to: 3221
+/* 1677 */    MCD_OPC_Decode, 184, 3, 65, // Opcode: CLFXBR
+/* 1681 */    MCD_OPC_FilterValue, 160, 1, 8, 0, // Skip to: 1694
+/* 1686 */    MCD_OPC_CheckPredicate, 0, 251, 5, // Skip to: 3221
+/* 1690 */    MCD_OPC_Decode, 144, 3, 66, // Opcode: CELGBR
+/* 1694 */    MCD_OPC_FilterValue, 161, 1, 8, 0, // Skip to: 1707
+/* 1699 */    MCD_OPC_CheckPredicate, 0, 238, 5, // Skip to: 3221
+/* 1703 */    MCD_OPC_Decode, 138, 3, 67, // Opcode: CDLGBR
+/* 1707 */    MCD_OPC_FilterValue, 162, 1, 8, 0, // Skip to: 1720
+/* 1712 */    MCD_OPC_CheckPredicate, 0, 225, 5, // Skip to: 3221
+/* 1716 */    MCD_OPC_Decode, 228, 3, 68, // Opcode: CXLGBR
+/* 1720 */    MCD_OPC_FilterValue, 164, 1, 10, 0, // Skip to: 1735
+/* 1725 */    MCD_OPC_CheckField, 8, 8, 0, 210, 5, // Skip to: 3221
+/* 1731 */    MCD_OPC_Decode, 142, 3, 69, // Opcode: CEGBR
+/* 1735 */    MCD_OPC_FilterValue, 165, 1, 10, 0, // Skip to: 1750
+/* 1740 */    MCD_OPC_CheckField, 8, 8, 0, 195, 5, // Skip to: 3221
+/* 1746 */    MCD_OPC_Decode, 136, 3, 70, // Opcode: CDGBR
+/* 1750 */    MCD_OPC_FilterValue, 166, 1, 10, 0, // Skip to: 1765
+/* 1755 */    MCD_OPC_CheckField, 8, 8, 0, 180, 5, // Skip to: 3221
+/* 1761 */    MCD_OPC_Decode, 226, 3, 71, // Opcode: CXGBR
+/* 1765 */    MCD_OPC_FilterValue, 168, 1, 10, 0, // Skip to: 1780
+/* 1770 */    MCD_OPC_CheckField, 8, 4, 0, 165, 5, // Skip to: 3221
+/* 1776 */    MCD_OPC_Decode, 152, 3, 72, // Opcode: CGEBR
+/* 1780 */    MCD_OPC_FilterValue, 169, 1, 10, 0, // Skip to: 1795
+/* 1785 */    MCD_OPC_CheckField, 8, 4, 0, 150, 5, // Skip to: 3221
+/* 1791 */    MCD_OPC_Decode, 151, 3, 73, // Opcode: CGDBR
+/* 1795 */    MCD_OPC_FilterValue, 170, 1, 10, 0, // Skip to: 1810
+/* 1800 */    MCD_OPC_CheckField, 8, 4, 0, 135, 5, // Skip to: 3221
+/* 1806 */    MCD_OPC_Decode, 165, 3, 74, // Opcode: CGXBR
+/* 1810 */    MCD_OPC_FilterValue, 172, 1, 8, 0, // Skip to: 1823
+/* 1815 */    MCD_OPC_CheckPredicate, 0, 122, 5, // Skip to: 3221
+/* 1819 */    MCD_OPC_Decode, 187, 3, 75, // Opcode: CLGEBR
+/* 1823 */    MCD_OPC_FilterValue, 173, 1, 8, 0, // Skip to: 1836
+/* 1828 */    MCD_OPC_CheckPredicate, 0, 109, 5, // Skip to: 3221
+/* 1832 */    MCD_OPC_Decode, 186, 3, 76, // Opcode: CLGDBR
+/* 1836 */    MCD_OPC_FilterValue, 174, 1, 8, 0, // Skip to: 1849
+/* 1841 */    MCD_OPC_CheckPredicate, 0, 96, 5, // Skip to: 3221
+/* 1845 */    MCD_OPC_Decode, 198, 3, 77, // Opcode: CLGXBR
+/* 1849 */    MCD_OPC_FilterValue, 193, 1, 10, 0, // Skip to: 1864
+/* 1854 */    MCD_OPC_CheckField, 8, 8, 0, 81, 5, // Skip to: 3221
+/* 1860 */    MCD_OPC_Decode, 193, 4, 70, // Opcode: LDGR
+/* 1864 */    MCD_OPC_FilterValue, 205, 1, 72, 5, // Skip to: 3221
+/* 1869 */    MCD_OPC_CheckField, 8, 8, 0, 66, 5, // Skip to: 3221
+/* 1875 */    MCD_OPC_Decode, 206, 4, 78, // Opcode: LGDR
+/* 1879 */    MCD_OPC_FilterValue, 185, 1, 48, 5, // Skip to: 3212
+/* 1884 */    MCD_OPC_ExtractField, 16, 8,  // Inst{23-16} ...
+/* 1887 */    MCD_OPC_FilterValue, 0, 10, 0, // Skip to: 1901
+/* 1891 */    MCD_OPC_CheckField, 8, 8, 0, 44, 5, // Skip to: 3221
+/* 1897 */    MCD_OPC_Decode, 137, 5, 79, // Opcode: LPGR
+/* 1901 */    MCD_OPC_FilterValue, 1, 10, 0, // Skip to: 1915
+/* 1905 */    MCD_OPC_CheckField, 8, 8, 0, 30, 5, // Skip to: 3221
+/* 1911 */    MCD_OPC_Decode, 255, 4, 79, // Opcode: LNGR
+/* 1915 */    MCD_OPC_FilterValue, 2, 10, 0, // Skip to: 1929
+/* 1919 */    MCD_OPC_CheckField, 8, 8, 0, 16, 5, // Skip to: 3221
+/* 1925 */    MCD_OPC_Decode, 155, 5, 79, // Opcode: LTGR
+/* 1929 */    MCD_OPC_FilterValue, 3, 10, 0, // Skip to: 1943
+/* 1933 */    MCD_OPC_CheckField, 8, 8, 0, 2, 5, // Skip to: 3221
+/* 1939 */    MCD_OPC_Decode, 187, 4, 79, // Opcode: LCGR
+/* 1943 */    MCD_OPC_FilterValue, 4, 10, 0, // Skip to: 1957
+/* 1947 */    MCD_OPC_CheckField, 8, 8, 0, 244, 4, // Skip to: 3221
+/* 1953 */    MCD_OPC_Decode, 215, 4, 79, // Opcode: LGR
+/* 1957 */    MCD_OPC_FilterValue, 6, 10, 0, // Skip to: 1971
+/* 1961 */    MCD_OPC_CheckField, 8, 8, 0, 230, 4, // Skip to: 3221
+/* 1967 */    MCD_OPC_Decode, 205, 4, 79, // Opcode: LGBR
+/* 1971 */    MCD_OPC_FilterValue, 7, 10, 0, // Skip to: 1985
+/* 1975 */    MCD_OPC_CheckField, 8, 8, 0, 216, 4, // Skip to: 3221
+/* 1981 */    MCD_OPC_Decode, 213, 4, 79, // Opcode: LGHR
+/* 1985 */    MCD_OPC_FilterValue, 8, 9, 0, // Skip to: 1998
+/* 1989 */    MCD_OPC_CheckField, 8, 8, 0, 202, 4, // Skip to: 3221
+/* 1995 */    MCD_OPC_Decode, 36, 80, // Opcode: AGR
+/* 1998 */    MCD_OPC_FilterValue, 9, 10, 0, // Skip to: 2012
+/* 2002 */    MCD_OPC_CheckField, 8, 8, 0, 189, 4, // Skip to: 3221
+/* 2008 */    MCD_OPC_Decode, 162, 6, 80, // Opcode: SGR
+/* 2012 */    MCD_OPC_FilterValue, 10, 9, 0, // Skip to: 2025
+/* 2016 */    MCD_OPC_CheckField, 8, 8, 0, 175, 4, // Skip to: 3221
+/* 2022 */    MCD_OPC_Decode, 57, 80, // Opcode: ALGR
+/* 2025 */    MCD_OPC_FilterValue, 11, 10, 0, // Skip to: 2039
+/* 2029 */    MCD_OPC_CheckField, 8, 8, 0, 162, 4, // Skip to: 3221
+/* 2035 */    MCD_OPC_Decode, 176, 6, 80, // Opcode: SLGR
+/* 2039 */    MCD_OPC_FilterValue, 12, 10, 0, // Skip to: 2053
+/* 2043 */    MCD_OPC_CheckField, 8, 8, 0, 148, 4, // Skip to: 3221
+/* 2049 */    MCD_OPC_Decode, 195, 5, 80, // Opcode: MSGR
+/* 2053 */    MCD_OPC_FilterValue, 13, 10, 0, // Skip to: 2067
+/* 2057 */    MCD_OPC_CheckField, 8, 8, 0, 134, 4, // Skip to: 3221
+/* 2063 */    MCD_OPC_Decode, 133, 4, 81, // Opcode: DSGR
+/* 2067 */    MCD_OPC_FilterValue, 15, 10, 0, // Skip to: 2081
+/* 2071 */    MCD_OPC_CheckField, 8, 8, 0, 120, 4, // Skip to: 3221
+/* 2077 */    MCD_OPC_Decode, 145, 5, 79, // Opcode: LRVGR
+/* 2081 */    MCD_OPC_FilterValue, 16, 10, 0, // Skip to: 2095
+/* 2085 */    MCD_OPC_CheckField, 8, 8, 0, 106, 4, // Skip to: 3221
+/* 2091 */    MCD_OPC_Decode, 136, 5, 82, // Opcode: LPGFR
+/* 2095 */    MCD_OPC_FilterValue, 17, 10, 0, // Skip to: 2109
+/* 2099 */    MCD_OPC_CheckField, 8, 8, 0, 92, 4, // Skip to: 3221
+/* 2105 */    MCD_OPC_Decode, 254, 4, 82, // Opcode: LNGFR
+/* 2109 */    MCD_OPC_FilterValue, 18, 10, 0, // Skip to: 2123
+/* 2113 */    MCD_OPC_CheckField, 8, 8, 0, 78, 4, // Skip to: 3221
+/* 2119 */    MCD_OPC_Decode, 154, 5, 79, // Opcode: LTGFR
+/* 2123 */    MCD_OPC_FilterValue, 19, 10, 0, // Skip to: 2137
+/* 2127 */    MCD_OPC_CheckField, 8, 8, 0, 64, 4, // Skip to: 3221
+/* 2133 */    MCD_OPC_Decode, 186, 4, 82, // Opcode: LCGFR
+/* 2137 */    MCD_OPC_FilterValue, 20, 10, 0, // Skip to: 2151
+/* 2141 */    MCD_OPC_CheckField, 8, 8, 0, 50, 4, // Skip to: 3221
+/* 2147 */    MCD_OPC_Decode, 209, 4, 82, // Opcode: LGFR
+/* 2151 */    MCD_OPC_FilterValue, 22, 10, 0, // Skip to: 2165
+/* 2155 */    MCD_OPC_CheckField, 8, 8, 0, 36, 4, // Skip to: 3221
+/* 2161 */    MCD_OPC_Decode, 233, 4, 82, // Opcode: LLGFR
+/* 2165 */    MCD_OPC_FilterValue, 24, 9, 0, // Skip to: 2178
+/* 2169 */    MCD_OPC_CheckField, 8, 8, 0, 22, 4, // Skip to: 3221
+/* 2175 */    MCD_OPC_Decode, 33, 83, // Opcode: AGFR
+/* 2178 */    MCD_OPC_FilterValue, 25, 10, 0, // Skip to: 2192
+/* 2182 */    MCD_OPC_CheckField, 8, 8, 0, 9, 4, // Skip to: 3221
+/* 2188 */    MCD_OPC_Decode, 161, 6, 83, // Opcode: SGFR
+/* 2192 */    MCD_OPC_FilterValue, 26, 9, 0, // Skip to: 2205
+/* 2196 */    MCD_OPC_CheckField, 8, 8, 0, 251, 3, // Skip to: 3221
+/* 2202 */    MCD_OPC_Decode, 55, 83, // Opcode: ALGFR
+/* 2205 */    MCD_OPC_FilterValue, 27, 10, 0, // Skip to: 2219
+/* 2209 */    MCD_OPC_CheckField, 8, 8, 0, 238, 3, // Skip to: 3221
+/* 2215 */    MCD_OPC_Decode, 175, 6, 83, // Opcode: SLGFR
+/* 2219 */    MCD_OPC_FilterValue, 28, 10, 0, // Skip to: 2233
+/* 2223 */    MCD_OPC_CheckField, 8, 8, 0, 224, 3, // Skip to: 3221
+/* 2229 */    MCD_OPC_Decode, 194, 5, 83, // Opcode: MSGFR
+/* 2233 */    MCD_OPC_FilterValue, 29, 10, 0, // Skip to: 2247
+/* 2237 */    MCD_OPC_CheckField, 8, 8, 0, 210, 3, // Skip to: 3221
+/* 2243 */    MCD_OPC_Decode, 132, 4, 84, // Opcode: DSGFR
+/* 2247 */    MCD_OPC_FilterValue, 31, 10, 0, // Skip to: 2261
+/* 2251 */    MCD_OPC_CheckField, 8, 8, 0, 196, 3, // Skip to: 3221
+/* 2257 */    MCD_OPC_Decode, 146, 5, 3, // Opcode: LRVR
+/* 2261 */    MCD_OPC_FilterValue, 32, 10, 0, // Skip to: 2275
+/* 2265 */    MCD_OPC_CheckField, 8, 8, 0, 182, 3, // Skip to: 3221
+/* 2271 */    MCD_OPC_Decode, 162, 3, 79, // Opcode: CGR
+/* 2275 */    MCD_OPC_FilterValue, 33, 10, 0, // Skip to: 2289
+/* 2279 */    MCD_OPC_CheckField, 8, 8, 0, 168, 3, // Skip to: 3221
+/* 2285 */    MCD_OPC_Decode, 195, 3, 79, // Opcode: CLGR
+/* 2289 */    MCD_OPC_FilterValue, 38, 10, 0, // Skip to: 2303
+/* 2293 */    MCD_OPC_CheckField, 8, 8, 0, 154, 3, // Skip to: 3221
+/* 2299 */    MCD_OPC_Decode, 183, 4, 3, // Opcode: LBR
+/* 2303 */    MCD_OPC_FilterValue, 39, 10, 0, // Skip to: 2317
+/* 2307 */    MCD_OPC_CheckField, 8, 8, 0, 140, 3, // Skip to: 3221
+/* 2313 */    MCD_OPC_Decode, 222, 4, 3, // Opcode: LHR
+/* 2317 */    MCD_OPC_FilterValue, 48, 10, 0, // Skip to: 2331
+/* 2321 */    MCD_OPC_CheckField, 8, 8, 0, 126, 3, // Skip to: 3221
+/* 2327 */    MCD_OPC_Decode, 155, 3, 82, // Opcode: CGFR
+/* 2331 */    MCD_OPC_FilterValue, 49, 10, 0, // Skip to: 2345
+/* 2335 */    MCD_OPC_CheckField, 8, 8, 0, 112, 3, // Skip to: 3221
+/* 2341 */    MCD_OPC_Decode, 190, 3, 82, // Opcode: CLGFR
+/* 2345 */    MCD_OPC_FilterValue, 128, 1, 10, 0, // Skip to: 2360
+/* 2350 */    MCD_OPC_CheckField, 8, 8, 0, 97, 3, // Skip to: 3221
+/* 2356 */    MCD_OPC_Decode, 216, 5, 80, // Opcode: NGR
+/* 2360 */    MCD_OPC_FilterValue, 129, 1, 10, 0, // Skip to: 2375
+/* 2365 */    MCD_OPC_CheckField, 8, 8, 0, 82, 3, // Skip to: 3221
+/* 2371 */    MCD_OPC_Decode, 243, 5, 80, // Opcode: OGR
+/* 2375 */    MCD_OPC_FilterValue, 130, 1, 10, 0, // Skip to: 2390
+/* 2380 */    MCD_OPC_CheckField, 8, 8, 0, 67, 3, // Skip to: 3221
+/* 2386 */    MCD_OPC_Decode, 252, 6, 80, // Opcode: XGR
+/* 2390 */    MCD_OPC_FilterValue, 131, 1, 10, 0, // Skip to: 2405
+/* 2395 */    MCD_OPC_CheckField, 8, 8, 0, 52, 3, // Skip to: 3221
+/* 2401 */    MCD_OPC_Decode, 142, 4, 85, // Opcode: FLOGR
+/* 2405 */    MCD_OPC_FilterValue, 132, 1, 10, 0, // Skip to: 2420
+/* 2410 */    MCD_OPC_CheckField, 8, 8, 0, 37, 3, // Skip to: 3221
+/* 2416 */    MCD_OPC_Decode, 231, 4, 79, // Opcode: LLGCR
+/* 2420 */    MCD_OPC_FilterValue, 133, 1, 10, 0, // Skip to: 2435
+/* 2425 */    MCD_OPC_CheckField, 8, 8, 0, 22, 3, // Skip to: 3221
+/* 2431 */    MCD_OPC_Decode, 236, 4, 79, // Opcode: LLGHR
+/* 2435 */    MCD_OPC_FilterValue, 134, 1, 10, 0, // Skip to: 2450
+/* 2440 */    MCD_OPC_CheckField, 8, 8, 0, 7, 3, // Skip to: 3221
+/* 2446 */    MCD_OPC_Decode, 184, 5, 81, // Opcode: MLGR
+/* 2450 */    MCD_OPC_FilterValue, 135, 1, 10, 0, // Skip to: 2465
+/* 2455 */    MCD_OPC_CheckField, 8, 8, 0, 248, 2, // Skip to: 3221
+/* 2461 */    MCD_OPC_Decode, 128, 4, 81, // Opcode: DLGR
+/* 2465 */    MCD_OPC_FilterValue, 136, 1, 9, 0, // Skip to: 2479
+/* 2470 */    MCD_OPC_CheckField, 8, 8, 0, 233, 2, // Skip to: 3221
+/* 2476 */    MCD_OPC_Decode, 49, 80, // Opcode: ALCGR
+/* 2479 */    MCD_OPC_FilterValue, 137, 1, 10, 0, // Skip to: 2494
+/* 2484 */    MCD_OPC_CheckField, 8, 8, 0, 219, 2, // Skip to: 3221
+/* 2490 */    MCD_OPC_Decode, 172, 6, 80, // Opcode: SLGBR
+/* 2494 */    MCD_OPC_FilterValue, 148, 1, 10, 0, // Skip to: 2509
+/* 2499 */    MCD_OPC_CheckField, 8, 8, 0, 204, 2, // Skip to: 3221
+/* 2505 */    MCD_OPC_Decode, 228, 4, 3, // Opcode: LLCR
+/* 2509 */    MCD_OPC_FilterValue, 149, 1, 10, 0, // Skip to: 2524
+/* 2514 */    MCD_OPC_CheckField, 8, 8, 0, 189, 2, // Skip to: 3221
+/* 2520 */    MCD_OPC_Decode, 241, 4, 3, // Opcode: LLHR
+/* 2524 */    MCD_OPC_FilterValue, 151, 1, 10, 0, // Skip to: 2539
+/* 2529 */    MCD_OPC_CheckField, 8, 8, 0, 174, 2, // Skip to: 3221
+/* 2535 */    MCD_OPC_Decode, 129, 4, 84, // Opcode: DLR
+/* 2539 */    MCD_OPC_FilterValue, 152, 1, 9, 0, // Skip to: 2553
+/* 2544 */    MCD_OPC_CheckField, 8, 8, 0, 159, 2, // Skip to: 3221
+/* 2550 */    MCD_OPC_Decode, 50, 4, // Opcode: ALCR
+/* 2553 */    MCD_OPC_FilterValue, 153, 1, 10, 0, // Skip to: 2568
+/* 2558 */    MCD_OPC_CheckField, 8, 8, 0, 145, 2, // Skip to: 3221
+/* 2564 */    MCD_OPC_Decode, 169, 6, 4, // Opcode: SLBR
+/* 2568 */    MCD_OPC_FilterValue, 226, 1, 186, 0, // Skip to: 2759
+/* 2573 */    MCD_OPC_ExtractField, 8, 4,  // Inst{11-8} ...
+/* 2576 */    MCD_OPC_FilterValue, 0, 129, 2, // Skip to: 3221
+/* 2580 */    MCD_OPC_ExtractField, 12, 4,  // Inst{15-12} ...
+/* 2583 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 2595
+/* 2587 */    MCD_OPC_CheckPredicate, 1, 160, 0, // Skip to: 2751
+/* 2591 */    MCD_OPC_Decode, 246, 2, 80, // Opcode: AsmOLOCGR
+/* 2595 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 2607
+/* 2599 */    MCD_OPC_CheckPredicate, 1, 148, 0, // Skip to: 2751
+/* 2603 */    MCD_OPC_Decode, 175, 1, 80, // Opcode: AsmHLOCGR
+/* 2607 */    MCD_OPC_FilterValue, 3, 8, 0, // Skip to: 2619
+/* 2611 */    MCD_OPC_CheckPredicate, 1, 136, 0, // Skip to: 2751
+/* 2615 */    MCD_OPC_Decode, 211, 2, 80, // Opcode: AsmNLELOCGR
+/* 2619 */    MCD_OPC_FilterValue, 4, 8, 0, // Skip to: 2631
+/* 2623 */    MCD_OPC_CheckPredicate, 1, 124, 0, // Skip to: 2751
+/* 2627 */    MCD_OPC_Decode, 170, 2, 80, // Opcode: AsmLLOCGR
+/* 2631 */    MCD_OPC_FilterValue, 5, 8, 0, // Skip to: 2643
+/* 2635 */    MCD_OPC_CheckPredicate, 1, 112, 0, // Skip to: 2751
+/* 2639 */    MCD_OPC_Decode, 193, 2, 80, // Opcode: AsmNHELOCGR
+/* 2643 */    MCD_OPC_FilterValue, 6, 8, 0, // Skip to: 2655
+/* 2647 */    MCD_OPC_CheckPredicate, 1, 100, 0, // Skip to: 2751
+/* 2651 */    MCD_OPC_Decode, 162, 2, 80, // Opcode: AsmLHLOCGR
+/* 2655 */    MCD_OPC_FilterValue, 7, 8, 0, // Skip to: 2667
+/* 2659 */    MCD_OPC_CheckPredicate, 1, 88, 0, // Skip to: 2751
+/* 2663 */    MCD_OPC_Decode, 183, 2, 80, // Opcode: AsmNELOCGR
+/* 2667 */    MCD_OPC_FilterValue, 8, 8, 0, // Skip to: 2679
+/* 2671 */    MCD_OPC_CheckPredicate, 1, 76, 0, // Skip to: 2751
+/* 2675 */    MCD_OPC_Decode, 157, 1, 80, // Opcode: AsmELOCGR
+/* 2679 */    MCD_OPC_FilterValue, 9, 8, 0, // Skip to: 2691
+/* 2683 */    MCD_OPC_CheckPredicate, 1, 64, 0, // Skip to: 2751
+/* 2687 */    MCD_OPC_Decode, 220, 2, 80, // Opcode: AsmNLHLOCGR
+/* 2691 */    MCD_OPC_FilterValue, 10, 8, 0, // Skip to: 2703
+/* 2695 */    MCD_OPC_CheckPredicate, 1, 52, 0, // Skip to: 2751
+/* 2699 */    MCD_OPC_Decode, 167, 1, 80, // Opcode: AsmHELOCGR
+/* 2703 */    MCD_OPC_FilterValue, 11, 8, 0, // Skip to: 2715
+/* 2707 */    MCD_OPC_CheckPredicate, 1, 40, 0, // Skip to: 2751
+/* 2711 */    MCD_OPC_Decode, 228, 2, 80, // Opcode: AsmNLLOCGR
+/* 2715 */    MCD_OPC_FilterValue, 12, 8, 0, // Skip to: 2727
+/* 2719 */    MCD_OPC_CheckPredicate, 1, 28, 0, // Skip to: 2751
+/* 2723 */    MCD_OPC_Decode, 153, 2, 80, // Opcode: AsmLELOCGR
+/* 2727 */    MCD_OPC_FilterValue, 13, 8, 0, // Skip to: 2739
+/* 2731 */    MCD_OPC_CheckPredicate, 1, 16, 0, // Skip to: 2751
+/* 2735 */    MCD_OPC_Decode, 201, 2, 80, // Opcode: AsmNHLOCGR
+/* 2739 */    MCD_OPC_FilterValue, 14, 8, 0, // Skip to: 2751
+/* 2743 */    MCD_OPC_CheckPredicate, 1, 4, 0, // Skip to: 2751
+/* 2747 */    MCD_OPC_Decode, 237, 2, 80, // Opcode: AsmNOLOCGR
+/* 2751 */    MCD_OPC_CheckPredicate, 1, 210, 1, // Skip to: 3221
+/* 2755 */    MCD_OPC_Decode, 174, 2, 86, // Opcode: AsmLOCGR
+/* 2759 */    MCD_OPC_FilterValue, 228, 1, 14, 0, // Skip to: 2778
+/* 2764 */    MCD_OPC_CheckPredicate, 2, 197, 1, // Skip to: 3221
+/* 2768 */    MCD_OPC_CheckField, 8, 4, 0, 191, 1, // Skip to: 3221
+/* 2774 */    MCD_OPC_Decode, 217, 5, 87, // Opcode: NGRK
+/* 2778 */    MCD_OPC_FilterValue, 230, 1, 14, 0, // Skip to: 2797
+/* 2783 */    MCD_OPC_CheckPredicate, 2, 178, 1, // Skip to: 3221
+/* 2787 */    MCD_OPC_CheckField, 8, 4, 0, 172, 1, // Skip to: 3221
+/* 2793 */    MCD_OPC_Decode, 244, 5, 87, // Opcode: OGRK
+/* 2797 */    MCD_OPC_FilterValue, 231, 1, 14, 0, // Skip to: 2816
+/* 2802 */    MCD_OPC_CheckPredicate, 2, 159, 1, // Skip to: 3221
+/* 2806 */    MCD_OPC_CheckField, 8, 4, 0, 153, 1, // Skip to: 3221
+/* 2812 */    MCD_OPC_Decode, 253, 6, 87, // Opcode: XGRK
+/* 2816 */    MCD_OPC_FilterValue, 232, 1, 13, 0, // Skip to: 2834
+/* 2821 */    MCD_OPC_CheckPredicate, 2, 140, 1, // Skip to: 3221
+/* 2825 */    MCD_OPC_CheckField, 8, 4, 0, 134, 1, // Skip to: 3221
+/* 2831 */    MCD_OPC_Decode, 37, 87, // Opcode: AGRK
+/* 2834 */    MCD_OPC_FilterValue, 233, 1, 14, 0, // Skip to: 2853
+/* 2839 */    MCD_OPC_CheckPredicate, 2, 122, 1, // Skip to: 3221
+/* 2843 */    MCD_OPC_CheckField, 8, 4, 0, 116, 1, // Skip to: 3221
+/* 2849 */    MCD_OPC_Decode, 163, 6, 87, // Opcode: SGRK
+/* 2853 */    MCD_OPC_FilterValue, 234, 1, 13, 0, // Skip to: 2871
+/* 2858 */    MCD_OPC_CheckPredicate, 2, 103, 1, // Skip to: 3221
+/* 2862 */    MCD_OPC_CheckField, 8, 4, 0, 97, 1, // Skip to: 3221
+/* 2868 */    MCD_OPC_Decode, 58, 87, // Opcode: ALGRK
+/* 2871 */    MCD_OPC_FilterValue, 235, 1, 14, 0, // Skip to: 2890
+/* 2876 */    MCD_OPC_CheckPredicate, 2, 85, 1, // Skip to: 3221
+/* 2880 */    MCD_OPC_CheckField, 8, 4, 0, 79, 1, // Skip to: 3221
+/* 2886 */    MCD_OPC_Decode, 177, 6, 87, // Opcode: SLGRK
+/* 2890 */    MCD_OPC_FilterValue, 242, 1, 186, 0, // Skip to: 3081
+/* 2895 */    MCD_OPC_ExtractField, 8, 4,  // Inst{11-8} ...
+/* 2898 */    MCD_OPC_FilterValue, 0, 63, 1, // Skip to: 3221
+/* 2902 */    MCD_OPC_ExtractField, 12, 4,  // Inst{15-12} ...
+/* 2905 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 2917
+/* 2909 */    MCD_OPC_CheckPredicate, 1, 160, 0, // Skip to: 3073
+/* 2913 */    MCD_OPC_Decode, 247, 2, 4, // Opcode: AsmOLOCR
+/* 2917 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 2929
+/* 2921 */    MCD_OPC_CheckPredicate, 1, 148, 0, // Skip to: 3073
+/* 2925 */    MCD_OPC_Decode, 176, 1, 4, // Opcode: AsmHLOCR
+/* 2929 */    MCD_OPC_FilterValue, 3, 8, 0, // Skip to: 2941
+/* 2933 */    MCD_OPC_CheckPredicate, 1, 136, 0, // Skip to: 3073
+/* 2937 */    MCD_OPC_Decode, 212, 2, 4, // Opcode: AsmNLELOCR
+/* 2941 */    MCD_OPC_FilterValue, 4, 8, 0, // Skip to: 2953
+/* 2945 */    MCD_OPC_CheckPredicate, 1, 124, 0, // Skip to: 3073
+/* 2949 */    MCD_OPC_Decode, 171, 2, 4, // Opcode: AsmLLOCR
+/* 2953 */    MCD_OPC_FilterValue, 5, 8, 0, // Skip to: 2965
+/* 2957 */    MCD_OPC_CheckPredicate, 1, 112, 0, // Skip to: 3073
+/* 2961 */    MCD_OPC_Decode, 194, 2, 4, // Opcode: AsmNHELOCR
+/* 2965 */    MCD_OPC_FilterValue, 6, 8, 0, // Skip to: 2977
+/* 2969 */    MCD_OPC_CheckPredicate, 1, 100, 0, // Skip to: 3073
+/* 2973 */    MCD_OPC_Decode, 163, 2, 4, // Opcode: AsmLHLOCR
+/* 2977 */    MCD_OPC_FilterValue, 7, 8, 0, // Skip to: 2989
+/* 2981 */    MCD_OPC_CheckPredicate, 1, 88, 0, // Skip to: 3073
+/* 2985 */    MCD_OPC_Decode, 184, 2, 4, // Opcode: AsmNELOCR
+/* 2989 */    MCD_OPC_FilterValue, 8, 8, 0, // Skip to: 3001
+/* 2993 */    MCD_OPC_CheckPredicate, 1, 76, 0, // Skip to: 3073
+/* 2997 */    MCD_OPC_Decode, 158, 1, 4, // Opcode: AsmELOCR
+/* 3001 */    MCD_OPC_FilterValue, 9, 8, 0, // Skip to: 3013
+/* 3005 */    MCD_OPC_CheckPredicate, 1, 64, 0, // Skip to: 3073
+/* 3009 */    MCD_OPC_Decode, 221, 2, 4, // Opcode: AsmNLHLOCR
+/* 3013 */    MCD_OPC_FilterValue, 10, 8, 0, // Skip to: 3025
+/* 3017 */    MCD_OPC_CheckPredicate, 1, 52, 0, // Skip to: 3073
+/* 3021 */    MCD_OPC_Decode, 168, 1, 4, // Opcode: AsmHELOCR
+/* 3025 */    MCD_OPC_FilterValue, 11, 8, 0, // Skip to: 3037
+/* 3029 */    MCD_OPC_CheckPredicate, 1, 40, 0, // Skip to: 3073
+/* 3033 */    MCD_OPC_Decode, 229, 2, 4, // Opcode: AsmNLLOCR
+/* 3037 */    MCD_OPC_FilterValue, 12, 8, 0, // Skip to: 3049
+/* 3041 */    MCD_OPC_CheckPredicate, 1, 28, 0, // Skip to: 3073
+/* 3045 */    MCD_OPC_Decode, 154, 2, 4, // Opcode: AsmLELOCR
+/* 3049 */    MCD_OPC_FilterValue, 13, 8, 0, // Skip to: 3061
+/* 3053 */    MCD_OPC_CheckPredicate, 1, 16, 0, // Skip to: 3073
+/* 3057 */    MCD_OPC_Decode, 202, 2, 4, // Opcode: AsmNHLOCR
+/* 3061 */    MCD_OPC_FilterValue, 14, 8, 0, // Skip to: 3073
+/* 3065 */    MCD_OPC_CheckPredicate, 1, 4, 0, // Skip to: 3073
+/* 3069 */    MCD_OPC_Decode, 238, 2, 4, // Opcode: AsmNOLOCR
+/* 3073 */    MCD_OPC_CheckPredicate, 1, 144, 0, // Skip to: 3221
+/* 3077 */    MCD_OPC_Decode, 175, 2, 88, // Opcode: AsmLOCR
+/* 3081 */    MCD_OPC_FilterValue, 244, 1, 14, 0, // Skip to: 3100
+/* 3086 */    MCD_OPC_CheckPredicate, 2, 131, 0, // Skip to: 3221
+/* 3090 */    MCD_OPC_CheckField, 8, 4, 0, 125, 0, // Skip to: 3221
+/* 3096 */    MCD_OPC_Decode, 236, 5, 89, // Opcode: NRK
+/* 3100 */    MCD_OPC_FilterValue, 246, 1, 14, 0, // Skip to: 3119
+/* 3105 */    MCD_OPC_CheckPredicate, 2, 112, 0, // Skip to: 3221
+/* 3109 */    MCD_OPC_CheckField, 8, 4, 0, 106, 0, // Skip to: 3221
+/* 3115 */    MCD_OPC_Decode, 135, 6, 89, // Opcode: ORK
+/* 3119 */    MCD_OPC_FilterValue, 247, 1, 14, 0, // Skip to: 3138
+/* 3124 */    MCD_OPC_CheckPredicate, 2, 93, 0, // Skip to: 3221
+/* 3128 */    MCD_OPC_CheckField, 8, 4, 0, 87, 0, // Skip to: 3221
+/* 3134 */    MCD_OPC_Decode, 134, 7, 89, // Opcode: XRK
+/* 3138 */    MCD_OPC_FilterValue, 248, 1, 13, 0, // Skip to: 3156
+/* 3143 */    MCD_OPC_CheckPredicate, 2, 74, 0, // Skip to: 3221
+/* 3147 */    MCD_OPC_CheckField, 8, 4, 0, 68, 0, // Skip to: 3221
+/* 3153 */    MCD_OPC_Decode, 64, 89, // Opcode: ARK
+/* 3156 */    MCD_OPC_FilterValue, 249, 1, 14, 0, // Skip to: 3175
+/* 3161 */    MCD_OPC_CheckPredicate, 2, 56, 0, // Skip to: 3221
+/* 3165 */    MCD_OPC_CheckField, 8, 4, 0, 50, 0, // Skip to: 3221
+/* 3171 */    MCD_OPC_Decode, 193, 6, 89, // Opcode: SRK
+/* 3175 */    MCD_OPC_FilterValue, 250, 1, 13, 0, // Skip to: 3193
+/* 3180 */    MCD_OPC_CheckPredicate, 2, 37, 0, // Skip to: 3221
+/* 3184 */    MCD_OPC_CheckField, 8, 4, 0, 31, 0, // Skip to: 3221
+/* 3190 */    MCD_OPC_Decode, 61, 89, // Opcode: ALRK
+/* 3193 */    MCD_OPC_FilterValue, 251, 1, 23, 0, // Skip to: 3221
+/* 3198 */    MCD_OPC_CheckPredicate, 2, 19, 0, // Skip to: 3221
+/* 3202 */    MCD_OPC_CheckField, 8, 4, 0, 13, 0, // Skip to: 3221
+/* 3208 */    MCD_OPC_Decode, 182, 6, 89, // Opcode: SLRK
+/* 3212 */    MCD_OPC_FilterValue, 186, 1, 4, 0, // Skip to: 3221
+/* 3217 */    MCD_OPC_Decode, 221, 3, 90, // Opcode: CS
+/* 3221 */    MCD_OPC_Fail,
+  0
+};
+
+static uint8_t DecoderTable48[] = {
+/* 0 */       MCD_OPC_ExtractField, 40, 8,  // Inst{47-40} ...
+/* 3 */       MCD_OPC_FilterValue, 192, 1, 238, 0, // Skip to: 246
+/* 8 */       MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 11 */      MCD_OPC_FilterValue, 0, 4, 0, // Skip to: 19
+/* 15 */      MCD_OPC_Decode, 176, 4, 91, // Opcode: LARL
+/* 19 */      MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 27
+/* 23 */      MCD_OPC_Decode, 208, 4, 92, // Opcode: LGFI
+/* 27 */      MCD_OPC_FilterValue, 4, 127, 0, // Skip to: 158
+/* 31 */      MCD_OPC_ExtractField, 36, 4,  // Inst{39-36} ...
+/* 34 */      MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 42
+/* 38 */      MCD_OPC_Decode, 243, 2, 93, // Opcode: AsmOJG
+/* 42 */      MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 50
+/* 46 */      MCD_OPC_Decode, 172, 1, 93, // Opcode: AsmHJG
+/* 50 */      MCD_OPC_FilterValue, 3, 4, 0, // Skip to: 58
+/* 54 */      MCD_OPC_Decode, 208, 2, 93, // Opcode: AsmNLEJG
+/* 58 */      MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 66
+/* 62 */      MCD_OPC_Decode, 167, 2, 93, // Opcode: AsmLJG
+/* 66 */      MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 74
+/* 70 */      MCD_OPC_Decode, 190, 2, 93, // Opcode: AsmNHEJG
+/* 74 */      MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 82
+/* 78 */      MCD_OPC_Decode, 159, 2, 93, // Opcode: AsmLHJG
+/* 82 */      MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 90
+/* 86 */      MCD_OPC_Decode, 180, 2, 93, // Opcode: AsmNEJG
+/* 90 */      MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 98
+/* 94 */      MCD_OPC_Decode, 154, 1, 93, // Opcode: AsmEJG
+/* 98 */      MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 106
+/* 102 */     MCD_OPC_Decode, 217, 2, 93, // Opcode: AsmNLHJG
+/* 106 */     MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 114
+/* 110 */     MCD_OPC_Decode, 164, 1, 93, // Opcode: AsmHEJG
+/* 114 */     MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 122
+/* 118 */     MCD_OPC_Decode, 225, 2, 93, // Opcode: AsmNLJG
+/* 122 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 130
+/* 126 */     MCD_OPC_Decode, 150, 2, 93, // Opcode: AsmLEJG
+/* 130 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 138
+/* 134 */     MCD_OPC_Decode, 198, 2, 93, // Opcode: AsmNHJG
+/* 138 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 146
+/* 142 */     MCD_OPC_Decode, 234, 2, 93, // Opcode: AsmNOJG
+/* 146 */     MCD_OPC_FilterValue, 15, 4, 0, // Skip to: 154
+/* 150 */     MCD_OPC_Decode, 164, 4, 93, // Opcode: JG
+/* 154 */     MCD_OPC_Decode, 143, 1, 94, // Opcode: AsmBRCL
+/* 158 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 166
+/* 162 */     MCD_OPC_Decode, 255, 2, 91, // Opcode: BRASL
+/* 166 */     MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 174
+/* 170 */     MCD_OPC_Decode, 128, 7, 95, // Opcode: XIHF
+/* 174 */     MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 182
+/* 178 */     MCD_OPC_Decode, 130, 7, 96, // Opcode: XILF
+/* 182 */     MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 190
+/* 186 */     MCD_OPC_Decode, 148, 4, 97, // Opcode: IIHF
+/* 190 */     MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 198
+/* 194 */     MCD_OPC_Decode, 155, 4, 98, // Opcode: IILF
+/* 198 */     MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 206
+/* 202 */     MCD_OPC_Decode, 220, 5, 95, // Opcode: NIHF
+/* 206 */     MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 214
+/* 210 */     MCD_OPC_Decode, 227, 5, 96, // Opcode: NILF
+/* 214 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 222
+/* 218 */     MCD_OPC_Decode, 247, 5, 95, // Opcode: OIHF
+/* 222 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 230
+/* 226 */     MCD_OPC_Decode, 254, 5, 96, // Opcode: OILF
+/* 230 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 238
+/* 234 */     MCD_OPC_Decode, 244, 4, 99, // Opcode: LLIHF
+/* 238 */     MCD_OPC_FilterValue, 15, 213, 12, // Skip to: 3527
+/* 242 */     MCD_OPC_Decode, 247, 4, 99, // Opcode: LLILF
+/* 246 */     MCD_OPC_FilterValue, 194, 1, 95, 0, // Skip to: 346
+/* 251 */     MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 254 */     MCD_OPC_FilterValue, 0, 4, 0, // Skip to: 262
+/* 258 */     MCD_OPC_Decode, 193, 5, 100, // Opcode: MSGFI
+/* 262 */     MCD_OPC_FilterValue, 1, 4, 0, // Skip to: 270
+/* 266 */     MCD_OPC_Decode, 190, 5, 101, // Opcode: MSFI
+/* 270 */     MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 278
+/* 274 */     MCD_OPC_Decode, 174, 6, 102, // Opcode: SLGFI
+/* 278 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 286
+/* 282 */     MCD_OPC_Decode, 170, 6, 96, // Opcode: SLFI
+/* 286 */     MCD_OPC_FilterValue, 8, 3, 0, // Skip to: 293
+/* 290 */     MCD_OPC_Decode, 32, 100, // Opcode: AGFI
+/* 293 */     MCD_OPC_FilterValue, 9, 3, 0, // Skip to: 300
+/* 297 */     MCD_OPC_Decode, 28, 101, // Opcode: AFI
+/* 300 */     MCD_OPC_FilterValue, 10, 3, 0, // Skip to: 307
+/* 304 */     MCD_OPC_Decode, 54, 102, // Opcode: ALGFI
+/* 307 */     MCD_OPC_FilterValue, 11, 3, 0, // Skip to: 314
+/* 311 */     MCD_OPC_Decode, 51, 96, // Opcode: ALFI
+/* 314 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 322
+/* 318 */     MCD_OPC_Decode, 154, 3, 92, // Opcode: CGFI
+/* 322 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 330
+/* 326 */     MCD_OPC_Decode, 147, 3, 103, // Opcode: CFI
+/* 330 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 338
+/* 334 */     MCD_OPC_Decode, 189, 3, 99, // Opcode: CLGFI
+/* 338 */     MCD_OPC_FilterValue, 15, 113, 12, // Skip to: 3527
+/* 342 */     MCD_OPC_Decode, 182, 3, 98, // Opcode: CLFI
+/* 346 */     MCD_OPC_FilterValue, 196, 1, 91, 0, // Skip to: 442
+/* 351 */     MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 354 */     MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 362
+/* 358 */     MCD_OPC_Decode, 242, 4, 104, // Opcode: LLHRL
+/* 362 */     MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 370
+/* 366 */     MCD_OPC_Decode, 214, 4, 91, // Opcode: LGHRL
+/* 370 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 378
+/* 374 */     MCD_OPC_Decode, 223, 4, 104, // Opcode: LHRL
+/* 378 */     MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 386
+/* 382 */     MCD_OPC_Decode, 237, 4, 91, // Opcode: LLGHRL
+/* 386 */     MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 394
+/* 390 */     MCD_OPC_Decode, 215, 6, 104, // Opcode: STHRL
+/* 394 */     MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 402
+/* 398 */     MCD_OPC_Decode, 216, 4, 91, // Opcode: LGRL
+/* 402 */     MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 410
+/* 406 */     MCD_OPC_Decode, 211, 6, 91, // Opcode: STGRL
+/* 410 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 418
+/* 414 */     MCD_OPC_Decode, 210, 4, 91, // Opcode: LGFRL
+/* 418 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 426
+/* 422 */     MCD_OPC_Decode, 141, 5, 104, // Opcode: LRL
+/* 426 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 434
+/* 430 */     MCD_OPC_Decode, 234, 4, 91, // Opcode: LLGFRL
+/* 434 */     MCD_OPC_FilterValue, 15, 17, 12, // Skip to: 3527
+/* 438 */     MCD_OPC_Decode, 221, 6, 104, // Opcode: STRL
+/* 442 */     MCD_OPC_FilterValue, 198, 1, 91, 0, // Skip to: 538
+/* 447 */     MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 450 */     MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 458
+/* 454 */     MCD_OPC_Decode, 138, 6, 94, // Opcode: PFDRL
+/* 458 */     MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 466
+/* 462 */     MCD_OPC_Decode, 159, 3, 91, // Opcode: CGHRL
+/* 466 */     MCD_OPC_FilterValue, 5, 4, 0, // Skip to: 474
+/* 470 */     MCD_OPC_Decode, 170, 3, 104, // Opcode: CHRL
+/* 474 */     MCD_OPC_FilterValue, 6, 4, 0, // Skip to: 482
+/* 478 */     MCD_OPC_Decode, 192, 3, 91, // Opcode: CLGHRL
+/* 482 */     MCD_OPC_FilterValue, 7, 4, 0, // Skip to: 490
+/* 486 */     MCD_OPC_Decode, 201, 3, 104, // Opcode: CLHRL
+/* 490 */     MCD_OPC_FilterValue, 8, 4, 0, // Skip to: 498
+/* 494 */     MCD_OPC_Decode, 164, 3, 91, // Opcode: CGRL
+/* 498 */     MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 506
+/* 502 */     MCD_OPC_Decode, 197, 3, 91, // Opcode: CLGRL
+/* 506 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 514
+/* 510 */     MCD_OPC_Decode, 156, 3, 91, // Opcode: CGFRL
+/* 514 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 522
+/* 518 */     MCD_OPC_Decode, 220, 3, 104, // Opcode: CRL
+/* 522 */     MCD_OPC_FilterValue, 14, 4, 0, // Skip to: 530
+/* 526 */     MCD_OPC_Decode, 191, 3, 91, // Opcode: CLGFRL
+/* 530 */     MCD_OPC_FilterValue, 15, 177, 11, // Skip to: 3527
+/* 534 */     MCD_OPC_Decode, 209, 3, 104, // Opcode: CLRL
+/* 538 */     MCD_OPC_FilterValue, 204, 1, 38, 0, // Skip to: 581
+/* 543 */     MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 546 */     MCD_OPC_FilterValue, 8, 7, 0, // Skip to: 557
+/* 550 */     MCD_OPC_CheckPredicate, 3, 157, 11, // Skip to: 3527
+/* 554 */     MCD_OPC_Decode, 45, 105, // Opcode: AIH
+/* 557 */     MCD_OPC_FilterValue, 13, 8, 0, // Skip to: 569
+/* 561 */     MCD_OPC_CheckPredicate, 3, 146, 11, // Skip to: 3527
+/* 565 */     MCD_OPC_Decode, 173, 3, 106, // Opcode: CIH
+/* 569 */     MCD_OPC_FilterValue, 15, 138, 11, // Skip to: 3527
+/* 573 */     MCD_OPC_CheckPredicate, 3, 134, 11, // Skip to: 3527
+/* 577 */     MCD_OPC_Decode, 203, 3, 98, // Opcode: CLIH
+/* 581 */     MCD_OPC_FilterValue, 210, 1, 4, 0, // Skip to: 590
+/* 586 */     MCD_OPC_Decode, 198, 5, 107, // Opcode: MVC
+/* 590 */     MCD_OPC_FilterValue, 212, 1, 4, 0, // Skip to: 599
+/* 595 */     MCD_OPC_Decode, 212, 5, 107, // Opcode: NC
+/* 599 */     MCD_OPC_FilterValue, 213, 1, 4, 0, // Skip to: 608
+/* 604 */     MCD_OPC_Decode, 176, 3, 107, // Opcode: CLC
+/* 608 */     MCD_OPC_FilterValue, 214, 1, 4, 0, // Skip to: 617
+/* 613 */     MCD_OPC_Decode, 239, 5, 107, // Opcode: OC
+/* 617 */     MCD_OPC_FilterValue, 215, 1, 4, 0, // Skip to: 626
+/* 622 */     MCD_OPC_Decode, 248, 6, 107, // Opcode: XC
+/* 626 */     MCD_OPC_FilterValue, 227, 1, 163, 2, // Skip to: 1306
+/* 631 */     MCD_OPC_ExtractField, 0, 8,  // Inst{7-0} ...
+/* 634 */     MCD_OPC_FilterValue, 2, 4, 0, // Skip to: 642
+/* 638 */     MCD_OPC_Decode, 152, 5, 108, // Opcode: LTG
+/* 642 */     MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 650
+/* 646 */     MCD_OPC_Decode, 203, 4, 108, // Opcode: LG
+/* 650 */     MCD_OPC_FilterValue, 8, 3, 0, // Skip to: 657
+/* 654 */     MCD_OPC_Decode, 30, 109, // Opcode: AG
+/* 657 */     MCD_OPC_FilterValue, 9, 4, 0, // Skip to: 665
+/* 661 */     MCD_OPC_Decode, 159, 6, 109, // Opcode: SG
+/* 665 */     MCD_OPC_FilterValue, 10, 3, 0, // Skip to: 672
+/* 669 */     MCD_OPC_Decode, 52, 109, // Opcode: ALG
+/* 672 */     MCD_OPC_FilterValue, 11, 4, 0, // Skip to: 680
+/* 676 */     MCD_OPC_Decode, 171, 6, 109, // Opcode: SLG
+/* 680 */     MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 688
+/* 684 */     MCD_OPC_Decode, 191, 5, 109, // Opcode: MSG
+/* 688 */     MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 696
+/* 692 */     MCD_OPC_Decode, 130, 4, 110, // Opcode: DSG
+/* 696 */     MCD_OPC_FilterValue, 15, 4, 0, // Skip to: 704
+/* 700 */     MCD_OPC_Decode, 144, 5, 108, // Opcode: LRVG
+/* 704 */     MCD_OPC_FilterValue, 18, 4, 0, // Skip to: 712
+/* 708 */     MCD_OPC_Decode, 147, 5, 111, // Opcode: LT
+/* 712 */     MCD_OPC_FilterValue, 20, 4, 0, // Skip to: 720
+/* 716 */     MCD_OPC_Decode, 207, 4, 108, // Opcode: LGF
+/* 720 */     MCD_OPC_FilterValue, 21, 4, 0, // Skip to: 728
+/* 724 */     MCD_OPC_Decode, 211, 4, 108, // Opcode: LGH
+/* 728 */     MCD_OPC_FilterValue, 22, 4, 0, // Skip to: 736
+/* 732 */     MCD_OPC_Decode, 232, 4, 108, // Opcode: LLGF
+/* 736 */     MCD_OPC_FilterValue, 24, 3, 0, // Skip to: 743
+/* 740 */     MCD_OPC_Decode, 31, 109, // Opcode: AGF
+/* 743 */     MCD_OPC_FilterValue, 25, 4, 0, // Skip to: 751
+/* 747 */     MCD_OPC_Decode, 160, 6, 109, // Opcode: SGF
+/* 751 */     MCD_OPC_FilterValue, 26, 3, 0, // Skip to: 758
+/* 755 */     MCD_OPC_Decode, 53, 109, // Opcode: ALGF
+/* 758 */     MCD_OPC_FilterValue, 27, 4, 0, // Skip to: 766
+/* 762 */     MCD_OPC_Decode, 173, 6, 109, // Opcode: SLGF
+/* 766 */     MCD_OPC_FilterValue, 28, 4, 0, // Skip to: 774
+/* 770 */     MCD_OPC_Decode, 192, 5, 109, // Opcode: MSGF
+/* 774 */     MCD_OPC_FilterValue, 29, 4, 0, // Skip to: 782
+/* 778 */     MCD_OPC_Decode, 131, 4, 110, // Opcode: DSGF
+/* 782 */     MCD_OPC_FilterValue, 30, 4, 0, // Skip to: 790
+/* 786 */     MCD_OPC_Decode, 143, 5, 111, // Opcode: LRV
+/* 790 */     MCD_OPC_FilterValue, 32, 4, 0, // Skip to: 798
+/* 794 */     MCD_OPC_Decode, 150, 3, 108, // Opcode: CG
+/* 798 */     MCD_OPC_FilterValue, 33, 4, 0, // Skip to: 806
+/* 802 */     MCD_OPC_Decode, 185, 3, 108, // Opcode: CLG
+/* 806 */     MCD_OPC_FilterValue, 36, 4, 0, // Skip to: 814
+/* 810 */     MCD_OPC_Decode, 210, 6, 108, // Opcode: STG
+/* 814 */     MCD_OPC_FilterValue, 47, 4, 0, // Skip to: 822
+/* 818 */     MCD_OPC_Decode, 223, 6, 108, // Opcode: STRVG
+/* 822 */     MCD_OPC_FilterValue, 48, 4, 0, // Skip to: 830
+/* 826 */     MCD_OPC_Decode, 153, 3, 108, // Opcode: CGF
+/* 830 */     MCD_OPC_FilterValue, 49, 4, 0, // Skip to: 838
+/* 834 */     MCD_OPC_Decode, 188, 3, 108, // Opcode: CLGF
+/* 838 */     MCD_OPC_FilterValue, 50, 4, 0, // Skip to: 846
+/* 842 */     MCD_OPC_Decode, 153, 5, 108, // Opcode: LTGF
+/* 846 */     MCD_OPC_FilterValue, 52, 4, 0, // Skip to: 854
+/* 850 */     MCD_OPC_Decode, 157, 3, 108, // Opcode: CGH
+/* 854 */     MCD_OPC_FilterValue, 54, 4, 0, // Skip to: 862
+/* 858 */     MCD_OPC_Decode, 137, 6, 112, // Opcode: PFD
+/* 862 */     MCD_OPC_FilterValue, 62, 4, 0, // Skip to: 870
+/* 866 */     MCD_OPC_Decode, 222, 6, 111, // Opcode: STRV
+/* 870 */     MCD_OPC_FilterValue, 80, 4, 0, // Skip to: 878
+/* 874 */     MCD_OPC_Decode, 225, 6, 111, // Opcode: STY
+/* 878 */     MCD_OPC_FilterValue, 81, 4, 0, // Skip to: 886
+/* 882 */     MCD_OPC_Decode, 197, 5, 113, // Opcode: MSY
+/* 886 */     MCD_OPC_FilterValue, 84, 4, 0, // Skip to: 894
+/* 890 */     MCD_OPC_Decode, 237, 5, 113, // Opcode: NY
+/* 894 */     MCD_OPC_FilterValue, 85, 4, 0, // Skip to: 902
+/* 898 */     MCD_OPC_Decode, 212, 3, 111, // Opcode: CLY
+/* 902 */     MCD_OPC_FilterValue, 86, 4, 0, // Skip to: 910
+/* 906 */     MCD_OPC_Decode, 136, 6, 113, // Opcode: OY
+/* 910 */     MCD_OPC_FilterValue, 87, 4, 0, // Skip to: 918
+/* 914 */     MCD_OPC_Decode, 135, 7, 113, // Opcode: XY
+/* 918 */     MCD_OPC_FilterValue, 88, 4, 0, // Skip to: 926
+/* 922 */     MCD_OPC_Decode, 165, 5, 111, // Opcode: LY
+/* 926 */     MCD_OPC_FilterValue, 89, 4, 0, // Skip to: 934
+/* 930 */     MCD_OPC_Decode, 229, 3, 111, // Opcode: CY
+/* 934 */     MCD_OPC_FilterValue, 90, 4, 0, // Skip to: 942
+/* 938 */     MCD_OPC_Decode, 140, 1, 113, // Opcode: AY
+/* 942 */     MCD_OPC_FilterValue, 91, 4, 0, // Skip to: 950
+/* 946 */     MCD_OPC_Decode, 227, 6, 113, // Opcode: SY
+/* 950 */     MCD_OPC_FilterValue, 94, 3, 0, // Skip to: 957
+/* 954 */     MCD_OPC_Decode, 62, 113, // Opcode: ALY
+/* 957 */     MCD_OPC_FilterValue, 95, 4, 0, // Skip to: 965
+/* 961 */     MCD_OPC_Decode, 183, 6, 113, // Opcode: SLY
+/* 965 */     MCD_OPC_FilterValue, 112, 4, 0, // Skip to: 973
+/* 969 */     MCD_OPC_Decode, 216, 6, 111, // Opcode: STHY
+/* 973 */     MCD_OPC_FilterValue, 113, 4, 0, // Skip to: 981
+/* 977 */     MCD_OPC_Decode, 179, 4, 108, // Opcode: LAY
+/* 981 */     MCD_OPC_FilterValue, 114, 4, 0, // Skip to: 989
+/* 985 */     MCD_OPC_Decode, 204, 6, 111, // Opcode: STCY
+/* 989 */     MCD_OPC_FilterValue, 115, 4, 0, // Skip to: 997
+/* 993 */     MCD_OPC_Decode, 146, 4, 109, // Opcode: ICY
+/* 997 */     MCD_OPC_FilterValue, 118, 4, 0, // Skip to: 1005
+/* 1001 */    MCD_OPC_Decode, 180, 4, 111, // Opcode: LB
+/* 1005 */    MCD_OPC_FilterValue, 119, 4, 0, // Skip to: 1013
+/* 1009 */    MCD_OPC_Decode, 204, 4, 108, // Opcode: LGB
+/* 1013 */    MCD_OPC_FilterValue, 120, 4, 0, // Skip to: 1021
+/* 1017 */    MCD_OPC_Decode, 224, 4, 111, // Opcode: LHY
+/* 1021 */    MCD_OPC_FilterValue, 121, 4, 0, // Skip to: 1029
+/* 1025 */    MCD_OPC_Decode, 172, 3, 111, // Opcode: CHY
+/* 1029 */    MCD_OPC_FilterValue, 122, 3, 0, // Skip to: 1036
+/* 1033 */    MCD_OPC_Decode, 44, 113, // Opcode: AHY
+/* 1036 */    MCD_OPC_FilterValue, 123, 4, 0, // Skip to: 1044
+/* 1040 */    MCD_OPC_Decode, 165, 6, 113, // Opcode: SHY
+/* 1044 */    MCD_OPC_FilterValue, 124, 4, 0, // Skip to: 1052
+/* 1048 */    MCD_OPC_Decode, 182, 5, 113, // Opcode: MHY
+/* 1052 */    MCD_OPC_FilterValue, 128, 1, 4, 0, // Skip to: 1061
+/* 1057 */    MCD_OPC_Decode, 215, 5, 109, // Opcode: NG
+/* 1061 */    MCD_OPC_FilterValue, 129, 1, 4, 0, // Skip to: 1070
+/* 1066 */    MCD_OPC_Decode, 242, 5, 109, // Opcode: OG
+/* 1070 */    MCD_OPC_FilterValue, 130, 1, 4, 0, // Skip to: 1079
+/* 1075 */    MCD_OPC_Decode, 251, 6, 109, // Opcode: XG
+/* 1079 */    MCD_OPC_FilterValue, 134, 1, 4, 0, // Skip to: 1088
+/* 1084 */    MCD_OPC_Decode, 183, 5, 110, // Opcode: MLG
+/* 1088 */    MCD_OPC_FilterValue, 135, 1, 4, 0, // Skip to: 1097
+/* 1093 */    MCD_OPC_Decode, 255, 3, 110, // Opcode: DLG
+/* 1097 */    MCD_OPC_FilterValue, 136, 1, 3, 0, // Skip to: 1105
+/* 1102 */    MCD_OPC_Decode, 48, 109, // Opcode: ALCG
+/* 1105 */    MCD_OPC_FilterValue, 137, 1, 4, 0, // Skip to: 1114
+/* 1110 */    MCD_OPC_Decode, 168, 6, 109, // Opcode: SLBG
+/* 1114 */    MCD_OPC_FilterValue, 144, 1, 4, 0, // Skip to: 1123
+/* 1119 */    MCD_OPC_Decode, 230, 4, 108, // Opcode: LLGC
+/* 1123 */    MCD_OPC_FilterValue, 145, 1, 4, 0, // Skip to: 1132
+/* 1128 */    MCD_OPC_Decode, 235, 4, 108, // Opcode: LLGH
+/* 1132 */    MCD_OPC_FilterValue, 148, 1, 4, 0, // Skip to: 1141
+/* 1137 */    MCD_OPC_Decode, 225, 4, 111, // Opcode: LLC
+/* 1141 */    MCD_OPC_FilterValue, 149, 1, 4, 0, // Skip to: 1150
+/* 1146 */    MCD_OPC_Decode, 238, 4, 111, // Opcode: LLH
+/* 1150 */    MCD_OPC_FilterValue, 151, 1, 4, 0, // Skip to: 1159
+/* 1155 */    MCD_OPC_Decode, 254, 3, 110, // Opcode: DL
+/* 1159 */    MCD_OPC_FilterValue, 152, 1, 3, 0, // Skip to: 1167
+/* 1164 */    MCD_OPC_Decode, 47, 113, // Opcode: ALC
+/* 1167 */    MCD_OPC_FilterValue, 153, 1, 4, 0, // Skip to: 1176
+/* 1172 */    MCD_OPC_Decode, 167, 6, 113, // Opcode: SLB
+/* 1176 */    MCD_OPC_FilterValue, 192, 1, 8, 0, // Skip to: 1189
+/* 1181 */    MCD_OPC_CheckPredicate, 3, 38, 9, // Skip to: 3527
+/* 1185 */    MCD_OPC_Decode, 181, 4, 114, // Opcode: LBH
+/* 1189 */    MCD_OPC_FilterValue, 194, 1, 8, 0, // Skip to: 1202
+/* 1194 */    MCD_OPC_CheckPredicate, 3, 25, 9, // Skip to: 3527
+/* 1198 */    MCD_OPC_Decode, 226, 4, 111, // Opcode: LLCH
+/* 1202 */    MCD_OPC_FilterValue, 195, 1, 8, 0, // Skip to: 1215
+/* 1207 */    MCD_OPC_CheckPredicate, 3, 12, 9, // Skip to: 3527
+/* 1211 */    MCD_OPC_Decode, 202, 6, 114, // Opcode: STCH
+/* 1215 */    MCD_OPC_FilterValue, 196, 1, 8, 0, // Skip to: 1228
+/* 1220 */    MCD_OPC_CheckPredicate, 3, 255, 8, // Skip to: 3527
+/* 1224 */    MCD_OPC_Decode, 218, 4, 114, // Opcode: LHH
+/* 1228 */    MCD_OPC_FilterValue, 198, 1, 8, 0, // Skip to: 1241
+/* 1233 */    MCD_OPC_CheckPredicate, 3, 242, 8, // Skip to: 3527
+/* 1237 */    MCD_OPC_Decode, 239, 4, 111, // Opcode: LLHH
+/* 1241 */    MCD_OPC_FilterValue, 199, 1, 8, 0, // Skip to: 1254
+/* 1246 */    MCD_OPC_CheckPredicate, 3, 229, 8, // Skip to: 3527
+/* 1250 */    MCD_OPC_Decode, 213, 6, 114, // Opcode: STHH
+/* 1254 */    MCD_OPC_FilterValue, 202, 1, 8, 0, // Skip to: 1267
+/* 1259 */    MCD_OPC_CheckPredicate, 3, 216, 8, // Skip to: 3527
+/* 1263 */    MCD_OPC_Decode, 202, 4, 114, // Opcode: LFH
+/* 1267 */    MCD_OPC_FilterValue, 203, 1, 8, 0, // Skip to: 1280
+/* 1272 */    MCD_OPC_CheckPredicate, 3, 203, 8, // Skip to: 3527
+/* 1276 */    MCD_OPC_Decode, 209, 6, 114, // Opcode: STFH
+/* 1280 */    MCD_OPC_FilterValue, 205, 1, 8, 0, // Skip to: 1293
+/* 1285 */    MCD_OPC_CheckPredicate, 3, 190, 8, // Skip to: 3527
+/* 1289 */    MCD_OPC_Decode, 167, 3, 114, // Opcode: CHF
+/* 1293 */    MCD_OPC_FilterValue, 207, 1, 181, 8, // Skip to: 3527
+/* 1298 */    MCD_OPC_CheckPredicate, 3, 177, 8, // Skip to: 3527
+/* 1302 */    MCD_OPC_Decode, 199, 3, 114, // Opcode: CLHF
+/* 1306 */    MCD_OPC_FilterValue, 229, 1, 75, 0, // Skip to: 1386
+/* 1311 */    MCD_OPC_ExtractField, 32, 8,  // Inst{39-32} ...
+/* 1314 */    MCD_OPC_FilterValue, 68, 4, 0, // Skip to: 1322
+/* 1318 */    MCD_OPC_Decode, 202, 5, 115, // Opcode: MVHHI
+/* 1322 */    MCD_OPC_FilterValue, 72, 4, 0, // Skip to: 1330
+/* 1326 */    MCD_OPC_Decode, 201, 5, 115, // Opcode: MVGHI
+/* 1330 */    MCD_OPC_FilterValue, 76, 4, 0, // Skip to: 1338
+/* 1334 */    MCD_OPC_Decode, 203, 5, 115, // Opcode: MVHI
+/* 1338 */    MCD_OPC_FilterValue, 84, 4, 0, // Skip to: 1346
+/* 1342 */    MCD_OPC_Decode, 168, 3, 115, // Opcode: CHHSI
+/* 1346 */    MCD_OPC_FilterValue, 85, 4, 0, // Skip to: 1354
+/* 1350 */    MCD_OPC_Decode, 200, 3, 116, // Opcode: CLHHSI
+/* 1354 */    MCD_OPC_FilterValue, 88, 4, 0, // Skip to: 1362
+/* 1358 */    MCD_OPC_Decode, 160, 3, 115, // Opcode: CGHSI
+/* 1362 */    MCD_OPC_FilterValue, 89, 4, 0, // Skip to: 1370
+/* 1366 */    MCD_OPC_Decode, 193, 3, 116, // Opcode: CLGHSI
+/* 1370 */    MCD_OPC_FilterValue, 92, 4, 0, // Skip to: 1378
+/* 1374 */    MCD_OPC_Decode, 171, 3, 115, // Opcode: CHSI
+/* 1378 */    MCD_OPC_FilterValue, 93, 97, 8, // Skip to: 3527
+/* 1382 */    MCD_OPC_Decode, 181, 3, 116, // Opcode: CLFHSI
+/* 1386 */    MCD_OPC_FilterValue, 235, 1, 53, 4, // Skip to: 2468
+/* 1391 */    MCD_OPC_ExtractField, 0, 8,  // Inst{7-0} ...
+/* 1394 */    MCD_OPC_FilterValue, 4, 4, 0, // Skip to: 1402
+/* 1398 */    MCD_OPC_Decode, 250, 4, 117, // Opcode: LMG
+/* 1402 */    MCD_OPC_FilterValue, 10, 4, 0, // Skip to: 1410
+/* 1406 */    MCD_OPC_Decode, 191, 6, 118, // Opcode: SRAG
+/* 1410 */    MCD_OPC_FilterValue, 12, 4, 0, // Skip to: 1418
+/* 1414 */    MCD_OPC_Decode, 195, 6, 118, // Opcode: SRLG
+/* 1418 */    MCD_OPC_FilterValue, 13, 4, 0, // Skip to: 1426
+/* 1422 */    MCD_OPC_Decode, 179, 6, 118, // Opcode: SLLG
+/* 1426 */    MCD_OPC_FilterValue, 20, 4, 0, // Skip to: 1434
+/* 1430 */    MCD_OPC_Decode, 223, 3, 119, // Opcode: CSY
+/* 1434 */    MCD_OPC_FilterValue, 28, 4, 0, // Skip to: 1442
+/* 1438 */    MCD_OPC_Decode, 149, 6, 118, // Opcode: RLLG
+/* 1442 */    MCD_OPC_FilterValue, 29, 4, 0, // Skip to: 1450
+/* 1446 */    MCD_OPC_Decode, 148, 6, 120, // Opcode: RLL
+/* 1450 */    MCD_OPC_FilterValue, 36, 4, 0, // Skip to: 1458
+/* 1454 */    MCD_OPC_Decode, 217, 6, 117, // Opcode: STMG
+/* 1458 */    MCD_OPC_FilterValue, 48, 4, 0, // Skip to: 1466
+/* 1462 */    MCD_OPC_Decode, 222, 3, 121, // Opcode: CSG
+/* 1466 */    MCD_OPC_FilterValue, 81, 4, 0, // Skip to: 1474
+/* 1470 */    MCD_OPC_Decode, 246, 6, 122, // Opcode: TMY
+/* 1474 */    MCD_OPC_FilterValue, 82, 4, 0, // Skip to: 1482
+/* 1478 */    MCD_OPC_Decode, 205, 5, 122, // Opcode: MVIY
+/* 1482 */    MCD_OPC_FilterValue, 84, 4, 0, // Skip to: 1490
+/* 1486 */    MCD_OPC_Decode, 234, 5, 122, // Opcode: NIY
+/* 1490 */    MCD_OPC_FilterValue, 85, 4, 0, // Skip to: 1498
+/* 1494 */    MCD_OPC_Decode, 205, 3, 122, // Opcode: CLIY
+/* 1498 */    MCD_OPC_FilterValue, 86, 4, 0, // Skip to: 1506
+/* 1502 */    MCD_OPC_Decode, 133, 6, 122, // Opcode: OIY
+/* 1506 */    MCD_OPC_FilterValue, 87, 4, 0, // Skip to: 1514
+/* 1510 */    MCD_OPC_Decode, 132, 7, 122, // Opcode: XIY
+/* 1514 */    MCD_OPC_FilterValue, 106, 3, 0, // Skip to: 1521
+/* 1518 */    MCD_OPC_Decode, 65, 123, // Opcode: ASI
+/* 1521 */    MCD_OPC_FilterValue, 122, 3, 0, // Skip to: 1528
+/* 1525 */    MCD_OPC_Decode, 38, 123, // Opcode: AGSI
+/* 1528 */    MCD_OPC_FilterValue, 220, 1, 8, 0, // Skip to: 1541
+/* 1533 */    MCD_OPC_CheckPredicate, 2, 198, 7, // Skip to: 3527
+/* 1537 */    MCD_OPC_Decode, 192, 6, 120, // Opcode: SRAK
+/* 1541 */    MCD_OPC_FilterValue, 222, 1, 8, 0, // Skip to: 1554
+/* 1546 */    MCD_OPC_CheckPredicate, 2, 185, 7, // Skip to: 3527
+/* 1550 */    MCD_OPC_Decode, 196, 6, 120, // Opcode: SRLK
+/* 1554 */    MCD_OPC_FilterValue, 223, 1, 8, 0, // Skip to: 1567
+/* 1559 */    MCD_OPC_CheckPredicate, 2, 172, 7, // Skip to: 3527
+/* 1563 */    MCD_OPC_Decode, 180, 6, 120, // Opcode: SLLK
+/* 1567 */    MCD_OPC_FilterValue, 226, 1, 179, 0, // Skip to: 1751
+/* 1572 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 1575 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 1587
+/* 1579 */    MCD_OPC_CheckPredicate, 1, 160, 0, // Skip to: 1743
+/* 1583 */    MCD_OPC_Decode, 245, 2, 124, // Opcode: AsmOLOCG
+/* 1587 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 1599
+/* 1591 */    MCD_OPC_CheckPredicate, 1, 148, 0, // Skip to: 1743
+/* 1595 */    MCD_OPC_Decode, 174, 1, 124, // Opcode: AsmHLOCG
+/* 1599 */    MCD_OPC_FilterValue, 3, 8, 0, // Skip to: 1611
+/* 1603 */    MCD_OPC_CheckPredicate, 1, 136, 0, // Skip to: 1743
+/* 1607 */    MCD_OPC_Decode, 210, 2, 124, // Opcode: AsmNLELOCG
+/* 1611 */    MCD_OPC_FilterValue, 4, 8, 0, // Skip to: 1623
+/* 1615 */    MCD_OPC_CheckPredicate, 1, 124, 0, // Skip to: 1743
+/* 1619 */    MCD_OPC_Decode, 169, 2, 124, // Opcode: AsmLLOCG
+/* 1623 */    MCD_OPC_FilterValue, 5, 8, 0, // Skip to: 1635
+/* 1627 */    MCD_OPC_CheckPredicate, 1, 112, 0, // Skip to: 1743
+/* 1631 */    MCD_OPC_Decode, 192, 2, 124, // Opcode: AsmNHELOCG
+/* 1635 */    MCD_OPC_FilterValue, 6, 8, 0, // Skip to: 1647
+/* 1639 */    MCD_OPC_CheckPredicate, 1, 100, 0, // Skip to: 1743
+/* 1643 */    MCD_OPC_Decode, 161, 2, 124, // Opcode: AsmLHLOCG
+/* 1647 */    MCD_OPC_FilterValue, 7, 8, 0, // Skip to: 1659
+/* 1651 */    MCD_OPC_CheckPredicate, 1, 88, 0, // Skip to: 1743
+/* 1655 */    MCD_OPC_Decode, 182, 2, 124, // Opcode: AsmNELOCG
+/* 1659 */    MCD_OPC_FilterValue, 8, 8, 0, // Skip to: 1671
+/* 1663 */    MCD_OPC_CheckPredicate, 1, 76, 0, // Skip to: 1743
+/* 1667 */    MCD_OPC_Decode, 156, 1, 124, // Opcode: AsmELOCG
+/* 1671 */    MCD_OPC_FilterValue, 9, 8, 0, // Skip to: 1683
+/* 1675 */    MCD_OPC_CheckPredicate, 1, 64, 0, // Skip to: 1743
+/* 1679 */    MCD_OPC_Decode, 219, 2, 124, // Opcode: AsmNLHLOCG
+/* 1683 */    MCD_OPC_FilterValue, 10, 8, 0, // Skip to: 1695
+/* 1687 */    MCD_OPC_CheckPredicate, 1, 52, 0, // Skip to: 1743
+/* 1691 */    MCD_OPC_Decode, 166, 1, 124, // Opcode: AsmHELOCG
+/* 1695 */    MCD_OPC_FilterValue, 11, 8, 0, // Skip to: 1707
+/* 1699 */    MCD_OPC_CheckPredicate, 1, 40, 0, // Skip to: 1743
+/* 1703 */    MCD_OPC_Decode, 227, 2, 124, // Opcode: AsmNLLOCG
+/* 1707 */    MCD_OPC_FilterValue, 12, 8, 0, // Skip to: 1719
+/* 1711 */    MCD_OPC_CheckPredicate, 1, 28, 0, // Skip to: 1743
+/* 1715 */    MCD_OPC_Decode, 152, 2, 124, // Opcode: AsmLELOCG
+/* 1719 */    MCD_OPC_FilterValue, 13, 8, 0, // Skip to: 1731
+/* 1723 */    MCD_OPC_CheckPredicate, 1, 16, 0, // Skip to: 1743
+/* 1727 */    MCD_OPC_Decode, 200, 2, 124, // Opcode: AsmNHLOCG
+/* 1731 */    MCD_OPC_FilterValue, 14, 8, 0, // Skip to: 1743
+/* 1735 */    MCD_OPC_CheckPredicate, 1, 4, 0, // Skip to: 1743
+/* 1739 */    MCD_OPC_Decode, 236, 2, 124, // Opcode: AsmNOLOCG
+/* 1743 */    MCD_OPC_CheckPredicate, 1, 244, 6, // Skip to: 3527
+/* 1747 */    MCD_OPC_Decode, 173, 2, 125, // Opcode: AsmLOCG
+/* 1751 */    MCD_OPC_FilterValue, 227, 1, 179, 0, // Skip to: 1935
+/* 1756 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 1759 */    MCD_OPC_FilterValue, 1, 8, 0, // Skip to: 1771
+/* 1763 */    MCD_OPC_CheckPredicate, 1, 160, 0, // Skip to: 1927
+/* 1767 */    MCD_OPC_Decode, 249, 2, 126, // Opcode: AsmOSTOCG
+/* 1771 */    MCD_OPC_FilterValue, 2, 8, 0, // Skip to: 1783
+/* 1775 */    MCD_OPC_CheckPredicate, 1, 148, 0, // Skip to: 1927
+/* 1779 */    MCD_OPC_Decode, 178, 1, 126, // Opcode: AsmHSTOCG
+/* 1783 */    MCD_OPC_FilterValue, 3, 8, 0, // Skip to: 1795
+/* 1787 */    MCD_OPC_CheckPredicate, 1, 136, 0, // Skip to: 1927
+/* 1791 */    MCD_OPC_Decode, 214, 2, 126, // Opcode: AsmNLESTOCG
+/* 1795 */    MCD_OPC_FilterValue, 4, 8, 0, // Skip to: 1807
+/* 1799 */    MCD_OPC_CheckPredicate, 1, 124, 0, // Skip to: 1927
+/* 1803 */    MCD_OPC_Decode, 177, 2, 126, // Opcode: AsmLSTOCG
+/* 1807 */    MCD_OPC_FilterValue, 5, 8, 0, // Skip to: 1819
+/* 1811 */    MCD_OPC_CheckPredicate, 1, 112, 0, // Skip to: 1927
+/* 1815 */    MCD_OPC_Decode, 196, 2, 126, // Opcode: AsmNHESTOCG
+/* 1819 */    MCD_OPC_FilterValue, 6, 8, 0, // Skip to: 1831
+/* 1823 */    MCD_OPC_CheckPredicate, 1, 100, 0, // Skip to: 1927
+/* 1827 */    MCD_OPC_Decode, 165, 2, 126, // Opcode: AsmLHSTOCG
+/* 1831 */    MCD_OPC_FilterValue, 7, 8, 0, // Skip to: 1843
+/* 1835 */    MCD_OPC_CheckPredicate, 1, 88, 0, // Skip to: 1927
+/* 1839 */    MCD_OPC_Decode, 186, 2, 126, // Opcode: AsmNESTOCG
+/* 1843 */    MCD_OPC_FilterValue, 8, 8, 0, // Skip to: 1855
+/* 1847 */    MCD_OPC_CheckPredicate, 1, 76, 0, // Skip to: 1927
+/* 1851 */    MCD_OPC_Decode, 160, 1, 126, // Opcode: AsmESTOCG
+/* 1855 */    MCD_OPC_FilterValue, 9, 8, 0, // Skip to: 1867
+/* 1859 */    MCD_OPC_CheckPredicate, 1, 64, 0, // Skip to: 1927
+/* 1863 */    MCD_OPC_Decode, 223, 2, 126, // Opcode: AsmNLHSTOCG
+/* 1867 */    MCD_OPC_FilterValue, 10, 8, 0, // Skip to: 1879
+/* 1871 */    MCD_OPC_CheckPredicate, 1, 52, 0, // Skip to: 1927
+/* 1875 */    MCD_OPC_Decode, 170, 1, 126, // Opcode: AsmHESTOCG
+/* 1879 */    MCD_OPC_FilterValue, 11, 8, 0, // Skip to: 1891
+/* 1883 */    MCD_OPC_CheckPredicate, 1, 40, 0, // Skip to: 1927
+/* 1887 */    MCD_OPC_Decode, 231, 2, 126, // Opcode: AsmNLSTOCG
+/* 1891 */    MCD_OPC_FilterValue, 12, 8, 0, // Skip to: 1903
+/* 1895 */    MCD_OPC_CheckPredicate, 1, 28, 0, // Skip to: 1927
+/* 1899 */    MCD_OPC_Decode, 156, 2, 126, // Opcode: AsmLESTOCG
+/* 1903 */    MCD_OPC_FilterValue, 13, 8, 0, // Skip to: 1915
+/* 1907 */    MCD_OPC_CheckPredicate, 1, 16, 0, // Skip to: 1927
+/* 1911 */    MCD_OPC_Decode, 204, 2, 126, // Opcode: AsmNHSTOCG
+/* 1915 */    MCD_OPC_FilterValue, 14, 8, 0, // Skip to: 1927
+/* 1919 */    MCD_OPC_CheckPredicate, 1, 4, 0, // Skip to: 1927
+/* 1923 */    MCD_OPC_Decode, 240, 2, 126, // Opcode: AsmNOSTOCG
+/* 1927 */    MCD_OPC_CheckPredicate, 1, 60, 6, // Skip to: 3527
+/* 1931 */    MCD_OPC_Decode, 251, 2, 127, // Opcode: AsmSTOCG
+/* 1935 */    MCD_OPC_FilterValue, 228, 1, 8, 0, // Skip to: 1948
+/* 1940 */    MCD_OPC_CheckPredicate, 4, 47, 6, // Skip to: 3527
+/* 1944 */    MCD_OPC_Decode, 173, 4, 117, // Opcode: LANG
+/* 1948 */    MCD_OPC_FilterValue, 230, 1, 8, 0, // Skip to: 1961
+/* 1953 */    MCD_OPC_CheckPredicate, 4, 34, 6, // Skip to: 3527
+/* 1957 */    MCD_OPC_Decode, 175, 4, 117, // Opcode: LAOG
+/* 1961 */    MCD_OPC_FilterValue, 231, 1, 8, 0, // Skip to: 1974
+/* 1966 */    MCD_OPC_CheckPredicate, 4, 21, 6, // Skip to: 3527
+/* 1970 */    MCD_OPC_Decode, 178, 4, 117, // Opcode: LAXG
+/* 1974 */    MCD_OPC_FilterValue, 232, 1, 8, 0, // Skip to: 1987
+/* 1979 */    MCD_OPC_CheckPredicate, 4, 8, 6, // Skip to: 3527
+/* 1983 */    MCD_OPC_Decode, 169, 4, 117, // Opcode: LAAG
+/* 1987 */    MCD_OPC_FilterValue, 234, 1, 8, 0, // Skip to: 2000
+/* 1992 */    MCD_OPC_CheckPredicate, 4, 251, 5, // Skip to: 3527
+/* 1996 */    MCD_OPC_Decode, 171, 4, 117, // Opcode: LAALG
+/* 2000 */    MCD_OPC_FilterValue, 242, 1, 194, 0, // Skip to: 2199
+/* 2005 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 2008 */    MCD_OPC_FilterValue, 1, 9, 0, // Skip to: 2021
+/* 2012 */    MCD_OPC_CheckPredicate, 1, 174, 0, // Skip to: 2190
+/* 2016 */    MCD_OPC_Decode, 244, 2, 128, 1, // Opcode: AsmOLOC
+/* 2021 */    MCD_OPC_FilterValue, 2, 9, 0, // Skip to: 2034
+/* 2025 */    MCD_OPC_CheckPredicate, 1, 161, 0, // Skip to: 2190
+/* 2029 */    MCD_OPC_Decode, 173, 1, 128, 1, // Opcode: AsmHLOC
+/* 2034 */    MCD_OPC_FilterValue, 3, 9, 0, // Skip to: 2047
+/* 2038 */    MCD_OPC_CheckPredicate, 1, 148, 0, // Skip to: 2190
+/* 2042 */    MCD_OPC_Decode, 209, 2, 128, 1, // Opcode: AsmNLELOC
+/* 2047 */    MCD_OPC_FilterValue, 4, 9, 0, // Skip to: 2060
+/* 2051 */    MCD_OPC_CheckPredicate, 1, 135, 0, // Skip to: 2190
+/* 2055 */    MCD_OPC_Decode, 168, 2, 128, 1, // Opcode: AsmLLOC
+/* 2060 */    MCD_OPC_FilterValue, 5, 9, 0, // Skip to: 2073
+/* 2064 */    MCD_OPC_CheckPredicate, 1, 122, 0, // Skip to: 2190
+/* 2068 */    MCD_OPC_Decode, 191, 2, 128, 1, // Opcode: AsmNHELOC
+/* 2073 */    MCD_OPC_FilterValue, 6, 9, 0, // Skip to: 2086
+/* 2077 */    MCD_OPC_CheckPredicate, 1, 109, 0, // Skip to: 2190
+/* 2081 */    MCD_OPC_Decode, 160, 2, 128, 1, // Opcode: AsmLHLOC
+/* 2086 */    MCD_OPC_FilterValue, 7, 9, 0, // Skip to: 2099
+/* 2090 */    MCD_OPC_CheckPredicate, 1, 96, 0, // Skip to: 2190
+/* 2094 */    MCD_OPC_Decode, 181, 2, 128, 1, // Opcode: AsmNELOC
+/* 2099 */    MCD_OPC_FilterValue, 8, 9, 0, // Skip to: 2112
+/* 2103 */    MCD_OPC_CheckPredicate, 1, 83, 0, // Skip to: 2190
+/* 2107 */    MCD_OPC_Decode, 155, 1, 128, 1, // Opcode: AsmELOC
+/* 2112 */    MCD_OPC_FilterValue, 9, 9, 0, // Skip to: 2125
+/* 2116 */    MCD_OPC_CheckPredicate, 1, 70, 0, // Skip to: 2190
+/* 2120 */    MCD_OPC_Decode, 218, 2, 128, 1, // Opcode: AsmNLHLOC
+/* 2125 */    MCD_OPC_FilterValue, 10, 9, 0, // Skip to: 2138
+/* 2129 */    MCD_OPC_CheckPredicate, 1, 57, 0, // Skip to: 2190
+/* 2133 */    MCD_OPC_Decode, 165, 1, 128, 1, // Opcode: AsmHELOC
+/* 2138 */    MCD_OPC_FilterValue, 11, 9, 0, // Skip to: 2151
+/* 2142 */    MCD_OPC_CheckPredicate, 1, 44, 0, // Skip to: 2190
+/* 2146 */    MCD_OPC_Decode, 226, 2, 128, 1, // Opcode: AsmNLLOC
+/* 2151 */    MCD_OPC_FilterValue, 12, 9, 0, // Skip to: 2164
+/* 2155 */    MCD_OPC_CheckPredicate, 1, 31, 0, // Skip to: 2190
+/* 2159 */    MCD_OPC_Decode, 151, 2, 128, 1, // Opcode: AsmLELOC
+/* 2164 */    MCD_OPC_FilterValue, 13, 9, 0, // Skip to: 2177
+/* 2168 */    MCD_OPC_CheckPredicate, 1, 18, 0, // Skip to: 2190
+/* 2172 */    MCD_OPC_Decode, 199, 2, 128, 1, // Opcode: AsmNHLOC
+/* 2177 */    MCD_OPC_FilterValue, 14, 9, 0, // Skip to: 2190
+/* 2181 */    MCD_OPC_CheckPredicate, 1, 5, 0, // Skip to: 2190
+/* 2185 */    MCD_OPC_Decode, 235, 2, 128, 1, // Opcode: AsmNOLOC
+/* 2190 */    MCD_OPC_CheckPredicate, 1, 53, 5, // Skip to: 3527
+/* 2194 */    MCD_OPC_Decode, 172, 2, 129, 1, // Opcode: AsmLOC
+/* 2199 */    MCD_OPC_FilterValue, 243, 1, 194, 0, // Skip to: 2398
+/* 2204 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 2207 */    MCD_OPC_FilterValue, 1, 9, 0, // Skip to: 2220
+/* 2211 */    MCD_OPC_CheckPredicate, 1, 174, 0, // Skip to: 2389
+/* 2215 */    MCD_OPC_Decode, 248, 2, 130, 1, // Opcode: AsmOSTOC
+/* 2220 */    MCD_OPC_FilterValue, 2, 9, 0, // Skip to: 2233
+/* 2224 */    MCD_OPC_CheckPredicate, 1, 161, 0, // Skip to: 2389
+/* 2228 */    MCD_OPC_Decode, 177, 1, 130, 1, // Opcode: AsmHSTOC
+/* 2233 */    MCD_OPC_FilterValue, 3, 9, 0, // Skip to: 2246
+/* 2237 */    MCD_OPC_CheckPredicate, 1, 148, 0, // Skip to: 2389
+/* 2241 */    MCD_OPC_Decode, 213, 2, 130, 1, // Opcode: AsmNLESTOC
+/* 2246 */    MCD_OPC_FilterValue, 4, 9, 0, // Skip to: 2259
+/* 2250 */    MCD_OPC_CheckPredicate, 1, 135, 0, // Skip to: 2389
+/* 2254 */    MCD_OPC_Decode, 176, 2, 130, 1, // Opcode: AsmLSTOC
+/* 2259 */    MCD_OPC_FilterValue, 5, 9, 0, // Skip to: 2272
+/* 2263 */    MCD_OPC_CheckPredicate, 1, 122, 0, // Skip to: 2389
+/* 2267 */    MCD_OPC_Decode, 195, 2, 130, 1, // Opcode: AsmNHESTOC
+/* 2272 */    MCD_OPC_FilterValue, 6, 9, 0, // Skip to: 2285
+/* 2276 */    MCD_OPC_CheckPredicate, 1, 109, 0, // Skip to: 2389
+/* 2280 */    MCD_OPC_Decode, 164, 2, 130, 1, // Opcode: AsmLHSTOC
+/* 2285 */    MCD_OPC_FilterValue, 7, 9, 0, // Skip to: 2298
+/* 2289 */    MCD_OPC_CheckPredicate, 1, 96, 0, // Skip to: 2389
+/* 2293 */    MCD_OPC_Decode, 185, 2, 130, 1, // Opcode: AsmNESTOC
+/* 2298 */    MCD_OPC_FilterValue, 8, 9, 0, // Skip to: 2311
+/* 2302 */    MCD_OPC_CheckPredicate, 1, 83, 0, // Skip to: 2389
+/* 2306 */    MCD_OPC_Decode, 159, 1, 130, 1, // Opcode: AsmESTOC
+/* 2311 */    MCD_OPC_FilterValue, 9, 9, 0, // Skip to: 2324
+/* 2315 */    MCD_OPC_CheckPredicate, 1, 70, 0, // Skip to: 2389
+/* 2319 */    MCD_OPC_Decode, 222, 2, 130, 1, // Opcode: AsmNLHSTOC
+/* 2324 */    MCD_OPC_FilterValue, 10, 9, 0, // Skip to: 2337
+/* 2328 */    MCD_OPC_CheckPredicate, 1, 57, 0, // Skip to: 2389
+/* 2332 */    MCD_OPC_Decode, 169, 1, 130, 1, // Opcode: AsmHESTOC
+/* 2337 */    MCD_OPC_FilterValue, 11, 9, 0, // Skip to: 2350
+/* 2341 */    MCD_OPC_CheckPredicate, 1, 44, 0, // Skip to: 2389
+/* 2345 */    MCD_OPC_Decode, 230, 2, 130, 1, // Opcode: AsmNLSTOC
+/* 2350 */    MCD_OPC_FilterValue, 12, 9, 0, // Skip to: 2363
+/* 2354 */    MCD_OPC_CheckPredicate, 1, 31, 0, // Skip to: 2389
+/* 2358 */    MCD_OPC_Decode, 155, 2, 130, 1, // Opcode: AsmLESTOC
+/* 2363 */    MCD_OPC_FilterValue, 13, 9, 0, // Skip to: 2376
+/* 2367 */    MCD_OPC_CheckPredicate, 1, 18, 0, // Skip to: 2389
+/* 2371 */    MCD_OPC_Decode, 203, 2, 130, 1, // Opcode: AsmNHSTOC
+/* 2376 */    MCD_OPC_FilterValue, 14, 9, 0, // Skip to: 2389
+/* 2380 */    MCD_OPC_CheckPredicate, 1, 5, 0, // Skip to: 2389
+/* 2384 */    MCD_OPC_Decode, 239, 2, 130, 1, // Opcode: AsmNOSTOC
+/* 2389 */    MCD_OPC_CheckPredicate, 1, 110, 4, // Skip to: 3527
+/* 2393 */    MCD_OPC_Decode, 250, 2, 131, 1, // Opcode: AsmSTOC
+/* 2398 */    MCD_OPC_FilterValue, 244, 1, 9, 0, // Skip to: 2412
+/* 2403 */    MCD_OPC_CheckPredicate, 4, 96, 4, // Skip to: 3527
+/* 2407 */    MCD_OPC_Decode, 172, 4, 132, 1, // Opcode: LAN
+/* 2412 */    MCD_OPC_FilterValue, 246, 1, 9, 0, // Skip to: 2426
+/* 2417 */    MCD_OPC_CheckPredicate, 4, 82, 4, // Skip to: 3527
+/* 2421 */    MCD_OPC_Decode, 174, 4, 132, 1, // Opcode: LAO
+/* 2426 */    MCD_OPC_FilterValue, 247, 1, 9, 0, // Skip to: 2440
+/* 2431 */    MCD_OPC_CheckPredicate, 4, 68, 4, // Skip to: 3527
+/* 2435 */    MCD_OPC_Decode, 177, 4, 132, 1, // Opcode: LAX
+/* 2440 */    MCD_OPC_FilterValue, 248, 1, 9, 0, // Skip to: 2454
+/* 2445 */    MCD_OPC_CheckPredicate, 4, 54, 4, // Skip to: 3527
+/* 2449 */    MCD_OPC_Decode, 168, 4, 132, 1, // Opcode: LAA
+/* 2454 */    MCD_OPC_FilterValue, 250, 1, 44, 4, // Skip to: 3527
+/* 2459 */    MCD_OPC_CheckPredicate, 4, 40, 4, // Skip to: 3527
+/* 2463 */    MCD_OPC_Decode, 170, 4, 132, 1, // Opcode: LAAL
+/* 2468 */    MCD_OPC_FilterValue, 236, 1, 185, 2, // Skip to: 3170
+/* 2473 */    MCD_OPC_ExtractField, 0, 8,  // Inst{7-0} ...
+/* 2476 */    MCD_OPC_FilterValue, 81, 9, 0, // Skip to: 2489
+/* 2480 */    MCD_OPC_CheckPredicate, 3, 19, 4, // Skip to: 3527
+/* 2484 */    MCD_OPC_Decode, 144, 6, 133, 1, // Opcode: RISBLG
+/* 2489 */    MCD_OPC_FilterValue, 84, 5, 0, // Skip to: 2498
+/* 2493 */    MCD_OPC_Decode, 150, 6, 134, 1, // Opcode: RNSBG
+/* 2498 */    MCD_OPC_FilterValue, 85, 5, 0, // Skip to: 2507
+/* 2502 */    MCD_OPC_Decode, 139, 6, 134, 1, // Opcode: RISBG
+/* 2507 */    MCD_OPC_FilterValue, 86, 5, 0, // Skip to: 2516
+/* 2511 */    MCD_OPC_Decode, 151, 6, 134, 1, // Opcode: ROSBG
+/* 2516 */    MCD_OPC_FilterValue, 87, 5, 0, // Skip to: 2525
+/* 2520 */    MCD_OPC_Decode, 152, 6, 134, 1, // Opcode: RXSBG
+/* 2525 */    MCD_OPC_FilterValue, 93, 9, 0, // Skip to: 2538
+/* 2529 */    MCD_OPC_CheckPredicate, 3, 226, 3, // Skip to: 3527
+/* 2533 */    MCD_OPC_Decode, 141, 6, 135, 1, // Opcode: RISBHG
+/* 2538 */    MCD_OPC_FilterValue, 100, 69, 0, // Skip to: 2611
+/* 2542 */    MCD_OPC_ExtractField, 8, 4,  // Inst{11-8} ...
+/* 2545 */    MCD_OPC_FilterValue, 0, 210, 3, // Skip to: 3527
+/* 2549 */    MCD_OPC_ExtractField, 12, 4,  // Inst{15-12} ...
+/* 2552 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2561
+/* 2556 */    MCD_OPC_Decode, 204, 1, 136, 1, // Opcode: AsmJHCGR
+/* 2561 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2570
+/* 2565 */    MCD_OPC_Decode, 236, 1, 136, 1, // Opcode: AsmJLCGR
+/* 2570 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2579
+/* 2574 */    MCD_OPC_Decode, 140, 2, 136, 1, // Opcode: AsmJLHCGR
+/* 2579 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 2588
+/* 2583 */    MCD_OPC_Decode, 188, 1, 136, 1, // Opcode: AsmJECGR
+/* 2588 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 2597
+/* 2592 */    MCD_OPC_Decode, 220, 1, 136, 1, // Opcode: AsmJHECGR
+/* 2597 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 2606
+/* 2601 */    MCD_OPC_Decode, 252, 1, 136, 1, // Opcode: AsmJLECGR
+/* 2606 */    MCD_OPC_Decode, 145, 1, 137, 1, // Opcode: AsmCGRJ
+/* 2611 */    MCD_OPC_FilterValue, 101, 69, 0, // Skip to: 2684
+/* 2615 */    MCD_OPC_ExtractField, 8, 4,  // Inst{11-8} ...
+/* 2618 */    MCD_OPC_FilterValue, 0, 137, 3, // Skip to: 3527
+/* 2622 */    MCD_OPC_ExtractField, 12, 4,  // Inst{15-12} ...
+/* 2625 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2634
+/* 2629 */    MCD_OPC_Decode, 207, 1, 136, 1, // Opcode: AsmJHCLGR
+/* 2634 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2643
+/* 2638 */    MCD_OPC_Decode, 239, 1, 136, 1, // Opcode: AsmJLCLGR
+/* 2643 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2652
+/* 2647 */    MCD_OPC_Decode, 143, 2, 136, 1, // Opcode: AsmJLHCLGR
+/* 2652 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 2661
+/* 2656 */    MCD_OPC_Decode, 191, 1, 136, 1, // Opcode: AsmJECLGR
+/* 2661 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 2670
+/* 2665 */    MCD_OPC_Decode, 223, 1, 136, 1, // Opcode: AsmJHECLGR
+/* 2670 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 2679
+/* 2674 */    MCD_OPC_Decode, 255, 1, 136, 1, // Opcode: AsmJLECLGR
+/* 2679 */    MCD_OPC_Decode, 148, 1, 137, 1, // Opcode: AsmCLGRJ
+/* 2684 */    MCD_OPC_FilterValue, 118, 69, 0, // Skip to: 2757
+/* 2688 */    MCD_OPC_ExtractField, 8, 4,  // Inst{11-8} ...
+/* 2691 */    MCD_OPC_FilterValue, 0, 64, 3, // Skip to: 3527
+/* 2695 */    MCD_OPC_ExtractField, 12, 4,  // Inst{15-12} ...
+/* 2698 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2707
+/* 2702 */    MCD_OPC_Decode, 210, 1, 138, 1, // Opcode: AsmJHCR
+/* 2707 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2716
+/* 2711 */    MCD_OPC_Decode, 242, 1, 138, 1, // Opcode: AsmJLCR
+/* 2716 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2725
+/* 2720 */    MCD_OPC_Decode, 146, 2, 138, 1, // Opcode: AsmJLHCR
+/* 2725 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 2734
+/* 2729 */    MCD_OPC_Decode, 194, 1, 138, 1, // Opcode: AsmJECR
+/* 2734 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 2743
+/* 2738 */    MCD_OPC_Decode, 226, 1, 138, 1, // Opcode: AsmJHECR
+/* 2743 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 2752
+/* 2747 */    MCD_OPC_Decode, 130, 2, 138, 1, // Opcode: AsmJLECR
+/* 2752 */    MCD_OPC_Decode, 151, 1, 139, 1, // Opcode: AsmCRJ
+/* 2757 */    MCD_OPC_FilterValue, 119, 69, 0, // Skip to: 2830
+/* 2761 */    MCD_OPC_ExtractField, 8, 4,  // Inst{11-8} ...
+/* 2764 */    MCD_OPC_FilterValue, 0, 247, 2, // Skip to: 3527
+/* 2768 */    MCD_OPC_ExtractField, 12, 4,  // Inst{15-12} ...
+/* 2771 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2780
+/* 2775 */    MCD_OPC_Decode, 209, 1, 138, 1, // Opcode: AsmJHCLR
+/* 2780 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2789
+/* 2784 */    MCD_OPC_Decode, 241, 1, 138, 1, // Opcode: AsmJLCLR
+/* 2789 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2798
+/* 2793 */    MCD_OPC_Decode, 145, 2, 138, 1, // Opcode: AsmJLHCLR
+/* 2798 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 2807
+/* 2802 */    MCD_OPC_Decode, 193, 1, 138, 1, // Opcode: AsmJECLR
+/* 2807 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 2816
+/* 2811 */    MCD_OPC_Decode, 225, 1, 138, 1, // Opcode: AsmJHECLR
+/* 2816 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 2825
+/* 2820 */    MCD_OPC_Decode, 129, 2, 138, 1, // Opcode: AsmJLECLR
+/* 2825 */    MCD_OPC_Decode, 150, 1, 139, 1, // Opcode: AsmCLRJ
+/* 2830 */    MCD_OPC_FilterValue, 124, 62, 0, // Skip to: 2896
+/* 2834 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 2837 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2846
+/* 2841 */    MCD_OPC_Decode, 203, 1, 140, 1, // Opcode: AsmJHCGI
+/* 2846 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2855
+/* 2850 */    MCD_OPC_Decode, 235, 1, 140, 1, // Opcode: AsmJLCGI
+/* 2855 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2864
+/* 2859 */    MCD_OPC_Decode, 139, 2, 140, 1, // Opcode: AsmJLHCGI
+/* 2864 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 2873
+/* 2868 */    MCD_OPC_Decode, 187, 1, 140, 1, // Opcode: AsmJECGI
+/* 2873 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 2882
+/* 2877 */    MCD_OPC_Decode, 219, 1, 140, 1, // Opcode: AsmJHECGI
+/* 2882 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 2891
+/* 2886 */    MCD_OPC_Decode, 251, 1, 140, 1, // Opcode: AsmJLECGI
+/* 2891 */    MCD_OPC_Decode, 144, 1, 141, 1, // Opcode: AsmCGIJ
+/* 2896 */    MCD_OPC_FilterValue, 125, 62, 0, // Skip to: 2962
+/* 2900 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 2903 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2912
+/* 2907 */    MCD_OPC_Decode, 206, 1, 142, 1, // Opcode: AsmJHCLGI
+/* 2912 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2921
+/* 2916 */    MCD_OPC_Decode, 238, 1, 142, 1, // Opcode: AsmJLCLGI
+/* 2921 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2930
+/* 2925 */    MCD_OPC_Decode, 142, 2, 142, 1, // Opcode: AsmJLHCLGI
+/* 2930 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 2939
+/* 2934 */    MCD_OPC_Decode, 190, 1, 142, 1, // Opcode: AsmJECLGI
+/* 2939 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 2948
+/* 2943 */    MCD_OPC_Decode, 222, 1, 142, 1, // Opcode: AsmJHECLGI
+/* 2948 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 2957
+/* 2952 */    MCD_OPC_Decode, 254, 1, 142, 1, // Opcode: AsmJLECLGI
+/* 2957 */    MCD_OPC_Decode, 147, 1, 143, 1, // Opcode: AsmCLGIJ
+/* 2962 */    MCD_OPC_FilterValue, 126, 62, 0, // Skip to: 3028
+/* 2966 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 2969 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 2978
+/* 2973 */    MCD_OPC_Decode, 205, 1, 144, 1, // Opcode: AsmJHCI
+/* 2978 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 2987
+/* 2982 */    MCD_OPC_Decode, 237, 1, 144, 1, // Opcode: AsmJLCI
+/* 2987 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 2996
+/* 2991 */    MCD_OPC_Decode, 141, 2, 144, 1, // Opcode: AsmJLHCI
+/* 2996 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 3005
+/* 3000 */    MCD_OPC_Decode, 189, 1, 144, 1, // Opcode: AsmJECI
+/* 3005 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 3014
+/* 3009 */    MCD_OPC_Decode, 221, 1, 144, 1, // Opcode: AsmJHECI
+/* 3014 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 3023
+/* 3018 */    MCD_OPC_Decode, 253, 1, 144, 1, // Opcode: AsmJLECI
+/* 3023 */    MCD_OPC_Decode, 146, 1, 145, 1, // Opcode: AsmCIJ
+/* 3028 */    MCD_OPC_FilterValue, 127, 62, 0, // Skip to: 3094
+/* 3032 */    MCD_OPC_ExtractField, 32, 4,  // Inst{35-32} ...
+/* 3035 */    MCD_OPC_FilterValue, 2, 5, 0, // Skip to: 3044
+/* 3039 */    MCD_OPC_Decode, 208, 1, 146, 1, // Opcode: AsmJHCLI
+/* 3044 */    MCD_OPC_FilterValue, 4, 5, 0, // Skip to: 3053
+/* 3048 */    MCD_OPC_Decode, 240, 1, 146, 1, // Opcode: AsmJLCLI
+/* 3053 */    MCD_OPC_FilterValue, 6, 5, 0, // Skip to: 3062
+/* 3057 */    MCD_OPC_Decode, 144, 2, 146, 1, // Opcode: AsmJLHCLI
+/* 3062 */    MCD_OPC_FilterValue, 8, 5, 0, // Skip to: 3071
+/* 3066 */    MCD_OPC_Decode, 192, 1, 146, 1, // Opcode: AsmJECLI
+/* 3071 */    MCD_OPC_FilterValue, 10, 5, 0, // Skip to: 3080
+/* 3075 */    MCD_OPC_Decode, 224, 1, 146, 1, // Opcode: AsmJHECLI
+/* 3080 */    MCD_OPC_FilterValue, 12, 5, 0, // Skip to: 3089
+/* 3084 */    MCD_OPC_Decode, 128, 2, 146, 1, // Opcode: AsmJLECLI
+/* 3089 */    MCD_OPC_Decode, 149, 1, 147, 1, // Opcode: AsmCLIJ
+/* 3094 */    MCD_OPC_FilterValue, 216, 1, 14, 0, // Skip to: 3113
+/* 3099 */    MCD_OPC_CheckPredicate, 2, 168, 1, // Skip to: 3527
+/* 3103 */    MCD_OPC_CheckField, 8, 8, 0, 162, 1, // Skip to: 3527
+/* 3109 */    MCD_OPC_Decode, 41, 148, 1, // Opcode: AHIK
+/* 3113 */    MCD_OPC_FilterValue, 217, 1, 14, 0, // Skip to: 3132
+/* 3118 */    MCD_OPC_CheckPredicate, 2, 149, 1, // Skip to: 3527
+/* 3122 */    MCD_OPC_CheckField, 8, 8, 0, 143, 1, // Skip to: 3527
+/* 3128 */    MCD_OPC_Decode, 35, 149, 1, // Opcode: AGHIK
+/* 3132 */    MCD_OPC_FilterValue, 218, 1, 14, 0, // Skip to: 3151
+/* 3137 */    MCD_OPC_CheckPredicate, 2, 130, 1, // Skip to: 3527
+/* 3141 */    MCD_OPC_CheckField, 8, 8, 0, 124, 1, // Skip to: 3527
+/* 3147 */    MCD_OPC_Decode, 59, 148, 1, // Opcode: ALHSIK
+/* 3151 */    MCD_OPC_FilterValue, 219, 1, 115, 1, // Skip to: 3527
+/* 3156 */    MCD_OPC_CheckPredicate, 2, 111, 1, // Skip to: 3527
+/* 3160 */    MCD_OPC_CheckField, 8, 8, 0, 105, 1, // Skip to: 3527
+/* 3166 */    MCD_OPC_Decode, 56, 149, 1, // Opcode: ALGHSIK
+/* 3170 */    MCD_OPC_FilterValue, 237, 1, 96, 1, // Skip to: 3527
+/* 3175 */    MCD_OPC_ExtractField, 0, 8,  // Inst{7-0} ...
+/* 3178 */    MCD_OPC_FilterValue, 4, 11, 0, // Skip to: 3193
+/* 3182 */    MCD_OPC_CheckField, 8, 8, 0, 83, 1, // Skip to: 3527
+/* 3188 */    MCD_OPC_Decode, 191, 4, 150, 1, // Opcode: LDEB
+/* 3193 */    MCD_OPC_FilterValue, 5, 11, 0, // Skip to: 3208
+/* 3197 */    MCD_OPC_CheckField, 8, 8, 0, 68, 1, // Skip to: 3527
+/* 3203 */    MCD_OPC_Decode, 160, 5, 151, 1, // Opcode: LXDB
+/* 3208 */    MCD_OPC_FilterValue, 6, 11, 0, // Skip to: 3223
+/* 3212 */    MCD_OPC_CheckField, 8, 8, 0, 53, 1, // Skip to: 3527
+/* 3218 */    MCD_OPC_Decode, 162, 5, 151, 1, // Opcode: LXEB
+/* 3223 */    MCD_OPC_FilterValue, 7, 11, 0, // Skip to: 3238
+/* 3227 */    MCD_OPC_CheckField, 8, 8, 0, 38, 1, // Skip to: 3527
+/* 3233 */    MCD_OPC_Decode, 209, 5, 152, 1, // Opcode: MXDB
+/* 3238 */    MCD_OPC_FilterValue, 9, 11, 0, // Skip to: 3253
+/* 3242 */    MCD_OPC_CheckField, 8, 8, 0, 23, 1, // Skip to: 3527
+/* 3248 */    MCD_OPC_Decode, 139, 3, 153, 1, // Opcode: CEB
+/* 3253 */    MCD_OPC_FilterValue, 10, 10, 0, // Skip to: 3267
+/* 3257 */    MCD_OPC_CheckField, 8, 8, 0, 8, 1, // Skip to: 3527
+/* 3263 */    MCD_OPC_Decode, 25, 154, 1, // Opcode: AEB
+/* 3267 */    MCD_OPC_FilterValue, 11, 11, 0, // Skip to: 3282
+/* 3271 */    MCD_OPC_CheckField, 8, 8, 0, 250, 0, // Skip to: 3527
+/* 3277 */    MCD_OPC_Decode, 157, 6, 154, 1, // Opcode: SEB
+/* 3282 */    MCD_OPC_FilterValue, 12, 11, 0, // Skip to: 3297
+/* 3286 */    MCD_OPC_CheckField, 8, 8, 0, 235, 0, // Skip to: 3527
+/* 3292 */    MCD_OPC_Decode, 175, 5, 155, 1, // Opcode: MDEB
+/* 3297 */    MCD_OPC_FilterValue, 13, 11, 0, // Skip to: 3312
+/* 3301 */    MCD_OPC_CheckField, 8, 8, 0, 220, 0, // Skip to: 3527
+/* 3307 */    MCD_OPC_Decode, 252, 3, 154, 1, // Opcode: DEB
+/* 3312 */    MCD_OPC_FilterValue, 14, 11, 0, // Skip to: 3327
+/* 3316 */    MCD_OPC_CheckField, 8, 4, 0, 205, 0, // Skip to: 3527
+/* 3322 */    MCD_OPC_Decode, 171, 5, 156, 1, // Opcode: MAEB
+/* 3327 */    MCD_OPC_FilterValue, 15, 11, 0, // Skip to: 3342
+/* 3331 */    MCD_OPC_CheckField, 8, 4, 0, 190, 0, // Skip to: 3527
+/* 3337 */    MCD_OPC_Decode, 188, 5, 156, 1, // Opcode: MSEB
+/* 3342 */    MCD_OPC_FilterValue, 20, 11, 0, // Skip to: 3357
+/* 3346 */    MCD_OPC_CheckField, 8, 8, 0, 175, 0, // Skip to: 3527
+/* 3352 */    MCD_OPC_Decode, 186, 6, 153, 1, // Opcode: SQEB
+/* 3357 */    MCD_OPC_FilterValue, 21, 11, 0, // Skip to: 3372
+/* 3361 */    MCD_OPC_CheckField, 8, 8, 0, 160, 0, // Skip to: 3527
+/* 3367 */    MCD_OPC_Decode, 184, 6, 150, 1, // Opcode: SQDB
+/* 3372 */    MCD_OPC_FilterValue, 23, 11, 0, // Skip to: 3387
+/* 3376 */    MCD_OPC_CheckField, 8, 8, 0, 145, 0, // Skip to: 3527
+/* 3382 */    MCD_OPC_Decode, 177, 5, 154, 1, // Opcode: MEEB
+/* 3387 */    MCD_OPC_FilterValue, 25, 11, 0, // Skip to: 3402
+/* 3391 */    MCD_OPC_CheckField, 8, 8, 0, 130, 0, // Skip to: 3527
+/* 3397 */    MCD_OPC_Decode, 133, 3, 150, 1, // Opcode: CDB
+/* 3402 */    MCD_OPC_FilterValue, 26, 10, 0, // Skip to: 3416
+/* 3406 */    MCD_OPC_CheckField, 8, 8, 0, 115, 0, // Skip to: 3527
+/* 3412 */    MCD_OPC_Decode, 20, 155, 1, // Opcode: ADB
+/* 3416 */    MCD_OPC_FilterValue, 27, 11, 0, // Skip to: 3431
+/* 3420 */    MCD_OPC_CheckField, 8, 8, 0, 101, 0, // Skip to: 3527
+/* 3426 */    MCD_OPC_Decode, 155, 6, 155, 1, // Opcode: SDB
+/* 3431 */    MCD_OPC_FilterValue, 28, 11, 0, // Skip to: 3446
+/* 3435 */    MCD_OPC_CheckField, 8, 8, 0, 86, 0, // Skip to: 3527
+/* 3441 */    MCD_OPC_Decode, 173, 5, 155, 1, // Opcode: MDB
+/* 3446 */    MCD_OPC_FilterValue, 29, 11, 0, // Skip to: 3461
+/* 3450 */    MCD_OPC_CheckField, 8, 8, 0, 71, 0, // Skip to: 3527
+/* 3456 */    MCD_OPC_Decode, 250, 3, 155, 1, // Opcode: DDB
+/* 3461 */    MCD_OPC_FilterValue, 30, 11, 0, // Skip to: 3476
+/* 3465 */    MCD_OPC_CheckField, 8, 4, 0, 56, 0, // Skip to: 3527
+/* 3471 */    MCD_OPC_Decode, 169, 5, 157, 1, // Opcode: MADB
+/* 3476 */    MCD_OPC_FilterValue, 31, 11, 0, // Skip to: 3491
+/* 3480 */    MCD_OPC_CheckField, 8, 4, 0, 41, 0, // Skip to: 3527
+/* 3486 */    MCD_OPC_Decode, 186, 5, 157, 1, // Opcode: MSDB
+/* 3491 */    MCD_OPC_FilterValue, 100, 5, 0, // Skip to: 3500
+/* 3495 */    MCD_OPC_Decode, 201, 4, 158, 1, // Opcode: LEY
+/* 3500 */    MCD_OPC_FilterValue, 101, 5, 0, // Skip to: 3509
+/* 3504 */    MCD_OPC_Decode, 196, 4, 159, 1, // Opcode: LDY
+/* 3509 */    MCD_OPC_FilterValue, 102, 5, 0, // Skip to: 3518
+/* 3513 */    MCD_OPC_Decode, 208, 6, 158, 1, // Opcode: STEY
+/* 3518 */    MCD_OPC_FilterValue, 103, 5, 0, // Skip to: 3527
+/* 3522 */    MCD_OPC_Decode, 206, 6, 159, 1, // Opcode: STDY
+/* 3527 */    MCD_OPC_Fail,
+  0
+};
+
+static bool checkDecoderPredicate(unsigned Idx, uint64_t Bits)
+{
+  switch (Idx) {
+  default: // llvm_unreachable("Invalid index!");
+  case 0:
+    return (bool)((Bits & SystemZ_FeatureFPExtension));
+  case 1:
+    return (bool)((Bits & SystemZ_FeatureLoadStoreOnCond));
+  case 2:
+    return (bool)((Bits & SystemZ_FeatureDistinctOps));
+  case 3:
+    return (bool)((Bits & SystemZ_FeatureHighWord));
+  case 4:
+    return (bool)((Bits & SystemZ_FeatureInterlockedAccess1));
+  }
+}
+
+#define DecodeToMCInst(fname,fieldname, InsnType) \
+static DecodeStatus fname(DecodeStatus S, unsigned Idx, InsnType insn, MCInst *MI, \
+                uint64_t Address, void *Decoder) \
+{ \
+  InsnType tmp; \
+  switch (Idx) { \
+  default: \
+  case 0: \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeADDR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 1: \
+    tmp = fieldname(insn, 4, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 2: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeADDR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 3: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 4: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 5: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 6: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 7: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 8: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 9: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 10: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 11: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 12: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 13: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeBDAddr32Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 14: \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeBDAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 15: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeU16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 16: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeU16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 17: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeU16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 18: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeU16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 19: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeU16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 20: \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 21: \
+    tmp = fieldname(insn, 20, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 22: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 23: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 24: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 25: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 26: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 27: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 28: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 29: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 30: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (decodeAccessRegOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 31: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 32: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 33: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 34: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 35: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 36: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 37: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 38: \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 39: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 40: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 41: \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 42: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 43: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 44: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 45: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 46: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 47: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 48: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 49: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 50: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 51: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 52: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 53: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 54: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 55: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 56: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 57: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 58: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 59: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 60: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 61: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 62: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 63: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 64: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 65: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 66: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 67: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 68: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 69: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 70: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 71: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 72: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 73: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 74: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 75: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 76: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 77: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 78: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 79: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 80: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 81: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 82: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 83: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 84: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 85: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 86: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 87: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 88: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 89: \
+    tmp = fieldname(insn, 4, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 90: \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 20, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeBDAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 91: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodePC32DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 92: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeS32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 93: \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodePC32DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 94: \
+    tmp = fieldname(insn, 36, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodePC32DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 95: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeU32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 96: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeU32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 97: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeU32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 98: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeU32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 99: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeU32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 100: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeS32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 101: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeS32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 102: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeU32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 103: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeS32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 104: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodePC32DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 105: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeS32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 106: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 32); \
+    if (decodeS32ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 107: \
+    tmp = fieldname(insn, 16, 24); \
+    if (decodeBDLAddr64Disp12Len8Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeBDAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 108: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 109: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 110: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 111: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 112: \
+    tmp = fieldname(insn, 36, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 113: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 114: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 115: \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodeBDAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 116: \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodeBDAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 0, 16); \
+    if (decodeU16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 117: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 118: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr32Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 119: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 120: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr32Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 121: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 122: \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 123: \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 8); \
+    if (decodeS8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 124: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 125: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 126: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 127: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 128: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 129: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 130: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 131: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 132: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 24); \
+    if (decodeBDAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 133: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 24, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU6ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 134: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 24, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU6ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 135: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGRH32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 24, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU6ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 136: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 137: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 138: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 139: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 140: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeS8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 141: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeS8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 142: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 143: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 144: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeS8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 145: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeS8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 146: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 147: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 8); \
+    if (decodeU8ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (decodeU4ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodePC16DBLOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 148: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 149: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 32, 4); \
+    if (DecodeGR64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 16); \
+    if (decodeS16ImmOperand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 150: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 151: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 152: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP128BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 153: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 154: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 155: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 156: \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 157: \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 12, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 16, 20); \
+    if (decodeBDXAddr64Disp12Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 158: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP32BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  case 159: \
+    tmp = fieldname(insn, 36, 4); \
+    if (DecodeFP64BitRegisterClass(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    tmp = fieldname(insn, 8, 28); \
+    if (decodeBDXAddr64Disp20Operand(MI, tmp, Address, Decoder) == MCDisassembler_Fail) return MCDisassembler_Fail; \
+    return S; \
+  } \
+} 
+
+#define DecodeInstruction(fname, fieldname, decoder, InsnType) \
+static DecodeStatus fname(uint8_t DecodeTable[], MCInst *MI, \
+           InsnType insn, uint64_t Address, MCRegisterInfo *MRI, int feature) \
+{ \
+  uint64_t Bits = getFeatureBits(feature); \
+  uint8_t *Ptr = DecodeTable; \
+  uint32_t CurFieldValue = 0; \
+  DecodeStatus S = MCDisassembler_Success; \
+  for (;;) { \
+    switch (*Ptr) { \
+    default: \
+      return MCDisassembler_Fail; \
+    case MCD_OPC_ExtractField: { \
+      unsigned Start = *++Ptr; \
+      unsigned Len = *++Ptr; \
+      ++Ptr; \
+      CurFieldValue = fieldname(insn, Start, Len); \
+      break; \
+    } \
+    case MCD_OPC_FilterValue: { \
+      unsigned Len; \
+      InsnType Val = (InsnType)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned NumToSkip = *Ptr++; \
+      NumToSkip |= (*Ptr++) << 8; \
+      if (Val != CurFieldValue) \
+        Ptr += NumToSkip; \
+      break; \
+    } \
+    case MCD_OPC_CheckField: { \
+      unsigned Start = *++Ptr; \
+      unsigned Len = *++Ptr; \
+      InsnType FieldValue = fieldname(insn, Start, Len); \
+      uint32_t ExpectedValue = (uint32_t)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned NumToSkip = *Ptr++; \
+      NumToSkip |= (*Ptr++) << 8; \
+      if (ExpectedValue != FieldValue) \
+        Ptr += NumToSkip; \
+      break; \
+    } \
+    case MCD_OPC_CheckPredicate: { \
+      unsigned Len; \
+      unsigned PIdx = decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned NumToSkip = *Ptr++; \
+      NumToSkip |= (*Ptr++) << 8; \
+      bool Pred; \
+      Pred = checkDecoderPredicate(PIdx, Bits); \
+      if (!Pred) \
+        Ptr += NumToSkip; \
+      (void)Pred; \
+      break; \
+    } \
+    case MCD_OPC_Decode: { \
+      unsigned Len; \
+      unsigned Opc = (unsigned)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      unsigned DecodeIdx = (unsigned)decodeULEB128(Ptr, &Len); \
+      Ptr += Len; \
+      MCInst_setOpcode(MI, Opc); \
+      return decoder(S, DecodeIdx, insn, MI, Address, MRI); \
+    } \
+    case MCD_OPC_SoftFail: { \
+      unsigned Len; \
+      InsnType PositiveMask = (InsnType)decodeULEB128(++Ptr, &Len); \
+      Ptr += Len; \
+      InsnType NegativeMask = (InsnType)decodeULEB128(Ptr, &Len); \
+      Ptr += Len; \
+      bool Fail = (insn & PositiveMask) || (~insn & NegativeMask); \
+      if (Fail) \
+        S = MCDisassembler_SoftFail; \
+      break; \
+    } \
+    case MCD_OPC_Fail: { \
+      return MCDisassembler_Fail; \
+    } \
+    } \
+  } \
+}
+
+FieldFromInstruction(fieldFromInstruction, uint64_t)
+DecodeToMCInst(decodeToMCInst, fieldFromInstruction, uint64_t)
+DecodeInstruction(decodeInstruction, fieldFromInstruction, decodeToMCInst, uint64_t)
diff --git a/arch/SystemZ/SystemZGenInstrInfo.inc b/arch/SystemZ/SystemZGenInstrInfo.inc
new file mode 100644
index 0000000..c3f043f
--- /dev/null
+++ b/arch/SystemZ/SystemZGenInstrInfo.inc
@@ -0,0 +1,926 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Target Instruction Enum Values                                              *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+
+#ifdef GET_INSTRINFO_ENUM
+#undef GET_INSTRINFO_ENUM
+
+enum {
+    SystemZ_PHI	= 0,
+    SystemZ_INLINEASM	= 1,
+    SystemZ_CFI_INSTRUCTION	= 2,
+    SystemZ_EH_LABEL	= 3,
+    SystemZ_GC_LABEL	= 4,
+    SystemZ_KILL	= 5,
+    SystemZ_EXTRACT_SUBREG	= 6,
+    SystemZ_INSERT_SUBREG	= 7,
+    SystemZ_IMPLICIT_DEF	= 8,
+    SystemZ_SUBREG_TO_REG	= 9,
+    SystemZ_COPY_TO_REGCLASS	= 10,
+    SystemZ_DBG_VALUE	= 11,
+    SystemZ_REG_SEQUENCE	= 12,
+    SystemZ_COPY	= 13,
+    SystemZ_BUNDLE	= 14,
+    SystemZ_LIFETIME_START	= 15,
+    SystemZ_LIFETIME_END	= 16,
+    SystemZ_STACKMAP	= 17,
+    SystemZ_PATCHPOINT	= 18,
+    SystemZ_A	= 19,
+    SystemZ_ADB	= 20,
+    SystemZ_ADBR	= 21,
+    SystemZ_ADJCALLSTACKDOWN	= 22,
+    SystemZ_ADJCALLSTACKUP	= 23,
+    SystemZ_ADJDYNALLOC	= 24,
+    SystemZ_AEB	= 25,
+    SystemZ_AEBR	= 26,
+    SystemZ_AEXT128_64	= 27,
+    SystemZ_AFI	= 28,
+    SystemZ_AFIMux	= 29,
+    SystemZ_AG	= 30,
+    SystemZ_AGF	= 31,
+    SystemZ_AGFI	= 32,
+    SystemZ_AGFR	= 33,
+    SystemZ_AGHI	= 34,
+    SystemZ_AGHIK	= 35,
+    SystemZ_AGR	= 36,
+    SystemZ_AGRK	= 37,
+    SystemZ_AGSI	= 38,
+    SystemZ_AH	= 39,
+    SystemZ_AHI	= 40,
+    SystemZ_AHIK	= 41,
+    SystemZ_AHIMux	= 42,
+    SystemZ_AHIMuxK	= 43,
+    SystemZ_AHY	= 44,
+    SystemZ_AIH	= 45,
+    SystemZ_AL	= 46,
+    SystemZ_ALC	= 47,
+    SystemZ_ALCG	= 48,
+    SystemZ_ALCGR	= 49,
+    SystemZ_ALCR	= 50,
+    SystemZ_ALFI	= 51,
+    SystemZ_ALG	= 52,
+    SystemZ_ALGF	= 53,
+    SystemZ_ALGFI	= 54,
+    SystemZ_ALGFR	= 55,
+    SystemZ_ALGHSIK	= 56,
+    SystemZ_ALGR	= 57,
+    SystemZ_ALGRK	= 58,
+    SystemZ_ALHSIK	= 59,
+    SystemZ_ALR	= 60,
+    SystemZ_ALRK	= 61,
+    SystemZ_ALY	= 62,
+    SystemZ_AR	= 63,
+    SystemZ_ARK	= 64,
+    SystemZ_ASI	= 65,
+    SystemZ_ATOMIC_CMP_SWAPW	= 66,
+    SystemZ_ATOMIC_LOADW_AFI	= 67,
+    SystemZ_ATOMIC_LOADW_AR	= 68,
+    SystemZ_ATOMIC_LOADW_MAX	= 69,
+    SystemZ_ATOMIC_LOADW_MIN	= 70,
+    SystemZ_ATOMIC_LOADW_NILH	= 71,
+    SystemZ_ATOMIC_LOADW_NILHi	= 72,
+    SystemZ_ATOMIC_LOADW_NR	= 73,
+    SystemZ_ATOMIC_LOADW_NRi	= 74,
+    SystemZ_ATOMIC_LOADW_OILH	= 75,
+    SystemZ_ATOMIC_LOADW_OR	= 76,
+    SystemZ_ATOMIC_LOADW_SR	= 77,
+    SystemZ_ATOMIC_LOADW_UMAX	= 78,
+    SystemZ_ATOMIC_LOADW_UMIN	= 79,
+    SystemZ_ATOMIC_LOADW_XILF	= 80,
+    SystemZ_ATOMIC_LOADW_XR	= 81,
+    SystemZ_ATOMIC_LOAD_AFI	= 82,
+    SystemZ_ATOMIC_LOAD_AGFI	= 83,
+    SystemZ_ATOMIC_LOAD_AGHI	= 84,
+    SystemZ_ATOMIC_LOAD_AGR	= 85,
+    SystemZ_ATOMIC_LOAD_AHI	= 86,
+    SystemZ_ATOMIC_LOAD_AR	= 87,
+    SystemZ_ATOMIC_LOAD_MAX_32	= 88,
+    SystemZ_ATOMIC_LOAD_MAX_64	= 89,
+    SystemZ_ATOMIC_LOAD_MIN_32	= 90,
+    SystemZ_ATOMIC_LOAD_MIN_64	= 91,
+    SystemZ_ATOMIC_LOAD_NGR	= 92,
+    SystemZ_ATOMIC_LOAD_NGRi	= 93,
+    SystemZ_ATOMIC_LOAD_NIHF64	= 94,
+    SystemZ_ATOMIC_LOAD_NIHF64i	= 95,
+    SystemZ_ATOMIC_LOAD_NIHH64	= 96,
+    SystemZ_ATOMIC_LOAD_NIHH64i	= 97,
+    SystemZ_ATOMIC_LOAD_NIHL64	= 98,
+    SystemZ_ATOMIC_LOAD_NIHL64i	= 99,
+    SystemZ_ATOMIC_LOAD_NILF	= 100,
+    SystemZ_ATOMIC_LOAD_NILF64	= 101,
+    SystemZ_ATOMIC_LOAD_NILF64i	= 102,
+    SystemZ_ATOMIC_LOAD_NILFi	= 103,
+    SystemZ_ATOMIC_LOAD_NILH	= 104,
+    SystemZ_ATOMIC_LOAD_NILH64	= 105,
+    SystemZ_ATOMIC_LOAD_NILH64i	= 106,
+    SystemZ_ATOMIC_LOAD_NILHi	= 107,
+    SystemZ_ATOMIC_LOAD_NILL	= 108,
+    SystemZ_ATOMIC_LOAD_NILL64	= 109,
+    SystemZ_ATOMIC_LOAD_NILL64i	= 110,
+    SystemZ_ATOMIC_LOAD_NILLi	= 111,
+    SystemZ_ATOMIC_LOAD_NR	= 112,
+    SystemZ_ATOMIC_LOAD_NRi	= 113,
+    SystemZ_ATOMIC_LOAD_OGR	= 114,
+    SystemZ_ATOMIC_LOAD_OIHF64	= 115,
+    SystemZ_ATOMIC_LOAD_OIHH64	= 116,
+    SystemZ_ATOMIC_LOAD_OIHL64	= 117,
+    SystemZ_ATOMIC_LOAD_OILF	= 118,
+    SystemZ_ATOMIC_LOAD_OILF64	= 119,
+    SystemZ_ATOMIC_LOAD_OILH	= 120,
+    SystemZ_ATOMIC_LOAD_OILH64	= 121,
+    SystemZ_ATOMIC_LOAD_OILL	= 122,
+    SystemZ_ATOMIC_LOAD_OILL64	= 123,
+    SystemZ_ATOMIC_LOAD_OR	= 124,
+    SystemZ_ATOMIC_LOAD_SGR	= 125,
+    SystemZ_ATOMIC_LOAD_SR	= 126,
+    SystemZ_ATOMIC_LOAD_UMAX_32	= 127,
+    SystemZ_ATOMIC_LOAD_UMAX_64	= 128,
+    SystemZ_ATOMIC_LOAD_UMIN_32	= 129,
+    SystemZ_ATOMIC_LOAD_UMIN_64	= 130,
+    SystemZ_ATOMIC_LOAD_XGR	= 131,
+    SystemZ_ATOMIC_LOAD_XIHF64	= 132,
+    SystemZ_ATOMIC_LOAD_XILF	= 133,
+    SystemZ_ATOMIC_LOAD_XILF64	= 134,
+    SystemZ_ATOMIC_LOAD_XR	= 135,
+    SystemZ_ATOMIC_SWAPW	= 136,
+    SystemZ_ATOMIC_SWAP_32	= 137,
+    SystemZ_ATOMIC_SWAP_64	= 138,
+    SystemZ_AXBR	= 139,
+    SystemZ_AY	= 140,
+    SystemZ_AsmBCR	= 141,
+    SystemZ_AsmBRC	= 142,
+    SystemZ_AsmBRCL	= 143,
+    SystemZ_AsmCGIJ	= 144,
+    SystemZ_AsmCGRJ	= 145,
+    SystemZ_AsmCIJ	= 146,
+    SystemZ_AsmCLGIJ	= 147,
+    SystemZ_AsmCLGRJ	= 148,
+    SystemZ_AsmCLIJ	= 149,
+    SystemZ_AsmCLRJ	= 150,
+    SystemZ_AsmCRJ	= 151,
+    SystemZ_AsmEBR	= 152,
+    SystemZ_AsmEJ	= 153,
+    SystemZ_AsmEJG	= 154,
+    SystemZ_AsmELOC	= 155,
+    SystemZ_AsmELOCG	= 156,
+    SystemZ_AsmELOCGR	= 157,
+    SystemZ_AsmELOCR	= 158,
+    SystemZ_AsmESTOC	= 159,
+    SystemZ_AsmESTOCG	= 160,
+    SystemZ_AsmHBR	= 161,
+    SystemZ_AsmHEBR	= 162,
+    SystemZ_AsmHEJ	= 163,
+    SystemZ_AsmHEJG	= 164,
+    SystemZ_AsmHELOC	= 165,
+    SystemZ_AsmHELOCG	= 166,
+    SystemZ_AsmHELOCGR	= 167,
+    SystemZ_AsmHELOCR	= 168,
+    SystemZ_AsmHESTOC	= 169,
+    SystemZ_AsmHESTOCG	= 170,
+    SystemZ_AsmHJ	= 171,
+    SystemZ_AsmHJG	= 172,
+    SystemZ_AsmHLOC	= 173,
+    SystemZ_AsmHLOCG	= 174,
+    SystemZ_AsmHLOCGR	= 175,
+    SystemZ_AsmHLOCR	= 176,
+    SystemZ_AsmHSTOC	= 177,
+    SystemZ_AsmHSTOCG	= 178,
+    SystemZ_AsmJEAltCGI	= 179,
+    SystemZ_AsmJEAltCGR	= 180,
+    SystemZ_AsmJEAltCI	= 181,
+    SystemZ_AsmJEAltCLGI	= 182,
+    SystemZ_AsmJEAltCLGR	= 183,
+    SystemZ_AsmJEAltCLI	= 184,
+    SystemZ_AsmJEAltCLR	= 185,
+    SystemZ_AsmJEAltCR	= 186,
+    SystemZ_AsmJECGI	= 187,
+    SystemZ_AsmJECGR	= 188,
+    SystemZ_AsmJECI	= 189,
+    SystemZ_AsmJECLGI	= 190,
+    SystemZ_AsmJECLGR	= 191,
+    SystemZ_AsmJECLI	= 192,
+    SystemZ_AsmJECLR	= 193,
+    SystemZ_AsmJECR	= 194,
+    SystemZ_AsmJHAltCGI	= 195,
+    SystemZ_AsmJHAltCGR	= 196,
+    SystemZ_AsmJHAltCI	= 197,
+    SystemZ_AsmJHAltCLGI	= 198,
+    SystemZ_AsmJHAltCLGR	= 199,
+    SystemZ_AsmJHAltCLI	= 200,
+    SystemZ_AsmJHAltCLR	= 201,
+    SystemZ_AsmJHAltCR	= 202,
+    SystemZ_AsmJHCGI	= 203,
+    SystemZ_AsmJHCGR	= 204,
+    SystemZ_AsmJHCI	= 205,
+    SystemZ_AsmJHCLGI	= 206,
+    SystemZ_AsmJHCLGR	= 207,
+    SystemZ_AsmJHCLI	= 208,
+    SystemZ_AsmJHCLR	= 209,
+    SystemZ_AsmJHCR	= 210,
+    SystemZ_AsmJHEAltCGI	= 211,
+    SystemZ_AsmJHEAltCGR	= 212,
+    SystemZ_AsmJHEAltCI	= 213,
+    SystemZ_AsmJHEAltCLGI	= 214,
+    SystemZ_AsmJHEAltCLGR	= 215,
+    SystemZ_AsmJHEAltCLI	= 216,
+    SystemZ_AsmJHEAltCLR	= 217,
+    SystemZ_AsmJHEAltCR	= 218,
+    SystemZ_AsmJHECGI	= 219,
+    SystemZ_AsmJHECGR	= 220,
+    SystemZ_AsmJHECI	= 221,
+    SystemZ_AsmJHECLGI	= 222,
+    SystemZ_AsmJHECLGR	= 223,
+    SystemZ_AsmJHECLI	= 224,
+    SystemZ_AsmJHECLR	= 225,
+    SystemZ_AsmJHECR	= 226,
+    SystemZ_AsmJLAltCGI	= 227,
+    SystemZ_AsmJLAltCGR	= 228,
+    SystemZ_AsmJLAltCI	= 229,
+    SystemZ_AsmJLAltCLGI	= 230,
+    SystemZ_AsmJLAltCLGR	= 231,
+    SystemZ_AsmJLAltCLI	= 232,
+    SystemZ_AsmJLAltCLR	= 233,
+    SystemZ_AsmJLAltCR	= 234,
+    SystemZ_AsmJLCGI	= 235,
+    SystemZ_AsmJLCGR	= 236,
+    SystemZ_AsmJLCI	= 237,
+    SystemZ_AsmJLCLGI	= 238,
+    SystemZ_AsmJLCLGR	= 239,
+    SystemZ_AsmJLCLI	= 240,
+    SystemZ_AsmJLCLR	= 241,
+    SystemZ_AsmJLCR	= 242,
+    SystemZ_AsmJLEAltCGI	= 243,
+    SystemZ_AsmJLEAltCGR	= 244,
+    SystemZ_AsmJLEAltCI	= 245,
+    SystemZ_AsmJLEAltCLGI	= 246,
+    SystemZ_AsmJLEAltCLGR	= 247,
+    SystemZ_AsmJLEAltCLI	= 248,
+    SystemZ_AsmJLEAltCLR	= 249,
+    SystemZ_AsmJLEAltCR	= 250,
+    SystemZ_AsmJLECGI	= 251,
+    SystemZ_AsmJLECGR	= 252,
+    SystemZ_AsmJLECI	= 253,
+    SystemZ_AsmJLECLGI	= 254,
+    SystemZ_AsmJLECLGR	= 255,
+    SystemZ_AsmJLECLI	= 256,
+    SystemZ_AsmJLECLR	= 257,
+    SystemZ_AsmJLECR	= 258,
+    SystemZ_AsmJLHAltCGI	= 259,
+    SystemZ_AsmJLHAltCGR	= 260,
+    SystemZ_AsmJLHAltCI	= 261,
+    SystemZ_AsmJLHAltCLGI	= 262,
+    SystemZ_AsmJLHAltCLGR	= 263,
+    SystemZ_AsmJLHAltCLI	= 264,
+    SystemZ_AsmJLHAltCLR	= 265,
+    SystemZ_AsmJLHAltCR	= 266,
+    SystemZ_AsmJLHCGI	= 267,
+    SystemZ_AsmJLHCGR	= 268,
+    SystemZ_AsmJLHCI	= 269,
+    SystemZ_AsmJLHCLGI	= 270,
+    SystemZ_AsmJLHCLGR	= 271,
+    SystemZ_AsmJLHCLI	= 272,
+    SystemZ_AsmJLHCLR	= 273,
+    SystemZ_AsmJLHCR	= 274,
+    SystemZ_AsmLBR	= 275,
+    SystemZ_AsmLEBR	= 276,
+    SystemZ_AsmLEJ	= 277,
+    SystemZ_AsmLEJG	= 278,
+    SystemZ_AsmLELOC	= 279,
+    SystemZ_AsmLELOCG	= 280,
+    SystemZ_AsmLELOCGR	= 281,
+    SystemZ_AsmLELOCR	= 282,
+    SystemZ_AsmLESTOC	= 283,
+    SystemZ_AsmLESTOCG	= 284,
+    SystemZ_AsmLHBR	= 285,
+    SystemZ_AsmLHJ	= 286,
+    SystemZ_AsmLHJG	= 287,
+    SystemZ_AsmLHLOC	= 288,
+    SystemZ_AsmLHLOCG	= 289,
+    SystemZ_AsmLHLOCGR	= 290,
+    SystemZ_AsmLHLOCR	= 291,
+    SystemZ_AsmLHSTOC	= 292,
+    SystemZ_AsmLHSTOCG	= 293,
+    SystemZ_AsmLJ	= 294,
+    SystemZ_AsmLJG	= 295,
+    SystemZ_AsmLLOC	= 296,
+    SystemZ_AsmLLOCG	= 297,
+    SystemZ_AsmLLOCGR	= 298,
+    SystemZ_AsmLLOCR	= 299,
+    SystemZ_AsmLOC	= 300,
+    SystemZ_AsmLOCG	= 301,
+    SystemZ_AsmLOCGR	= 302,
+    SystemZ_AsmLOCR	= 303,
+    SystemZ_AsmLSTOC	= 304,
+    SystemZ_AsmLSTOCG	= 305,
+    SystemZ_AsmNEBR	= 306,
+    SystemZ_AsmNEJ	= 307,
+    SystemZ_AsmNEJG	= 308,
+    SystemZ_AsmNELOC	= 309,
+    SystemZ_AsmNELOCG	= 310,
+    SystemZ_AsmNELOCGR	= 311,
+    SystemZ_AsmNELOCR	= 312,
+    SystemZ_AsmNESTOC	= 313,
+    SystemZ_AsmNESTOCG	= 314,
+    SystemZ_AsmNHBR	= 315,
+    SystemZ_AsmNHEBR	= 316,
+    SystemZ_AsmNHEJ	= 317,
+    SystemZ_AsmNHEJG	= 318,
+    SystemZ_AsmNHELOC	= 319,
+    SystemZ_AsmNHELOCG	= 320,
+    SystemZ_AsmNHELOCGR	= 321,
+    SystemZ_AsmNHELOCR	= 322,
+    SystemZ_AsmNHESTOC	= 323,
+    SystemZ_AsmNHESTOCG	= 324,
+    SystemZ_AsmNHJ	= 325,
+    SystemZ_AsmNHJG	= 326,
+    SystemZ_AsmNHLOC	= 327,
+    SystemZ_AsmNHLOCG	= 328,
+    SystemZ_AsmNHLOCGR	= 329,
+    SystemZ_AsmNHLOCR	= 330,
+    SystemZ_AsmNHSTOC	= 331,
+    SystemZ_AsmNHSTOCG	= 332,
+    SystemZ_AsmNLBR	= 333,
+    SystemZ_AsmNLEBR	= 334,
+    SystemZ_AsmNLEJ	= 335,
+    SystemZ_AsmNLEJG	= 336,
+    SystemZ_AsmNLELOC	= 337,
+    SystemZ_AsmNLELOCG	= 338,
+    SystemZ_AsmNLELOCGR	= 339,
+    SystemZ_AsmNLELOCR	= 340,
+    SystemZ_AsmNLESTOC	= 341,
+    SystemZ_AsmNLESTOCG	= 342,
+    SystemZ_AsmNLHBR	= 343,
+    SystemZ_AsmNLHJ	= 344,
+    SystemZ_AsmNLHJG	= 345,
+    SystemZ_AsmNLHLOC	= 346,
+    SystemZ_AsmNLHLOCG	= 347,
+    SystemZ_AsmNLHLOCGR	= 348,
+    SystemZ_AsmNLHLOCR	= 349,
+    SystemZ_AsmNLHSTOC	= 350,
+    SystemZ_AsmNLHSTOCG	= 351,
+    SystemZ_AsmNLJ	= 352,
+    SystemZ_AsmNLJG	= 353,
+    SystemZ_AsmNLLOC	= 354,
+    SystemZ_AsmNLLOCG	= 355,
+    SystemZ_AsmNLLOCGR	= 356,
+    SystemZ_AsmNLLOCR	= 357,
+    SystemZ_AsmNLSTOC	= 358,
+    SystemZ_AsmNLSTOCG	= 359,
+    SystemZ_AsmNOBR	= 360,
+    SystemZ_AsmNOJ	= 361,
+    SystemZ_AsmNOJG	= 362,
+    SystemZ_AsmNOLOC	= 363,
+    SystemZ_AsmNOLOCG	= 364,
+    SystemZ_AsmNOLOCGR	= 365,
+    SystemZ_AsmNOLOCR	= 366,
+    SystemZ_AsmNOSTOC	= 367,
+    SystemZ_AsmNOSTOCG	= 368,
+    SystemZ_AsmOBR	= 369,
+    SystemZ_AsmOJ	= 370,
+    SystemZ_AsmOJG	= 371,
+    SystemZ_AsmOLOC	= 372,
+    SystemZ_AsmOLOCG	= 373,
+    SystemZ_AsmOLOCGR	= 374,
+    SystemZ_AsmOLOCR	= 375,
+    SystemZ_AsmOSTOC	= 376,
+    SystemZ_AsmOSTOCG	= 377,
+    SystemZ_AsmSTOC	= 378,
+    SystemZ_AsmSTOCG	= 379,
+    SystemZ_BASR	= 380,
+    SystemZ_BR	= 381,
+    SystemZ_BRAS	= 382,
+    SystemZ_BRASL	= 383,
+    SystemZ_BRC	= 384,
+    SystemZ_BRCL	= 385,
+    SystemZ_BRCT	= 386,
+    SystemZ_BRCTG	= 387,
+    SystemZ_C	= 388,
+    SystemZ_CDB	= 389,
+    SystemZ_CDBR	= 390,
+    SystemZ_CDFBR	= 391,
+    SystemZ_CDGBR	= 392,
+    SystemZ_CDLFBR	= 393,
+    SystemZ_CDLGBR	= 394,
+    SystemZ_CEB	= 395,
+    SystemZ_CEBR	= 396,
+    SystemZ_CEFBR	= 397,
+    SystemZ_CEGBR	= 398,
+    SystemZ_CELFBR	= 399,
+    SystemZ_CELGBR	= 400,
+    SystemZ_CFDBR	= 401,
+    SystemZ_CFEBR	= 402,
+    SystemZ_CFI	= 403,
+    SystemZ_CFIMux	= 404,
+    SystemZ_CFXBR	= 405,
+    SystemZ_CG	= 406,
+    SystemZ_CGDBR	= 407,
+    SystemZ_CGEBR	= 408,
+    SystemZ_CGF	= 409,
+    SystemZ_CGFI	= 410,
+    SystemZ_CGFR	= 411,
+    SystemZ_CGFRL	= 412,
+    SystemZ_CGH	= 413,
+    SystemZ_CGHI	= 414,
+    SystemZ_CGHRL	= 415,
+    SystemZ_CGHSI	= 416,
+    SystemZ_CGIJ	= 417,
+    SystemZ_CGR	= 418,
+    SystemZ_CGRJ	= 419,
+    SystemZ_CGRL	= 420,
+    SystemZ_CGXBR	= 421,
+    SystemZ_CH	= 422,
+    SystemZ_CHF	= 423,
+    SystemZ_CHHSI	= 424,
+    SystemZ_CHI	= 425,
+    SystemZ_CHRL	= 426,
+    SystemZ_CHSI	= 427,
+    SystemZ_CHY	= 428,
+    SystemZ_CIH	= 429,
+    SystemZ_CIJ	= 430,
+    SystemZ_CL	= 431,
+    SystemZ_CLC	= 432,
+    SystemZ_CLCLoop	= 433,
+    SystemZ_CLCSequence	= 434,
+    SystemZ_CLFDBR	= 435,
+    SystemZ_CLFEBR	= 436,
+    SystemZ_CLFHSI	= 437,
+    SystemZ_CLFI	= 438,
+    SystemZ_CLFIMux	= 439,
+    SystemZ_CLFXBR	= 440,
+    SystemZ_CLG	= 441,
+    SystemZ_CLGDBR	= 442,
+    SystemZ_CLGEBR	= 443,
+    SystemZ_CLGF	= 444,
+    SystemZ_CLGFI	= 445,
+    SystemZ_CLGFR	= 446,
+    SystemZ_CLGFRL	= 447,
+    SystemZ_CLGHRL	= 448,
+    SystemZ_CLGHSI	= 449,
+    SystemZ_CLGIJ	= 450,
+    SystemZ_CLGR	= 451,
+    SystemZ_CLGRJ	= 452,
+    SystemZ_CLGRL	= 453,
+    SystemZ_CLGXBR	= 454,
+    SystemZ_CLHF	= 455,
+    SystemZ_CLHHSI	= 456,
+    SystemZ_CLHRL	= 457,
+    SystemZ_CLI	= 458,
+    SystemZ_CLIH	= 459,
+    SystemZ_CLIJ	= 460,
+    SystemZ_CLIY	= 461,
+    SystemZ_CLMux	= 462,
+    SystemZ_CLR	= 463,
+    SystemZ_CLRJ	= 464,
+    SystemZ_CLRL	= 465,
+    SystemZ_CLST	= 466,
+    SystemZ_CLSTLoop	= 467,
+    SystemZ_CLY	= 468,
+    SystemZ_CMux	= 469,
+    SystemZ_CPSDRdd	= 470,
+    SystemZ_CPSDRds	= 471,
+    SystemZ_CPSDRsd	= 472,
+    SystemZ_CPSDRss	= 473,
+    SystemZ_CR	= 474,
+    SystemZ_CRJ	= 475,
+    SystemZ_CRL	= 476,
+    SystemZ_CS	= 477,
+    SystemZ_CSG	= 478,
+    SystemZ_CSY	= 479,
+    SystemZ_CXBR	= 480,
+    SystemZ_CXFBR	= 481,
+    SystemZ_CXGBR	= 482,
+    SystemZ_CXLFBR	= 483,
+    SystemZ_CXLGBR	= 484,
+    SystemZ_CY	= 485,
+    SystemZ_CallBASR	= 486,
+    SystemZ_CallBR	= 487,
+    SystemZ_CallBRASL	= 488,
+    SystemZ_CallJG	= 489,
+    SystemZ_CondStore16	= 490,
+    SystemZ_CondStore16Inv	= 491,
+    SystemZ_CondStore16Mux	= 492,
+    SystemZ_CondStore16MuxInv	= 493,
+    SystemZ_CondStore32	= 494,
+    SystemZ_CondStore32Inv	= 495,
+    SystemZ_CondStore64	= 496,
+    SystemZ_CondStore64Inv	= 497,
+    SystemZ_CondStore8	= 498,
+    SystemZ_CondStore8Inv	= 499,
+    SystemZ_CondStore8Mux	= 500,
+    SystemZ_CondStore8MuxInv	= 501,
+    SystemZ_CondStoreF32	= 502,
+    SystemZ_CondStoreF32Inv	= 503,
+    SystemZ_CondStoreF64	= 504,
+    SystemZ_CondStoreF64Inv	= 505,
+    SystemZ_DDB	= 506,
+    SystemZ_DDBR	= 507,
+    SystemZ_DEB	= 508,
+    SystemZ_DEBR	= 509,
+    SystemZ_DL	= 510,
+    SystemZ_DLG	= 511,
+    SystemZ_DLGR	= 512,
+    SystemZ_DLR	= 513,
+    SystemZ_DSG	= 514,
+    SystemZ_DSGF	= 515,
+    SystemZ_DSGFR	= 516,
+    SystemZ_DSGR	= 517,
+    SystemZ_DXBR	= 518,
+    SystemZ_EAR	= 519,
+    SystemZ_FIDBR	= 520,
+    SystemZ_FIDBRA	= 521,
+    SystemZ_FIEBR	= 522,
+    SystemZ_FIEBRA	= 523,
+    SystemZ_FIXBR	= 524,
+    SystemZ_FIXBRA	= 525,
+    SystemZ_FLOGR	= 526,
+    SystemZ_IC	= 527,
+    SystemZ_IC32	= 528,
+    SystemZ_IC32Y	= 529,
+    SystemZ_ICY	= 530,
+    SystemZ_IIFMux	= 531,
+    SystemZ_IIHF	= 532,
+    SystemZ_IIHF64	= 533,
+    SystemZ_IIHH	= 534,
+    SystemZ_IIHH64	= 535,
+    SystemZ_IIHL	= 536,
+    SystemZ_IIHL64	= 537,
+    SystemZ_IIHMux	= 538,
+    SystemZ_IILF	= 539,
+    SystemZ_IILF64	= 540,
+    SystemZ_IILH	= 541,
+    SystemZ_IILH64	= 542,
+    SystemZ_IILL	= 543,
+    SystemZ_IILL64	= 544,
+    SystemZ_IILMux	= 545,
+    SystemZ_IPM	= 546,
+    SystemZ_J	= 547,
+    SystemZ_JG	= 548,
+    SystemZ_L	= 549,
+    SystemZ_L128	= 550,
+    SystemZ_LA	= 551,
+    SystemZ_LAA	= 552,
+    SystemZ_LAAG	= 553,
+    SystemZ_LAAL	= 554,
+    SystemZ_LAALG	= 555,
+    SystemZ_LAN	= 556,
+    SystemZ_LANG	= 557,
+    SystemZ_LAO	= 558,
+    SystemZ_LAOG	= 559,
+    SystemZ_LARL	= 560,
+    SystemZ_LAX	= 561,
+    SystemZ_LAXG	= 562,
+    SystemZ_LAY	= 563,
+    SystemZ_LB	= 564,
+    SystemZ_LBH	= 565,
+    SystemZ_LBMux	= 566,
+    SystemZ_LBR	= 567,
+    SystemZ_LCDBR	= 568,
+    SystemZ_LCEBR	= 569,
+    SystemZ_LCGFR	= 570,
+    SystemZ_LCGR	= 571,
+    SystemZ_LCR	= 572,
+    SystemZ_LCXBR	= 573,
+    SystemZ_LD	= 574,
+    SystemZ_LDEB	= 575,
+    SystemZ_LDEBR	= 576,
+    SystemZ_LDGR	= 577,
+    SystemZ_LDR	= 578,
+    SystemZ_LDXBR	= 579,
+    SystemZ_LDY	= 580,
+    SystemZ_LE	= 581,
+    SystemZ_LEDBR	= 582,
+    SystemZ_LER	= 583,
+    SystemZ_LEXBR	= 584,
+    SystemZ_LEY	= 585,
+    SystemZ_LFH	= 586,
+    SystemZ_LG	= 587,
+    SystemZ_LGB	= 588,
+    SystemZ_LGBR	= 589,
+    SystemZ_LGDR	= 590,
+    SystemZ_LGF	= 591,
+    SystemZ_LGFI	= 592,
+    SystemZ_LGFR	= 593,
+    SystemZ_LGFRL	= 594,
+    SystemZ_LGH	= 595,
+    SystemZ_LGHI	= 596,
+    SystemZ_LGHR	= 597,
+    SystemZ_LGHRL	= 598,
+    SystemZ_LGR	= 599,
+    SystemZ_LGRL	= 600,
+    SystemZ_LH	= 601,
+    SystemZ_LHH	= 602,
+    SystemZ_LHI	= 603,
+    SystemZ_LHIMux	= 604,
+    SystemZ_LHMux	= 605,
+    SystemZ_LHR	= 606,
+    SystemZ_LHRL	= 607,
+    SystemZ_LHY	= 608,
+    SystemZ_LLC	= 609,
+    SystemZ_LLCH	= 610,
+    SystemZ_LLCMux	= 611,
+    SystemZ_LLCR	= 612,
+    SystemZ_LLCRMux	= 613,
+    SystemZ_LLGC	= 614,
+    SystemZ_LLGCR	= 615,
+    SystemZ_LLGF	= 616,
+    SystemZ_LLGFR	= 617,
+    SystemZ_LLGFRL	= 618,
+    SystemZ_LLGH	= 619,
+    SystemZ_LLGHR	= 620,
+    SystemZ_LLGHRL	= 621,
+    SystemZ_LLH	= 622,
+    SystemZ_LLHH	= 623,
+    SystemZ_LLHMux	= 624,
+    SystemZ_LLHR	= 625,
+    SystemZ_LLHRL	= 626,
+    SystemZ_LLHRMux	= 627,
+    SystemZ_LLIHF	= 628,
+    SystemZ_LLIHH	= 629,
+    SystemZ_LLIHL	= 630,
+    SystemZ_LLILF	= 631,
+    SystemZ_LLILH	= 632,
+    SystemZ_LLILL	= 633,
+    SystemZ_LMG	= 634,
+    SystemZ_LMux	= 635,
+    SystemZ_LNDBR	= 636,
+    SystemZ_LNEBR	= 637,
+    SystemZ_LNGFR	= 638,
+    SystemZ_LNGR	= 639,
+    SystemZ_LNR	= 640,
+    SystemZ_LNXBR	= 641,
+    SystemZ_LOC	= 642,
+    SystemZ_LOCG	= 643,
+    SystemZ_LOCGR	= 644,
+    SystemZ_LOCR	= 645,
+    SystemZ_LPDBR	= 646,
+    SystemZ_LPEBR	= 647,
+    SystemZ_LPGFR	= 648,
+    SystemZ_LPGR	= 649,
+    SystemZ_LPR	= 650,
+    SystemZ_LPXBR	= 651,
+    SystemZ_LR	= 652,
+    SystemZ_LRL	= 653,
+    SystemZ_LRMux	= 654,
+    SystemZ_LRV	= 655,
+    SystemZ_LRVG	= 656,
+    SystemZ_LRVGR	= 657,
+    SystemZ_LRVR	= 658,
+    SystemZ_LT	= 659,
+    SystemZ_LTDBR	= 660,
+    SystemZ_LTDBRCompare	= 661,
+    SystemZ_LTEBR	= 662,
+    SystemZ_LTEBRCompare	= 663,
+    SystemZ_LTG	= 664,
+    SystemZ_LTGF	= 665,
+    SystemZ_LTGFR	= 666,
+    SystemZ_LTGR	= 667,
+    SystemZ_LTR	= 668,
+    SystemZ_LTXBR	= 669,
+    SystemZ_LTXBRCompare	= 670,
+    SystemZ_LX	= 671,
+    SystemZ_LXDB	= 672,
+    SystemZ_LXDBR	= 673,
+    SystemZ_LXEB	= 674,
+    SystemZ_LXEBR	= 675,
+    SystemZ_LXR	= 676,
+    SystemZ_LY	= 677,
+    SystemZ_LZDR	= 678,
+    SystemZ_LZER	= 679,
+    SystemZ_LZXR	= 680,
+    SystemZ_MADB	= 681,
+    SystemZ_MADBR	= 682,
+    SystemZ_MAEB	= 683,
+    SystemZ_MAEBR	= 684,
+    SystemZ_MDB	= 685,
+    SystemZ_MDBR	= 686,
+    SystemZ_MDEB	= 687,
+    SystemZ_MDEBR	= 688,
+    SystemZ_MEEB	= 689,
+    SystemZ_MEEBR	= 690,
+    SystemZ_MGHI	= 691,
+    SystemZ_MH	= 692,
+    SystemZ_MHI	= 693,
+    SystemZ_MHY	= 694,
+    SystemZ_MLG	= 695,
+    SystemZ_MLGR	= 696,
+    SystemZ_MS	= 697,
+    SystemZ_MSDB	= 698,
+    SystemZ_MSDBR	= 699,
+    SystemZ_MSEB	= 700,
+    SystemZ_MSEBR	= 701,
+    SystemZ_MSFI	= 702,
+    SystemZ_MSG	= 703,
+    SystemZ_MSGF	= 704,
+    SystemZ_MSGFI	= 705,
+    SystemZ_MSGFR	= 706,
+    SystemZ_MSGR	= 707,
+    SystemZ_MSR	= 708,
+    SystemZ_MSY	= 709,
+    SystemZ_MVC	= 710,
+    SystemZ_MVCLoop	= 711,
+    SystemZ_MVCSequence	= 712,
+    SystemZ_MVGHI	= 713,
+    SystemZ_MVHHI	= 714,
+    SystemZ_MVHI	= 715,
+    SystemZ_MVI	= 716,
+    SystemZ_MVIY	= 717,
+    SystemZ_MVST	= 718,
+    SystemZ_MVSTLoop	= 719,
+    SystemZ_MXBR	= 720,
+    SystemZ_MXDB	= 721,
+    SystemZ_MXDBR	= 722,
+    SystemZ_N	= 723,
+    SystemZ_NC	= 724,
+    SystemZ_NCLoop	= 725,
+    SystemZ_NCSequence	= 726,
+    SystemZ_NG	= 727,
+    SystemZ_NGR	= 728,
+    SystemZ_NGRK	= 729,
+    SystemZ_NI	= 730,
+    SystemZ_NIFMux	= 731,
+    SystemZ_NIHF	= 732,
+    SystemZ_NIHF64	= 733,
+    SystemZ_NIHH	= 734,
+    SystemZ_NIHH64	= 735,
+    SystemZ_NIHL	= 736,
+    SystemZ_NIHL64	= 737,
+    SystemZ_NIHMux	= 738,
+    SystemZ_NILF	= 739,
+    SystemZ_NILF64	= 740,
+    SystemZ_NILH	= 741,
+    SystemZ_NILH64	= 742,
+    SystemZ_NILL	= 743,
+    SystemZ_NILL64	= 744,
+    SystemZ_NILMux	= 745,
+    SystemZ_NIY	= 746,
+    SystemZ_NR	= 747,
+    SystemZ_NRK	= 748,
+    SystemZ_NY	= 749,
+    SystemZ_O	= 750,
+    SystemZ_OC	= 751,
+    SystemZ_OCLoop	= 752,
+    SystemZ_OCSequence	= 753,
+    SystemZ_OG	= 754,
+    SystemZ_OGR	= 755,
+    SystemZ_OGRK	= 756,
+    SystemZ_OI	= 757,
+    SystemZ_OIFMux	= 758,
+    SystemZ_OIHF	= 759,
+    SystemZ_OIHF64	= 760,
+    SystemZ_OIHH	= 761,
+    SystemZ_OIHH64	= 762,
+    SystemZ_OIHL	= 763,
+    SystemZ_OIHL64	= 764,
+    SystemZ_OIHMux	= 765,
+    SystemZ_OILF	= 766,
+    SystemZ_OILF64	= 767,
+    SystemZ_OILH	= 768,
+    SystemZ_OILH64	= 769,
+    SystemZ_OILL	= 770,
+    SystemZ_OILL64	= 771,
+    SystemZ_OILMux	= 772,
+    SystemZ_OIY	= 773,
+    SystemZ_OR	= 774,
+    SystemZ_ORK	= 775,
+    SystemZ_OY	= 776,
+    SystemZ_PFD	= 777,
+    SystemZ_PFDRL	= 778,
+    SystemZ_RISBG	= 779,
+    SystemZ_RISBG32	= 780,
+    SystemZ_RISBHG	= 781,
+    SystemZ_RISBHH	= 782,
+    SystemZ_RISBHL	= 783,
+    SystemZ_RISBLG	= 784,
+    SystemZ_RISBLH	= 785,
+    SystemZ_RISBLL	= 786,
+    SystemZ_RISBMux	= 787,
+    SystemZ_RLL	= 788,
+    SystemZ_RLLG	= 789,
+    SystemZ_RNSBG	= 790,
+    SystemZ_ROSBG	= 791,
+    SystemZ_RXSBG	= 792,
+    SystemZ_Return	= 793,
+    SystemZ_S	= 794,
+    SystemZ_SDB	= 795,
+    SystemZ_SDBR	= 796,
+    SystemZ_SEB	= 797,
+    SystemZ_SEBR	= 798,
+    SystemZ_SG	= 799,
+    SystemZ_SGF	= 800,
+    SystemZ_SGFR	= 801,
+    SystemZ_SGR	= 802,
+    SystemZ_SGRK	= 803,
+    SystemZ_SH	= 804,
+    SystemZ_SHY	= 805,
+    SystemZ_SL	= 806,
+    SystemZ_SLB	= 807,
+    SystemZ_SLBG	= 808,
+    SystemZ_SLBR	= 809,
+    SystemZ_SLFI	= 810,
+    SystemZ_SLG	= 811,
+    SystemZ_SLGBR	= 812,
+    SystemZ_SLGF	= 813,
+    SystemZ_SLGFI	= 814,
+    SystemZ_SLGFR	= 815,
+    SystemZ_SLGR	= 816,
+    SystemZ_SLGRK	= 817,
+    SystemZ_SLL	= 818,
+    SystemZ_SLLG	= 819,
+    SystemZ_SLLK	= 820,
+    SystemZ_SLR	= 821,
+    SystemZ_SLRK	= 822,
+    SystemZ_SLY	= 823,
+    SystemZ_SQDB	= 824,
+    SystemZ_SQDBR	= 825,
+    SystemZ_SQEB	= 826,
+    SystemZ_SQEBR	= 827,
+    SystemZ_SQXBR	= 828,
+    SystemZ_SR	= 829,
+    SystemZ_SRA	= 830,
+    SystemZ_SRAG	= 831,
+    SystemZ_SRAK	= 832,
+    SystemZ_SRK	= 833,
+    SystemZ_SRL	= 834,
+    SystemZ_SRLG	= 835,
+    SystemZ_SRLK	= 836,
+    SystemZ_SRST	= 837,
+    SystemZ_SRSTLoop	= 838,
+    SystemZ_ST	= 839,
+    SystemZ_ST128	= 840,
+    SystemZ_STC	= 841,
+    SystemZ_STCH	= 842,
+    SystemZ_STCMux	= 843,
+    SystemZ_STCY	= 844,
+    SystemZ_STD	= 845,
+    SystemZ_STDY	= 846,
+    SystemZ_STE	= 847,
+    SystemZ_STEY	= 848,
+    SystemZ_STFH	= 849,
+    SystemZ_STG	= 850,
+    SystemZ_STGRL	= 851,
+    SystemZ_STH	= 852,
+    SystemZ_STHH	= 853,
+    SystemZ_STHMux	= 854,
+    SystemZ_STHRL	= 855,
+    SystemZ_STHY	= 856,
+    SystemZ_STMG	= 857,
+    SystemZ_STMux	= 858,
+    SystemZ_STOC	= 859,
+    SystemZ_STOCG	= 860,
+    SystemZ_STRL	= 861,
+    SystemZ_STRV	= 862,
+    SystemZ_STRVG	= 863,
+    SystemZ_STX	= 864,
+    SystemZ_STY	= 865,
+    SystemZ_SXBR	= 866,
+    SystemZ_SY	= 867,
+    SystemZ_Select32	= 868,
+    SystemZ_Select32Mux	= 869,
+    SystemZ_Select64	= 870,
+    SystemZ_SelectF128	= 871,
+    SystemZ_SelectF32	= 872,
+    SystemZ_SelectF64	= 873,
+    SystemZ_Serialize	= 874,
+    SystemZ_TM	= 875,
+    SystemZ_TMHH	= 876,
+    SystemZ_TMHH64	= 877,
+    SystemZ_TMHL	= 878,
+    SystemZ_TMHL64	= 879,
+    SystemZ_TMHMux	= 880,
+    SystemZ_TMLH	= 881,
+    SystemZ_TMLH64	= 882,
+    SystemZ_TMLL	= 883,
+    SystemZ_TMLL64	= 884,
+    SystemZ_TMLMux	= 885,
+    SystemZ_TMY	= 886,
+    SystemZ_X	= 887,
+    SystemZ_XC	= 888,
+    SystemZ_XCLoop	= 889,
+    SystemZ_XCSequence	= 890,
+    SystemZ_XG	= 891,
+    SystemZ_XGR	= 892,
+    SystemZ_XGRK	= 893,
+    SystemZ_XI	= 894,
+    SystemZ_XIFMux	= 895,
+    SystemZ_XIHF	= 896,
+    SystemZ_XIHF64	= 897,
+    SystemZ_XILF	= 898,
+    SystemZ_XILF64	= 899,
+    SystemZ_XIY	= 900,
+    SystemZ_XR	= 901,
+    SystemZ_XRK	= 902,
+    SystemZ_XY	= 903,
+    SystemZ_ZEXT128_32	= 904,
+    SystemZ_ZEXT128_64	= 905,
+    SystemZ_INSTRUCTION_LIST_END = 906
+};
+
+#endif // GET_INSTRINFO_ENUM
diff --git a/arch/SystemZ/SystemZGenRegisterInfo.inc b/arch/SystemZ/SystemZGenRegisterInfo.inc
new file mode 100644
index 0000000..6552276
--- /dev/null
+++ b/arch/SystemZ/SystemZGenRegisterInfo.inc
@@ -0,0 +1,450 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Target Register Enum Values                                                 *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+
+#ifdef GET_REGINFO_ENUM
+#undef GET_REGINFO_ENUM
+
+enum {
+  SystemZ_NoRegister,
+  SystemZ_CC = 1,
+  SystemZ_F0D = 2,
+  SystemZ_F1D = 3,
+  SystemZ_F2D = 4,
+  SystemZ_F3D = 5,
+  SystemZ_F4D = 6,
+  SystemZ_F5D = 7,
+  SystemZ_F6D = 8,
+  SystemZ_F7D = 9,
+  SystemZ_F8D = 10,
+  SystemZ_F9D = 11,
+  SystemZ_F10D = 12,
+  SystemZ_F11D = 13,
+  SystemZ_F12D = 14,
+  SystemZ_F13D = 15,
+  SystemZ_F14D = 16,
+  SystemZ_F15D = 17,
+  SystemZ_F0Q = 18,
+  SystemZ_F1Q = 19,
+  SystemZ_F4Q = 20,
+  SystemZ_F5Q = 21,
+  SystemZ_F8Q = 22,
+  SystemZ_F9Q = 23,
+  SystemZ_F12Q = 24,
+  SystemZ_F13Q = 25,
+  SystemZ_F0S = 26,
+  SystemZ_F1S = 27,
+  SystemZ_F2S = 28,
+  SystemZ_F3S = 29,
+  SystemZ_F4S = 30,
+  SystemZ_F5S = 31,
+  SystemZ_F6S = 32,
+  SystemZ_F7S = 33,
+  SystemZ_F8S = 34,
+  SystemZ_F9S = 35,
+  SystemZ_F10S = 36,
+  SystemZ_F11S = 37,
+  SystemZ_F12S = 38,
+  SystemZ_F13S = 39,
+  SystemZ_F14S = 40,
+  SystemZ_F15S = 41,
+  SystemZ_R0D = 42,
+  SystemZ_R1D = 43,
+  SystemZ_R2D = 44,
+  SystemZ_R3D = 45,
+  SystemZ_R4D = 46,
+  SystemZ_R5D = 47,
+  SystemZ_R6D = 48,
+  SystemZ_R7D = 49,
+  SystemZ_R8D = 50,
+  SystemZ_R9D = 51,
+  SystemZ_R10D = 52,
+  SystemZ_R11D = 53,
+  SystemZ_R12D = 54,
+  SystemZ_R13D = 55,
+  SystemZ_R14D = 56,
+  SystemZ_R15D = 57,
+  SystemZ_R0H = 58,
+  SystemZ_R1H = 59,
+  SystemZ_R2H = 60,
+  SystemZ_R3H = 61,
+  SystemZ_R4H = 62,
+  SystemZ_R5H = 63,
+  SystemZ_R6H = 64,
+  SystemZ_R7H = 65,
+  SystemZ_R8H = 66,
+  SystemZ_R9H = 67,
+  SystemZ_R10H = 68,
+  SystemZ_R11H = 69,
+  SystemZ_R12H = 70,
+  SystemZ_R13H = 71,
+  SystemZ_R14H = 72,
+  SystemZ_R15H = 73,
+  SystemZ_R0L = 74,
+  SystemZ_R1L = 75,
+  SystemZ_R2L = 76,
+  SystemZ_R3L = 77,
+  SystemZ_R4L = 78,
+  SystemZ_R5L = 79,
+  SystemZ_R6L = 80,
+  SystemZ_R7L = 81,
+  SystemZ_R8L = 82,
+  SystemZ_R9L = 83,
+  SystemZ_R10L = 84,
+  SystemZ_R11L = 85,
+  SystemZ_R12L = 86,
+  SystemZ_R13L = 87,
+  SystemZ_R14L = 88,
+  SystemZ_R15L = 89,
+  SystemZ_R0Q = 90,
+  SystemZ_R2Q = 91,
+  SystemZ_R4Q = 92,
+  SystemZ_R6Q = 93,
+  SystemZ_R8Q = 94,
+  SystemZ_R10Q = 95,
+  SystemZ_R12Q = 96,
+  SystemZ_R14Q = 97,
+  SystemZ_NUM_TARGET_REGS 	// 98
+};
+
+// Register classes
+enum {
+  SystemZ_GRX32BitRegClassID = 0,
+  SystemZ_FP32BitRegClassID = 1,
+  SystemZ_GR32BitRegClassID = 2,
+  SystemZ_GRH32BitRegClassID = 3,
+  SystemZ_ADDR32BitRegClassID = 4,
+  SystemZ_CCRegsRegClassID = 5,
+  SystemZ_FP64BitRegClassID = 6,
+  SystemZ_GR64BitRegClassID = 7,
+  SystemZ_ADDR64BitRegClassID = 8,
+  SystemZ_FP128BitRegClassID = 9,
+  SystemZ_GR128BitRegClassID = 10,
+  SystemZ_ADDR128BitRegClassID = 11
+};
+
+// Subregister indices
+enum {
+  SystemZ_NoSubRegister,
+  SystemZ_subreg_h32,	// 1
+  SystemZ_subreg_h64,	// 2
+  SystemZ_subreg_hh32,	// 3
+  SystemZ_subreg_hl32,	// 4
+  SystemZ_subreg_l32,	// 5
+  SystemZ_subreg_l64,	// 6
+  SystemZ_NUM_TARGET_SUBREGS
+};
+
+#endif // GET_REGINFO_ENUM
+
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*MC Register Information                                                     *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+
+#ifdef GET_REGINFO_MC_DESC
+#undef GET_REGINFO_MC_DESC
+
+static MCPhysReg SystemZRegDiffLists[] = {
+  /* 0 */ 65193, 1, 1, 1, 0,
+  /* 5 */ 65469, 1, 0,
+  /* 8 */ 65519, 2, 0,
+  /* 11 */ 65521, 2, 0,
+  /* 14 */ 65523, 2, 0,
+  /* 17 */ 65525, 2, 0,
+  /* 20 */ 65512, 8, 0,
+  /* 23 */ 65512, 10, 0,
+  /* 26 */ 65512, 12, 0,
+  /* 29 */ 65512, 14, 0,
+  /* 32 */ 65512, 16, 0,
+  /* 35 */ 65522, 24, 65510, 24, 0,
+  /* 40 */ 65524, 24, 65510, 24, 0,
+  /* 45 */ 65526, 24, 65510, 24, 0,
+  /* 50 */ 65528, 24, 65510, 24, 0,
+  /* 55 */ 65504, 40, 0,
+  /* 58 */ 65520, 40, 0,
+  /* 61 */ 65504, 41, 0,
+  /* 64 */ 65520, 41, 0,
+  /* 67 */ 65504, 42, 0,
+  /* 70 */ 65520, 42, 0,
+  /* 73 */ 65504, 43, 0,
+  /* 76 */ 65520, 43, 0,
+  /* 79 */ 65504, 44, 0,
+  /* 82 */ 65520, 44, 0,
+  /* 85 */ 65504, 45, 0,
+  /* 88 */ 65520, 45, 0,
+  /* 91 */ 65504, 46, 0,
+  /* 94 */ 65520, 46, 0,
+  /* 97 */ 65504, 47, 0,
+  /* 100 */ 65520, 47, 0,
+  /* 103 */ 65504, 48, 0,
+  /* 106 */ 65520, 48, 0,
+  /* 109 */ 65405, 0,
+  /* 111 */ 65438, 0,
+  /* 113 */ 65511, 0,
+  /* 115 */ 65489, 32, 65520, 65519, 32, 65520, 0,
+  /* 122 */ 65490, 32, 65520, 65519, 32, 65520, 0,
+  /* 129 */ 65491, 32, 65520, 65519, 32, 65520, 0,
+  /* 136 */ 65492, 32, 65520, 65519, 32, 65520, 0,
+  /* 143 */ 65493, 32, 65520, 65519, 32, 65520, 0,
+  /* 150 */ 65494, 32, 65520, 65519, 32, 65520, 0,
+  /* 157 */ 65495, 32, 65520, 65519, 32, 65520, 0,
+  /* 164 */ 65496, 32, 65520, 65519, 32, 65520, 0,
+  /* 171 */ 65535, 0,
+};
+
+static uint16_t SystemZSubRegIdxLists[] = {
+  /* 0 */ 5, 1, 0,
+  /* 3 */ 6, 1, 2, 3, 0,
+  /* 8 */ 6, 5, 1, 2, 4, 3, 0,
+};
+
+static MCRegisterDesc SystemZRegDesc[] = { // Descriptors
+  { 2, 0, 0, 0, 0 },
+  { 0, 4, 4, 2, 2737 },
+  { 13, 38, 33, 1, 2737 },
+  { 31, 38, 33, 1, 2737 },
+  { 49, 38, 30, 1, 2737 },
+  { 67, 38, 30, 1, 2737 },
+  { 85, 38, 30, 1, 2737 },
+  { 103, 38, 30, 1, 2737 },
+  { 111, 38, 27, 1, 2737 },
+  { 119, 38, 27, 1, 2737 },
+  { 127, 38, 27, 1, 2737 },
+  { 135, 38, 27, 1, 2737 },
+  { 3, 38, 24, 1, 2737 },
+  { 21, 38, 24, 1, 2737 },
+  { 39, 38, 24, 1, 2737 },
+  { 57, 38, 24, 1, 2737 },
+  { 75, 38, 21, 1, 2737 },
+  { 93, 38, 21, 1, 2737 },
+  { 288, 35, 4, 3, 129 },
+  { 296, 35, 4, 3, 129 },
+  { 324, 40, 4, 3, 177 },
+  { 332, 40, 4, 3, 177 },
+  { 340, 45, 4, 3, 225 },
+  { 348, 45, 4, 3, 225 },
+  { 300, 50, 4, 3, 273 },
+  { 314, 50, 4, 3, 273 },
+  { 357, 4, 32, 2, 1809 },
+  { 366, 4, 32, 2, 1809 },
+  { 375, 4, 29, 2, 1809 },
+  { 384, 4, 29, 2, 1809 },
+  { 393, 4, 29, 2, 1809 },
+  { 402, 4, 29, 2, 1809 },
+  { 406, 4, 26, 2, 1809 },
+  { 410, 4, 26, 2, 1809 },
+  { 414, 4, 26, 2, 1809 },
+  { 418, 4, 26, 2, 1809 },
+  { 352, 4, 23, 2, 1809 },
+  { 361, 4, 23, 2, 1809 },
+  { 370, 4, 23, 2, 1809 },
+  { 379, 4, 23, 2, 1809 },
+  { 388, 4, 20, 2, 1809 },
+  { 397, 4, 20, 2, 1809 },
+  { 17, 119, 104, 0, 82 },
+  { 35, 119, 98, 0, 82 },
+  { 53, 119, 98, 0, 82 },
+  { 71, 119, 92, 0, 82 },
+  { 89, 119, 92, 0, 82 },
+  { 107, 119, 86, 0, 82 },
+  { 115, 119, 86, 0, 82 },
+  { 123, 119, 80, 0, 82 },
+  { 131, 119, 80, 0, 82 },
+  { 139, 119, 74, 0, 82 },
+  { 8, 119, 74, 0, 82 },
+  { 26, 119, 68, 0, 82 },
+  { 44, 119, 68, 0, 82 },
+  { 62, 119, 62, 0, 82 },
+  { 80, 119, 62, 0, 82 },
+  { 98, 119, 56, 0, 82 },
+  { 148, 4, 106, 2, 1778 },
+  { 157, 4, 100, 2, 1778 },
+  { 166, 4, 100, 2, 1778 },
+  { 175, 4, 94, 2, 1778 },
+  { 184, 4, 94, 2, 1778 },
+  { 193, 4, 88, 2, 1778 },
+  { 197, 4, 88, 2, 1778 },
+  { 201, 4, 82, 2, 1778 },
+  { 205, 4, 82, 2, 1778 },
+  { 209, 4, 76, 2, 1778 },
+  { 143, 4, 76, 2, 1778 },
+  { 152, 4, 70, 2, 1778 },
+  { 161, 4, 70, 2, 1778 },
+  { 170, 4, 64, 2, 1778 },
+  { 179, 4, 64, 2, 1778 },
+  { 188, 4, 58, 2, 1778 },
+  { 218, 4, 103, 2, 1746 },
+  { 227, 4, 97, 2, 1746 },
+  { 236, 4, 97, 2, 1746 },
+  { 245, 4, 91, 2, 1746 },
+  { 254, 4, 91, 2, 1746 },
+  { 263, 4, 85, 2, 1746 },
+  { 267, 4, 85, 2, 1746 },
+  { 271, 4, 79, 2, 1746 },
+  { 275, 4, 79, 2, 1746 },
+  { 279, 4, 73, 2, 1746 },
+  { 213, 4, 73, 2, 1746 },
+  { 222, 4, 67, 2, 1746 },
+  { 231, 4, 67, 2, 1746 },
+  { 240, 4, 61, 2, 1746 },
+  { 249, 4, 61, 2, 1746 },
+  { 258, 4, 55, 2, 1746 },
+  { 292, 115, 4, 8, 4 },
+  { 310, 122, 4, 8, 4 },
+  { 328, 129, 4, 8, 4 },
+  { 336, 136, 4, 8, 4 },
+  { 344, 143, 4, 8, 4 },
+  { 283, 150, 4, 8, 4 },
+  { 305, 157, 4, 8, 4 },
+  { 319, 164, 4, 8, 4 },
+};
+
+  // GRX32Bit Register Class...
+  static uint16_t GRX32Bit[] = {
+    SystemZ_R0L, SystemZ_R1L, SystemZ_R2L, SystemZ_R3L, SystemZ_R4L, SystemZ_R5L, SystemZ_R0H, SystemZ_R1H, SystemZ_R2H, SystemZ_R3H, SystemZ_R4H, SystemZ_R5H, SystemZ_R15L, SystemZ_R15H, SystemZ_R14L, SystemZ_R14H, SystemZ_R13L, SystemZ_R13H, SystemZ_R12L, SystemZ_R12H, SystemZ_R11L, SystemZ_R11H, SystemZ_R10L, SystemZ_R10H, SystemZ_R9L, SystemZ_R9H, SystemZ_R8L, SystemZ_R8H, SystemZ_R7L, SystemZ_R7H, SystemZ_R6L, SystemZ_R6H, 
+  };
+
+  // GRX32Bit Bit set.
+  static uint8_t GRX32BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0x03, 
+  };
+
+  // FP32Bit Register Class...
+  static uint16_t FP32Bit[] = {
+    SystemZ_F0S, SystemZ_F1S, SystemZ_F2S, SystemZ_F3S, SystemZ_F4S, SystemZ_F5S, SystemZ_F6S, SystemZ_F7S, SystemZ_F8S, SystemZ_F9S, SystemZ_F10S, SystemZ_F11S, SystemZ_F12S, SystemZ_F13S, SystemZ_F14S, SystemZ_F15S, 
+  };
+
+  // FP32Bit Bit set.
+  static uint8_t FP32BitBits[] = {
+    0x00, 0x00, 0x00, 0xfc, 0xff, 0x03, 
+  };
+
+  // GR32Bit Register Class...
+  static uint16_t GR32Bit[] = {
+    SystemZ_R0L, SystemZ_R1L, SystemZ_R2L, SystemZ_R3L, SystemZ_R4L, SystemZ_R5L, SystemZ_R15L, SystemZ_R14L, SystemZ_R13L, SystemZ_R12L, SystemZ_R11L, SystemZ_R10L, SystemZ_R9L, SystemZ_R8L, SystemZ_R7L, SystemZ_R6L, 
+  };
+
+  // GR32Bit Bit set.
+  static uint8_t GR32BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x03, 
+  };
+
+  // GRH32Bit Register Class...
+  static uint16_t GRH32Bit[] = {
+    SystemZ_R0H, SystemZ_R1H, SystemZ_R2H, SystemZ_R3H, SystemZ_R4H, SystemZ_R5H, SystemZ_R15H, SystemZ_R14H, SystemZ_R13H, SystemZ_R12H, SystemZ_R11H, SystemZ_R10H, SystemZ_R9H, SystemZ_R8H, SystemZ_R7H, SystemZ_R6H, 
+  };
+
+  // GRH32Bit Bit set.
+  static uint8_t GRH32BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x03, 
+  };
+
+  // ADDR32Bit Register Class...
+  static uint16_t ADDR32Bit[] = {
+    SystemZ_R1L, SystemZ_R2L, SystemZ_R3L, SystemZ_R4L, SystemZ_R5L, SystemZ_R15L, SystemZ_R14L, SystemZ_R13L, SystemZ_R12L, SystemZ_R11L, SystemZ_R10L, SystemZ_R9L, SystemZ_R8L, SystemZ_R7L, SystemZ_R6L, 
+  };
+
+  // ADDR32Bit Bit set.
+  static uint8_t ADDR32BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x03, 
+  };
+
+  // CCRegs Register Class...
+  static uint16_t CCRegs[] = {
+    SystemZ_CC, 
+  };
+
+  // CCRegs Bit set.
+  static uint8_t CCRegsBits[] = {
+    0x02, 
+  };
+
+  // FP64Bit Register Class...
+  static uint16_t FP64Bit[] = {
+    SystemZ_F0D, SystemZ_F1D, SystemZ_F2D, SystemZ_F3D, SystemZ_F4D, SystemZ_F5D, SystemZ_F6D, SystemZ_F7D, SystemZ_F8D, SystemZ_F9D, SystemZ_F10D, SystemZ_F11D, SystemZ_F12D, SystemZ_F13D, SystemZ_F14D, SystemZ_F15D, 
+  };
+
+  // FP64Bit Bit set.
+  static uint8_t FP64BitBits[] = {
+    0xfc, 0xff, 0x03, 
+  };
+
+  // GR64Bit Register Class...
+  static uint16_t GR64Bit[] = {
+    SystemZ_R0D, SystemZ_R1D, SystemZ_R2D, SystemZ_R3D, SystemZ_R4D, SystemZ_R5D, SystemZ_R15D, SystemZ_R14D, SystemZ_R13D, SystemZ_R12D, SystemZ_R11D, SystemZ_R10D, SystemZ_R9D, SystemZ_R8D, SystemZ_R7D, SystemZ_R6D, 
+  };
+
+  // GR64Bit Bit set.
+  static uint8_t GR64BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0x03, 
+  };
+
+  // ADDR64Bit Register Class...
+  static uint16_t ADDR64Bit[] = {
+    SystemZ_R1D, SystemZ_R2D, SystemZ_R3D, SystemZ_R4D, SystemZ_R5D, SystemZ_R15D, SystemZ_R14D, SystemZ_R13D, SystemZ_R12D, SystemZ_R11D, SystemZ_R10D, SystemZ_R9D, SystemZ_R8D, SystemZ_R7D, SystemZ_R6D, 
+  };
+
+  // ADDR64Bit Bit set.
+  static uint8_t ADDR64BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x03, 
+  };
+
+  // FP128Bit Register Class...
+  static uint16_t FP128Bit[] = {
+    SystemZ_F0Q, SystemZ_F1Q, SystemZ_F4Q, SystemZ_F5Q, SystemZ_F8Q, SystemZ_F9Q, SystemZ_F12Q, SystemZ_F13Q, 
+  };
+
+  // FP128Bit Bit set.
+  static uint8_t FP128BitBits[] = {
+    0x00, 0x00, 0xfc, 0x03, 
+  };
+
+  // GR128Bit Register Class...
+  static uint16_t GR128Bit[] = {
+    SystemZ_R0Q, SystemZ_R2Q, SystemZ_R4Q, SystemZ_R12Q, SystemZ_R10Q, SystemZ_R8Q, SystemZ_R6Q, SystemZ_R14Q, 
+  };
+
+  // GR128Bit Bit set.
+  static uint8_t GR128BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x03, 
+  };
+
+  // ADDR128Bit Register Class...
+  static uint16_t ADDR128Bit[] = {
+    SystemZ_R2Q, SystemZ_R4Q, SystemZ_R12Q, SystemZ_R10Q, SystemZ_R8Q, SystemZ_R6Q, SystemZ_R14Q, 
+  };
+
+  // ADDR128Bit Bit set.
+  static uint8_t ADDR128BitBits[] = {
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 
+  };
+
+static MCRegisterClass SystemZMCRegisterClasses[] = {
+  { "GRX32Bit", GRX32Bit, GRX32BitBits, 32, sizeof(GRX32BitBits), SystemZ_GRX32BitRegClassID, 4, 4, 1, 1 },
+  { "FP32Bit", FP32Bit, FP32BitBits, 16, sizeof(FP32BitBits), SystemZ_FP32BitRegClassID, 4, 4, 1, 1 },
+  { "GR32Bit", GR32Bit, GR32BitBits, 16, sizeof(GR32BitBits), SystemZ_GR32BitRegClassID, 4, 4, 1, 1 },
+  { "GRH32Bit", GRH32Bit, GRH32BitBits, 16, sizeof(GRH32BitBits), SystemZ_GRH32BitRegClassID, 4, 4, 1, 1 },
+  { "ADDR32Bit", ADDR32Bit, ADDR32BitBits, 15, sizeof(ADDR32BitBits), SystemZ_ADDR32BitRegClassID, 4, 4, 1, 1 },
+  { "CCRegs", CCRegs, CCRegsBits, 1, sizeof(CCRegsBits), SystemZ_CCRegsRegClassID, 4, 4, 1, 1 },
+  { "FP64Bit", FP64Bit, FP64BitBits, 16, sizeof(FP64BitBits), SystemZ_FP64BitRegClassID, 8, 8, 1, 1 },
+  { "GR64Bit", GR64Bit, GR64BitBits, 16, sizeof(GR64BitBits), SystemZ_GR64BitRegClassID, 8, 8, 1, 1 },
+  { "ADDR64Bit", ADDR64Bit, ADDR64BitBits, 15, sizeof(ADDR64BitBits), SystemZ_ADDR64BitRegClassID, 8, 8, 1, 1 },
+  { "FP128Bit", FP128Bit, FP128BitBits, 8, sizeof(FP128BitBits), SystemZ_FP128BitRegClassID, 16, 16, 1, 1 },
+  { "GR128Bit", GR128Bit, GR128BitBits, 8, sizeof(GR128BitBits), SystemZ_GR128BitRegClassID, 16, 16, 1, 1 },
+  { "ADDR128Bit", ADDR128Bit, ADDR128BitBits, 7, sizeof(ADDR128BitBits), SystemZ_ADDR128BitRegClassID, 16, 16, 1, 1 },
+};
+
+#endif // GET_REGINFO_MC_DESC
diff --git a/arch/SystemZ/SystemZGenSubtargetInfo.inc b/arch/SystemZ/SystemZGenSubtargetInfo.inc
new file mode 100644
index 0000000..92f1ce8
--- /dev/null
+++ b/arch/SystemZ/SystemZGenSubtargetInfo.inc
@@ -0,0 +1,26 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Subtarget Enumeration Source Fragment                                       *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine, http://www.capstone-engine.org */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+
+#ifdef GET_SUBTARGETINFO_ENUM
+#undef GET_SUBTARGETINFO_ENUM
+
+enum {
+  SystemZ_FeatureDistinctOps =  1ULL << 0,
+  SystemZ_FeatureFPExtension =  1ULL << 1,
+  SystemZ_FeatureFastSerialization =  1ULL << 2,
+  SystemZ_FeatureHighWord =  1ULL << 3,
+  SystemZ_FeatureInterlockedAccess1 =  1ULL << 4,
+  SystemZ_FeatureLoadStoreOnCond =  1ULL << 5
+};
+
+#endif // GET_SUBTARGETINFO_ENUM
+
diff --git a/arch/SystemZ/SystemZInstPrinter.c b/arch/SystemZ/SystemZInstPrinter.c
new file mode 100644
index 0000000..bdad092
--- /dev/null
+++ b/arch/SystemZ/SystemZInstPrinter.c
@@ -0,0 +1,378 @@
+//===-- SystemZInstPrinter.cpp - Convert SystemZ MCInst to assembly syntax --------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This class prints an SystemZ MCInst to a .s file.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <inttypes.h>
+
+#include "SystemZInstPrinter.h"
+#include "../../MCInst.h"
+#include "../../utils.h"
+#include "../../SStream.h"
+#include "../../MCRegisterInfo.h"
+#include "../../MathExtras.h"
+#include "SystemZMapping.h"
+
+static const char *getRegisterName(unsigned RegNo);
+
+void SystemZ_post_printer(csh ud, cs_insn *insn, char *insn_asm)
+{
+	/*
+	   if (((cs_struct *)ud)->detail != CS_OPT_ON)
+	   return;
+	 */
+}
+
+static void printAddress(MCInst *MI, unsigned Base, int64_t Disp, unsigned Index, SStream *O)
+{
+	if (Disp >= 0) {
+		if (Disp > HEX_THRESHOLD)
+			SStream_concat(O, "0x%"PRIx64, Disp);
+		else
+			SStream_concat(O, "%"PRIu64, Disp);
+	} else {
+		if (Disp < -HEX_THRESHOLD)
+			SStream_concat(O, "-0x%"PRIx64, -Disp);
+		else
+			SStream_concat(O, "-%"PRIu64, -Disp);
+	}
+
+	if (Base) {
+		SStream_concat(O, "(");
+		if (Index)
+			SStream_concat(O, "%%%s, ", getRegisterName(Index));
+		SStream_concat(O, "%%%s)", getRegisterName(Base));
+
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_MEM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].mem.base = (uint8_t)SystemZ_map_register(Base);
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].mem.index = (uint8_t)SystemZ_map_register(Index);
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].mem.disp = Disp;
+		MI->flat_insn.sysz.op_count++;
+	} else if (!Index) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = Disp;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void _printOperand(MCInst *MI, MCOperand *MO, SStream *O)
+{
+	if (MCOperand_isReg(MO)) {
+		unsigned reg;
+
+		reg = MCOperand_getReg(MO);
+		SStream_concat(O, "%%%s", getRegisterName(reg));
+		reg = SystemZ_map_register(reg);
+
+		if (MI->csh->detail) {
+			MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_REG;
+			MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].reg = reg;
+			MI->flat_insn.sysz.op_count++;
+		}
+	} else if (MCOperand_isImm(MO)) {
+		int64_t Imm = MCOperand_getImm(MO);
+
+		if (Imm >= 0) {
+			if (Imm > HEX_THRESHOLD)
+				SStream_concat(O, "0x%"PRIx64, Imm);
+			else
+				SStream_concat(O, "%"PRIu64, Imm);
+		} else {
+			if (Imm < -HEX_THRESHOLD)
+				SStream_concat(O, "-0x%"PRIx64, -Imm);
+			else
+				SStream_concat(O, "-%"PRIu64, -Imm);
+		}
+
+		if (MI->csh->detail) {
+			MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+			MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = Imm;
+			MI->flat_insn.sysz.op_count++;
+		}
+	}
+}
+
+static void printU4ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	int64_t Value = MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isUInt<4>(Value) && "Invalid u4imm argument");
+	if (Value >= 0) {
+		if (Value > HEX_THRESHOLD)
+			SStream_concat(O, "0x%"PRIx64, Value);
+		else
+			SStream_concat(O, "%"PRIu64, Value);
+	} else {
+		if (Value < -HEX_THRESHOLD)
+			SStream_concat(O, "-0x%"PRIx64, -Value);
+		else
+			SStream_concat(O, "-%"PRIu64, -Value);
+	}
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printU6ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	uint32_t Value = (uint32_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isUInt<6>(Value) && "Invalid u6imm argument");
+
+	if (Value > HEX_THRESHOLD)
+		SStream_concat(O, "0x%x", Value);
+	else
+		SStream_concat(O, "%u", Value);
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printS8ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	int8_t Value = (int8_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isInt<8>(Value) && "Invalid s8imm argument");
+
+	if (Value >= 0) {
+		if (Value > HEX_THRESHOLD)
+			SStream_concat(O, "0x%x", Value);
+		else
+			SStream_concat(O, "%u", Value);
+	} else {
+		if (Value < -HEX_THRESHOLD)
+			SStream_concat(O, "-0x%x", -Value);
+		else
+			SStream_concat(O, "-%u", -Value);
+	}
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printU8ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	uint8_t Value = (uint8_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isUInt<8>(Value) && "Invalid u8imm argument");
+
+	if (Value > HEX_THRESHOLD)
+		SStream_concat(O, "0x%x", Value);
+	else
+		SStream_concat(O, "%u", Value);
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printS16ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	int16_t Value = (int16_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isInt<16>(Value) && "Invalid s16imm argument");
+
+	if (Value >= 0) {
+		if (Value > HEX_THRESHOLD)
+			SStream_concat(O, "0x%x", Value);
+		else
+			SStream_concat(O, "%u", Value);
+	} else {
+		if (Value < -HEX_THRESHOLD)
+			SStream_concat(O, "-0x%x", -Value);
+		else
+			SStream_concat(O, "-%u", -Value);
+	}
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printU16ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	uint16_t Value = (uint16_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isUInt<16>(Value) && "Invalid u16imm argument");
+
+	if (Value > HEX_THRESHOLD)
+		SStream_concat(O, "0x%x", Value);
+	else
+		SStream_concat(O, "%u", Value);
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printS32ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	int32_t Value = (int32_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isInt<32>(Value) && "Invalid s32imm argument");
+
+	if (Value >= 0) {
+		if (Value > HEX_THRESHOLD)
+			SStream_concat(O, "0x%x", Value);
+		else
+			SStream_concat(O, "%u", Value);
+	} else {
+		if (Value < -HEX_THRESHOLD)
+			SStream_concat(O, "-0x%x", -Value);
+		else
+			SStream_concat(O, "-%u", -Value);
+	}
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printU32ImmOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	uint32_t Value = (uint32_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(isUInt<32>(Value) && "Invalid u32imm argument");
+
+	if (Value > HEX_THRESHOLD)
+		SStream_concat(O, "0x%x", Value);
+	else
+		SStream_concat(O, "%u", Value);
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printAccessRegOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	int64_t Value = MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(Value < 16 && "Invalid access register number");
+	SStream_concat(O, "%%a%u", (unsigned int)Value);
+
+	if (MI->csh->detail) {
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_ACREG;
+		MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].reg = (unsigned int)Value;
+		MI->flat_insn.sysz.op_count++;
+	}
+}
+
+static void printPCRelOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	MCOperand *MO = MCInst_getOperand(MI, OpNum);
+	int32_t imm;
+
+	if (MCOperand_isImm(MO)) {
+		imm = (int32_t)MCOperand_getImm(MO);
+		if (imm >= 0) {
+			if (imm > HEX_THRESHOLD)
+				SStream_concat(O, "0x%x", imm);
+			else
+				SStream_concat(O, "%u", imm);
+		} else {
+			if (imm < -HEX_THRESHOLD)
+				SStream_concat(O, "-0x%x", -imm);
+			else
+				SStream_concat(O, "-%u", -imm);
+		}
+
+		if (MI->csh->detail) {
+			MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_IMM;
+			MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].imm = (int64_t)imm;
+			MI->flat_insn.sysz.op_count++;
+		}
+	}
+}
+
+static void printOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	_printOperand(MI, MCInst_getOperand(MI, OpNum), O);
+}
+
+static void printBDAddrOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	printAddress(MI, MCOperand_getReg(MCInst_getOperand(MI, OpNum)),
+			MCOperand_getImm(MCInst_getOperand(MI, OpNum + 1)), 0, O);
+}
+
+static void printBDXAddrOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	printAddress(MI, MCOperand_getReg(MCInst_getOperand(MI, OpNum)),
+			MCOperand_getImm(MCInst_getOperand(MI, OpNum + 1)),
+			MCOperand_getReg(MCInst_getOperand(MI, OpNum + 2)), O);
+}
+
+static void printBDLAddrOperand(MCInst *MI, int OpNum, SStream *O)
+{
+	unsigned Base = MCOperand_getReg(MCInst_getOperand(MI, OpNum));
+	uint64_t Disp = (uint64_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum + 1));
+	uint64_t Length = (uint64_t)MCOperand_getImm(MCInst_getOperand(MI, OpNum + 2));
+
+	if (Disp > HEX_THRESHOLD)
+		SStream_concat(O, "0x%"PRIx64, Disp);
+	else
+		SStream_concat(O, "%"PRIu64, Disp);
+
+	if (Length > HEX_THRESHOLD)
+		SStream_concat(O, "(0x%"PRIx64, Length);
+	else
+		SStream_concat(O, "(%"PRIu64, Length);
+
+	if (Base)
+		SStream_concat(O, ", %%%s", getRegisterName(Base));
+	SStream_concat(O, ")");
+
+	MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].type = SYSZ_OP_MEM;
+	MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].mem.base = (uint8_t)SystemZ_map_register(Base);
+	MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].mem.length = Length;
+	MI->flat_insn.sysz.operands[MI->flat_insn.sysz.op_count].mem.disp = (int64_t)Disp;
+	MI->flat_insn.sysz.op_count++;
+}
+
+static void printCond4Operand(MCInst *MI, int OpNum, SStream *O)
+{
+	static const char *const CondNames[] = {
+		"o", "h", "nle", "l", "nhe", "lh", "ne",
+		"e", "nlh", "he", "nl", "le", "nh", "no"
+	};
+
+	uint64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, OpNum));
+	// assert(Imm > 0 && Imm < 15 && "Invalid condition");
+	SStream_concat(O, CondNames[Imm - 1]);
+
+	if (MI->csh->detail)
+		MI->flat_insn.sysz.cc = (sysz_cc)Imm;
+}
+
+#define PRINT_ALIAS_INSTR
+#include "SystemZGenAsmWriter.inc"
+
+void SystemZ_printInst(MCInst *MI, SStream *O, void *Info)
+{
+	printInstruction(MI, O, Info);
+}
diff --git a/arch/SystemZ/SystemZInstPrinter.h b/arch/SystemZ/SystemZInstPrinter.h
new file mode 100644
index 0000000..3a327ff
--- /dev/null
+++ b/arch/SystemZ/SystemZInstPrinter.h
@@ -0,0 +1,15 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SYSZINSTPRINTER_H
+#define CS_SYSZINSTPRINTER_H
+
+#include "../../MCInst.h"
+#include "../../MCRegisterInfo.h"
+#include "../../SStream.h"
+
+void SystemZ_printInst(MCInst *MI, SStream *O, void *Info);
+
+void SystemZ_post_printer(csh ud, cs_insn *insn, char *insn_asm);
+
+#endif
diff --git a/arch/SystemZ/SystemZMCTargetDesc.c b/arch/SystemZ/SystemZMCTargetDesc.c
new file mode 100644
index 0000000..3a35a40
--- /dev/null
+++ b/arch/SystemZ/SystemZMCTargetDesc.c
@@ -0,0 +1,89 @@
+//===-- SystemZMCTargetDesc.cpp - SystemZ target descriptions -------------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include "SystemZMCTargetDesc.h"
+
+#define GET_REGINFO_ENUM
+#include "SystemZGenRegisterInfo.inc"
+
+const unsigned SystemZMC_GR32Regs[16] = {
+	SystemZ_R0L, SystemZ_R1L, SystemZ_R2L, SystemZ_R3L,
+	SystemZ_R4L, SystemZ_R5L, SystemZ_R6L, SystemZ_R7L,
+	SystemZ_R8L, SystemZ_R9L, SystemZ_R10L, SystemZ_R11L,
+	SystemZ_R12L, SystemZ_R13L, SystemZ_R14L, SystemZ_R15L
+};
+
+const unsigned SystemZMC_GRH32Regs[16] = {
+	SystemZ_R0H, SystemZ_R1H, SystemZ_R2H, SystemZ_R3H,
+	SystemZ_R4H, SystemZ_R5H, SystemZ_R6H, SystemZ_R7H,
+	SystemZ_R8H, SystemZ_R9H, SystemZ_R10H, SystemZ_R11H,
+	SystemZ_R12H, SystemZ_R13H, SystemZ_R14H, SystemZ_R15H
+};
+
+const unsigned SystemZMC_GR64Regs[16] = {
+	SystemZ_R0D, SystemZ_R1D, SystemZ_R2D, SystemZ_R3D,
+	SystemZ_R4D, SystemZ_R5D, SystemZ_R6D, SystemZ_R7D,
+	SystemZ_R8D, SystemZ_R9D, SystemZ_R10D, SystemZ_R11D,
+	SystemZ_R12D, SystemZ_R13D, SystemZ_R14D, SystemZ_R15D
+};
+
+const unsigned SystemZMC_GR128Regs[16] = {
+	SystemZ_R0Q, 0, SystemZ_R2Q, 0,
+	SystemZ_R4Q, 0, SystemZ_R6Q, 0,
+	SystemZ_R8Q, 0, SystemZ_R10Q, 0,
+	SystemZ_R12Q, 0, SystemZ_R14Q, 0
+};
+
+const unsigned SystemZMC_FP32Regs[16] = {
+	SystemZ_F0S, SystemZ_F1S, SystemZ_F2S, SystemZ_F3S,
+	SystemZ_F4S, SystemZ_F5S, SystemZ_F6S, SystemZ_F7S,
+	SystemZ_F8S, SystemZ_F9S, SystemZ_F10S, SystemZ_F11S,
+	SystemZ_F12S, SystemZ_F13S, SystemZ_F14S, SystemZ_F15S
+};
+
+const unsigned SystemZMC_FP64Regs[16] = {
+	SystemZ_F0D, SystemZ_F1D, SystemZ_F2D, SystemZ_F3D,
+	SystemZ_F4D, SystemZ_F5D, SystemZ_F6D, SystemZ_F7D,
+	SystemZ_F8D, SystemZ_F9D, SystemZ_F10D, SystemZ_F11D,
+	SystemZ_F12D, SystemZ_F13D, SystemZ_F14D, SystemZ_F15D
+};
+
+const unsigned SystemZMC_FP128Regs[16] = {
+	SystemZ_F0Q, SystemZ_F1Q, 0, 0,
+	SystemZ_F4Q, SystemZ_F5Q, 0, 0,
+	SystemZ_F8Q, SystemZ_F9Q, 0, 0,
+	SystemZ_F12Q, SystemZ_F13Q, 0, 0
+};
+
+unsigned SystemZMC_getFirstReg(unsigned Reg)
+{
+	static unsigned Map[SystemZ_NUM_TARGET_REGS];
+	static int Initialized = 0;
+	unsigned I;
+
+	if (!Initialized) {
+		Initialized = 1;
+		for (I = 0; I < 16; ++I) {
+			Map[SystemZMC_GR32Regs[I]] = I;
+			Map[SystemZMC_GRH32Regs[I]] = I;
+			Map[SystemZMC_GR64Regs[I]] = I;
+			Map[SystemZMC_GR128Regs[I]] = I;
+			Map[SystemZMC_FP32Regs[I]] = I;
+			Map[SystemZMC_FP64Regs[I]] = I;
+			Map[SystemZMC_FP128Regs[I]] = I;
+		}
+	}
+
+	// assert(Reg < SystemZ_NUM_TARGET_REGS);
+	return Map[Reg];
+}
+
diff --git a/arch/SystemZ/SystemZMCTargetDesc.h b/arch/SystemZ/SystemZMCTargetDesc.h
new file mode 100644
index 0000000..bd9e3d5
--- /dev/null
+++ b/arch/SystemZ/SystemZMCTargetDesc.h
@@ -0,0 +1,46 @@
+//===-- SystemZMCTargetDesc.h - SystemZ target descriptions -----*- C++ -*-===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SYSTEMZMCTARGETDESC_H
+#define CS_SYSTEMZMCTARGETDESC_H
+
+// Maps of asm register numbers to LLVM register numbers, with 0 indicating
+// an invalid register.  In principle we could use 32-bit and 64-bit register
+// classes directly, provided that we relegated the GPR allocation order
+// in SystemZRegisterInfo.td to an AltOrder and left the default order
+// as %r0-%r15.  It seems better to provide the same interface for
+// all classes though.
+extern const unsigned SystemZMC_GR32Regs[16];
+extern const unsigned SystemZMC_GRH32Regs[16];
+extern const unsigned SystemZMC_GR64Regs[16];
+extern const unsigned SystemZMC_GR128Regs[16];
+extern const unsigned SystemZMC_FP32Regs[16];
+extern const unsigned SystemZMC_FP64Regs[16];
+extern const unsigned SystemZMC_FP128Regs[16];
+
+// Return the 0-based number of the first architectural register that
+// contains the given LLVM register.   E.g. R1D -> 1.
+unsigned SystemZMC_getFirstReg(unsigned Reg);
+
+// Defines symbolic names for SystemZ registers.
+// This defines a mapping from register name to register number.
+//#define GET_REGINFO_ENUM
+//#include "SystemZGenRegisterInfo.inc"
+
+// Defines symbolic names for the SystemZ instructions.
+//#define GET_INSTRINFO_ENUM
+//#include "SystemZGenInstrInfo.inc"
+
+//#define GET_SUBTARGETINFO_ENUM
+//#include "SystemZGenSubtargetInfo.inc"
+
+#endif
diff --git a/arch/SystemZ/SystemZMapping.c b/arch/SystemZ/SystemZMapping.c
new file mode 100644
index 0000000..c0787c6
--- /dev/null
+++ b/arch/SystemZ/SystemZMapping.c
@@ -0,0 +1,5067 @@
+/* Capstone Unified Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>	// debug
+#include <string.h>
+
+#include "../../include/systemz.h"
+#include "../../utils.h"
+
+#include "SystemZMapping.h"
+
+#define GET_INSTRINFO_ENUM
+#include "SystemZGenInstrInfo.inc"
+
+#ifndef CAPSTONE_DIET
+static name_map reg_name_maps[] = {
+	{ SYSZ_REG_INVALID, NULL },
+
+	{ SYSZ_REG_0, "0"},
+	{ SYSZ_REG_1, "1"},
+	{ SYSZ_REG_2, "2"},
+	{ SYSZ_REG_3, "3"},
+	{ SYSZ_REG_4, "4"},
+	{ SYSZ_REG_5, "5"},
+	{ SYSZ_REG_6, "6"},
+	{ SYSZ_REG_7, "7"},
+	{ SYSZ_REG_8, "8"},
+	{ SYSZ_REG_9, "9"},
+	{ SYSZ_REG_10, "10"},
+	{ SYSZ_REG_11, "11"},
+	{ SYSZ_REG_12, "12"},
+	{ SYSZ_REG_13, "13"},
+	{ SYSZ_REG_14, "14"},
+	{ SYSZ_REG_15, "15"},
+	{ SYSZ_REG_CC, "cc"},
+	{ SYSZ_REG_F0, "f0"},
+	{ SYSZ_REG_F1, "f1"},
+	{ SYSZ_REG_F2, "f2"},
+	{ SYSZ_REG_F3, "f3"},
+	{ SYSZ_REG_F4, "f4"},
+	{ SYSZ_REG_F5, "f5"},
+	{ SYSZ_REG_F6, "f6"},
+	{ SYSZ_REG_F7, "f7"},
+	{ SYSZ_REG_F8, "f8"},
+	{ SYSZ_REG_F9, "f9"},
+	{ SYSZ_REG_F10, "f10"},
+	{ SYSZ_REG_F11, "f11"},
+	{ SYSZ_REG_F12, "f12"},
+	{ SYSZ_REG_F13, "f13"},
+	{ SYSZ_REG_F14, "f14"},
+	{ SYSZ_REG_F15, "f15"},
+};
+#endif
+
+const char *SystemZ_reg_name(csh handle, unsigned int reg)
+{
+#ifndef CAPSTONE_DIET
+	if (reg >= SYSZ_REG_MAX)
+		return NULL;
+
+	return reg_name_maps[reg].name;
+#else
+	return NULL;
+#endif
+}
+
+static insn_map insns[] = {
+	// dummy item
+	{
+		0, 0,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+
+	{
+		SystemZ_A, SYSZ_INS_A,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ADB, SYSZ_INS_ADB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ADBR, SYSZ_INS_ADBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AEB, SYSZ_INS_AEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AEBR, SYSZ_INS_AEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AFI, SYSZ_INS_AFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AG, SYSZ_INS_AG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGF, SYSZ_INS_AGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGFI, SYSZ_INS_AGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGFR, SYSZ_INS_AGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGHI, SYSZ_INS_AGHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGHIK, SYSZ_INS_AGHIK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGR, SYSZ_INS_AGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGRK, SYSZ_INS_AGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AGSI, SYSZ_INS_AGSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AH, SYSZ_INS_AH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AHI, SYSZ_INS_AHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AHIK, SYSZ_INS_AHIK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AHY, SYSZ_INS_AHY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AIH, SYSZ_INS_AIH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AL, SYSZ_INS_AL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALC, SYSZ_INS_ALC,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALCG, SYSZ_INS_ALCG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALCGR, SYSZ_INS_ALCGR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALCR, SYSZ_INS_ALCR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALFI, SYSZ_INS_ALFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALG, SYSZ_INS_ALG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALGF, SYSZ_INS_ALGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALGFI, SYSZ_INS_ALGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALGFR, SYSZ_INS_ALGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALGHSIK, SYSZ_INS_ALGHSIK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALGR, SYSZ_INS_ALGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALGRK, SYSZ_INS_ALGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALHSIK, SYSZ_INS_ALHSIK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALR, SYSZ_INS_ALR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALRK, SYSZ_INS_ALRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ALY, SYSZ_INS_ALY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AR, SYSZ_INS_AR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ARK, SYSZ_INS_ARK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ASI, SYSZ_INS_ASI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AXBR, SYSZ_INS_AXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AY, SYSZ_INS_AY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmBCR, SYSZ_INS_BCR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmBRC, SYSZ_INS_BRC,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmBRCL, SYSZ_INS_BRCL,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCGIJ, SYSZ_INS_CGIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCGRJ, SYSZ_INS_CGRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCIJ, SYSZ_INS_CIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCLGIJ, SYSZ_INS_CLGIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCLGRJ, SYSZ_INS_CLGRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCLIJ, SYSZ_INS_CLIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCLRJ, SYSZ_INS_CLRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmCRJ, SYSZ_INS_CRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_AsmEBR, SYSZ_INS_BER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmEJ, SYSZ_INS_JE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmEJG, SYSZ_INS_JGE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmELOC, SYSZ_INS_LOCE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmELOCG, SYSZ_INS_LOCGE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmELOCGR, SYSZ_INS_LOCGRE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmELOCR, SYSZ_INS_LOCRE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmESTOC, SYSZ_INS_STOCE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmESTOCG, SYSZ_INS_STOCGE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHBR, SYSZ_INS_BHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHEBR, SYSZ_INS_BHER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHEJ, SYSZ_INS_JHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHEJG, SYSZ_INS_JGHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHELOC, SYSZ_INS_LOCHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHELOCG, SYSZ_INS_LOCGHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHELOCGR, SYSZ_INS_LOCGRHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHELOCR, SYSZ_INS_LOCRHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHESTOC, SYSZ_INS_STOCHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHESTOCG, SYSZ_INS_STOCGHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHJ, SYSZ_INS_JH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHJG, SYSZ_INS_JGH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHLOC, SYSZ_INS_LOCH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHLOCG, SYSZ_INS_LOCGH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHLOCGR, SYSZ_INS_LOCGRH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHLOCR, SYSZ_INS_LOCRH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHSTOC, SYSZ_INS_STOCH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmHSTOCG, SYSZ_INS_STOCGH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCGI, SYSZ_INS_CGIJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCGR, SYSZ_INS_CGRJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCI, SYSZ_INS_CIJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCLGI, SYSZ_INS_CLGIJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCLGR, SYSZ_INS_CLGRJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCLI, SYSZ_INS_CLIJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCLR, SYSZ_INS_CLRJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJEAltCR, SYSZ_INS_CRJNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECGI, SYSZ_INS_CGIJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECGR, SYSZ_INS_CGRJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECI, SYSZ_INS_CIJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECLGI, SYSZ_INS_CLGIJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECLGR, SYSZ_INS_CLGRJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECLI, SYSZ_INS_CLIJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECLR, SYSZ_INS_CLRJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJECR, SYSZ_INS_CRJE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCGI, SYSZ_INS_CGIJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCGR, SYSZ_INS_CGRJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCI, SYSZ_INS_CIJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCLGI, SYSZ_INS_CLGIJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCLGR, SYSZ_INS_CLGRJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCLI, SYSZ_INS_CLIJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCLR, SYSZ_INS_CLRJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHAltCR, SYSZ_INS_CRJNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCGI, SYSZ_INS_CGIJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCGR, SYSZ_INS_CGRJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCI, SYSZ_INS_CIJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCLGI, SYSZ_INS_CLGIJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCLGR, SYSZ_INS_CLGRJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCLI, SYSZ_INS_CLIJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCLR, SYSZ_INS_CLRJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHCR, SYSZ_INS_CRJH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCGI, SYSZ_INS_CGIJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCGR, SYSZ_INS_CGRJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCI, SYSZ_INS_CIJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCLGI, SYSZ_INS_CLGIJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCLGR, SYSZ_INS_CLGRJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCLI, SYSZ_INS_CLIJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCLR, SYSZ_INS_CLRJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHEAltCR, SYSZ_INS_CRJNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECGI, SYSZ_INS_CGIJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECGR, SYSZ_INS_CGRJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECI, SYSZ_INS_CIJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECLGI, SYSZ_INS_CLGIJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECLGR, SYSZ_INS_CLGRJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECLI, SYSZ_INS_CLIJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECLR, SYSZ_INS_CLRJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJHECR, SYSZ_INS_CRJHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCGI, SYSZ_INS_CGIJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCGR, SYSZ_INS_CGRJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCI, SYSZ_INS_CIJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCLGI, SYSZ_INS_CLGIJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCLGR, SYSZ_INS_CLGRJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCLI, SYSZ_INS_CLIJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCLR, SYSZ_INS_CLRJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLAltCR, SYSZ_INS_CRJNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCGI, SYSZ_INS_CGIJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCGR, SYSZ_INS_CGRJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCI, SYSZ_INS_CIJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCLGI, SYSZ_INS_CLGIJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCLGR, SYSZ_INS_CLGRJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCLI, SYSZ_INS_CLIJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCLR, SYSZ_INS_CLRJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLCR, SYSZ_INS_CRJL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCGI, SYSZ_INS_CGIJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCGR, SYSZ_INS_CGRJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCI, SYSZ_INS_CIJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCLGI, SYSZ_INS_CLGIJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCLGR, SYSZ_INS_CLGRJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCLI, SYSZ_INS_CLIJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCLR, SYSZ_INS_CLRJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLEAltCR, SYSZ_INS_CRJNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECGI, SYSZ_INS_CGIJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECGR, SYSZ_INS_CGRJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECI, SYSZ_INS_CIJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECLGI, SYSZ_INS_CLGIJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECLGR, SYSZ_INS_CLGRJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECLI, SYSZ_INS_CLIJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECLR, SYSZ_INS_CLRJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLECR, SYSZ_INS_CRJLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCGI, SYSZ_INS_CGIJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCGR, SYSZ_INS_CGRJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCI, SYSZ_INS_CIJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCLGI, SYSZ_INS_CLGIJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCLGR, SYSZ_INS_CLGRJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCLI, SYSZ_INS_CLIJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCLR, SYSZ_INS_CLRJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHAltCR, SYSZ_INS_CRJNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCGI, SYSZ_INS_CGIJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCGR, SYSZ_INS_CGRJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCI, SYSZ_INS_CIJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCLGI, SYSZ_INS_CLGIJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCLGR, SYSZ_INS_CLGRJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCLI, SYSZ_INS_CLIJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCLR, SYSZ_INS_CLRJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmJLHCR, SYSZ_INS_CRJLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLBR, SYSZ_INS_BLR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLEBR, SYSZ_INS_BLER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLEJ, SYSZ_INS_JLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLEJG, SYSZ_INS_JGLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLELOC, SYSZ_INS_LOCLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLELOCG, SYSZ_INS_LOCGLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLELOCGR, SYSZ_INS_LOCGRLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLELOCR, SYSZ_INS_LOCRLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLESTOC, SYSZ_INS_STOCLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLESTOCG, SYSZ_INS_STOCGLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHBR, SYSZ_INS_BLHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHJ, SYSZ_INS_JLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHJG, SYSZ_INS_JGLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHLOC, SYSZ_INS_LOCLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHLOCG, SYSZ_INS_LOCGLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHLOCGR, SYSZ_INS_LOCGRLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHLOCR, SYSZ_INS_LOCRLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHSTOC, SYSZ_INS_STOCLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLHSTOCG, SYSZ_INS_STOCGLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLJ, SYSZ_INS_JL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLJG, SYSZ_INS_JGL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLLOC, SYSZ_INS_LOCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLLOCG, SYSZ_INS_LOCGL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLLOCGR, SYSZ_INS_LOCGRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLLOCR, SYSZ_INS_LOCRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLOC, SYSZ_INS_LOC,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLOCG, SYSZ_INS_LOCG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLOCGR, SYSZ_INS_LOCGR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLOCR, SYSZ_INS_LOCR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLSTOC, SYSZ_INS_STOCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmLSTOCG, SYSZ_INS_STOCGL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNEBR, SYSZ_INS_BNER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNEJ, SYSZ_INS_JNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNEJG, SYSZ_INS_JGNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNELOC, SYSZ_INS_LOCNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNELOCG, SYSZ_INS_LOCGNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNELOCGR, SYSZ_INS_LOCGRNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNELOCR, SYSZ_INS_LOCRNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNESTOC, SYSZ_INS_STOCNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNESTOCG, SYSZ_INS_STOCGNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHBR, SYSZ_INS_BNHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHEBR, SYSZ_INS_BNHER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHEJ, SYSZ_INS_JNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHEJG, SYSZ_INS_JGNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHELOC, SYSZ_INS_LOCNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHELOCG, SYSZ_INS_LOCGNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHELOCGR, SYSZ_INS_LOCGRNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHELOCR, SYSZ_INS_LOCRNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHESTOC, SYSZ_INS_STOCNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHESTOCG, SYSZ_INS_STOCGNHE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHJ, SYSZ_INS_JNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHJG, SYSZ_INS_JGNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHLOC, SYSZ_INS_LOCNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHLOCG, SYSZ_INS_LOCGNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHLOCGR, SYSZ_INS_LOCGRNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHLOCR, SYSZ_INS_LOCRNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHSTOC, SYSZ_INS_STOCNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNHSTOCG, SYSZ_INS_STOCGNH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLBR, SYSZ_INS_BNLR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLEBR, SYSZ_INS_BNLER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLEJ, SYSZ_INS_JNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLEJG, SYSZ_INS_JGNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLELOC, SYSZ_INS_LOCNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLELOCG, SYSZ_INS_LOCGNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLELOCGR, SYSZ_INS_LOCGRNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLELOCR, SYSZ_INS_LOCRNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLESTOC, SYSZ_INS_STOCNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLESTOCG, SYSZ_INS_STOCGNLE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHBR, SYSZ_INS_BNLHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHJ, SYSZ_INS_JNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHJG, SYSZ_INS_JGNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHLOC, SYSZ_INS_LOCNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHLOCG, SYSZ_INS_LOCGNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHLOCGR, SYSZ_INS_LOCGRNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHLOCR, SYSZ_INS_LOCRNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHSTOC, SYSZ_INS_STOCNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLHSTOCG, SYSZ_INS_STOCGNLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLJ, SYSZ_INS_JNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLJG, SYSZ_INS_JGNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLLOC, SYSZ_INS_LOCNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLLOCG, SYSZ_INS_LOCGNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLLOCGR, SYSZ_INS_LOCGRNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLLOCR, SYSZ_INS_LOCRNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLSTOC, SYSZ_INS_STOCNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNLSTOCG, SYSZ_INS_STOCGNL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOBR, SYSZ_INS_BNOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOJ, SYSZ_INS_JNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOJG, SYSZ_INS_JGNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOLOC, SYSZ_INS_LOCNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOLOCG, SYSZ_INS_LOCGNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOLOCGR, SYSZ_INS_LOCGRNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOLOCR, SYSZ_INS_LOCRNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOSTOC, SYSZ_INS_STOCNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmNOSTOCG, SYSZ_INS_STOCGNO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOBR, SYSZ_INS_BOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOJ, SYSZ_INS_JO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOJG, SYSZ_INS_JGO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOLOC, SYSZ_INS_LOCO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOLOCG, SYSZ_INS_LOCGO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOLOCGR, SYSZ_INS_LOCGRO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOLOCR, SYSZ_INS_LOCRO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOSTOC, SYSZ_INS_STOCO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmOSTOCG, SYSZ_INS_STOCGO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmSTOC, SYSZ_INS_STOC,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_AsmSTOCG, SYSZ_INS_STOCG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_BASR, SYSZ_INS_BASR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_BR, SYSZ_INS_BR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		SystemZ_BRAS, SYSZ_INS_BRAS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_BRASL, SYSZ_INS_BRASL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_BRC, SYSZ_INS_J,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_BRCL, SYSZ_INS_JG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_BRCT, SYSZ_INS_BRCT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_BRCTG, SYSZ_INS_BRCTG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_C, SYSZ_INS_C,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CDB, SYSZ_INS_CDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CDBR, SYSZ_INS_CDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CDFBR, SYSZ_INS_CDFBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CDGBR, SYSZ_INS_CDGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CDLFBR, SYSZ_INS_CDLFBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CDLGBR, SYSZ_INS_CDLGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CEB, SYSZ_INS_CEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CEBR, SYSZ_INS_CEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CEFBR, SYSZ_INS_CEFBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CEGBR, SYSZ_INS_CEGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CELFBR, SYSZ_INS_CELFBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CELGBR, SYSZ_INS_CELGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CFDBR, SYSZ_INS_CFDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CFEBR, SYSZ_INS_CFEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CFI, SYSZ_INS_CFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CFXBR, SYSZ_INS_CFXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CG, SYSZ_INS_CG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGDBR, SYSZ_INS_CGDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGEBR, SYSZ_INS_CGEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGF, SYSZ_INS_CGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGFI, SYSZ_INS_CGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGFR, SYSZ_INS_CGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGFRL, SYSZ_INS_CGFRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGH, SYSZ_INS_CGH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGHI, SYSZ_INS_CGHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGHRL, SYSZ_INS_CGHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGHSI, SYSZ_INS_CGHSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGIJ, SYSZ_INS_CGIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CGR, SYSZ_INS_CGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGRJ, SYSZ_INS_CGRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CGRL, SYSZ_INS_CGRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CGXBR, SYSZ_INS_CGXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CH, SYSZ_INS_CH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CHF, SYSZ_INS_CHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CHHSI, SYSZ_INS_CHHSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CHI, SYSZ_INS_CHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CHRL, SYSZ_INS_CHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CHSI, SYSZ_INS_CHSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CHY, SYSZ_INS_CHY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CIH, SYSZ_INS_CIH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CIJ, SYSZ_INS_CIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CL, SYSZ_INS_CL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLC, SYSZ_INS_CLC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLFDBR, SYSZ_INS_CLFDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLFEBR, SYSZ_INS_CLFEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLFHSI, SYSZ_INS_CLFHSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLFI, SYSZ_INS_CLFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLFXBR, SYSZ_INS_CLFXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLG, SYSZ_INS_CLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGDBR, SYSZ_INS_CLGDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGEBR, SYSZ_INS_CLGEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGF, SYSZ_INS_CLGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGFI, SYSZ_INS_CLGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGFR, SYSZ_INS_CLGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGFRL, SYSZ_INS_CLGFRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGHRL, SYSZ_INS_CLGHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGHSI, SYSZ_INS_CLGHSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGIJ, SYSZ_INS_CLGIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CLGR, SYSZ_INS_CLGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGRJ, SYSZ_INS_CLGRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CLGRL, SYSZ_INS_CLGRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLGXBR, SYSZ_INS_CLGXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLHF, SYSZ_INS_CLHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLHHSI, SYSZ_INS_CLHHSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLHRL, SYSZ_INS_CLHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLI, SYSZ_INS_CLI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLIH, SYSZ_INS_CLIH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLIJ, SYSZ_INS_CLIJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CLIY, SYSZ_INS_CLIY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLR, SYSZ_INS_CLR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLRJ, SYSZ_INS_CLRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CLRL, SYSZ_INS_CLRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLST, SYSZ_INS_CLST,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_R0L, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CLY, SYSZ_INS_CLY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CPSDRdd, SYSZ_INS_CPSDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CPSDRds, SYSZ_INS_CPSDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CPSDRsd, SYSZ_INS_CPSDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CPSDRss, SYSZ_INS_CPSDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CR, SYSZ_INS_CR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CRJ, SYSZ_INS_CRJ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_CRL, SYSZ_INS_CRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CS, SYSZ_INS_CS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CSG, SYSZ_INS_CSG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CSY, SYSZ_INS_CSY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CXBR, SYSZ_INS_CXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CXFBR, SYSZ_INS_CXFBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CXGBR, SYSZ_INS_CXGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CXLFBR, SYSZ_INS_CXLFBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CXLGBR, SYSZ_INS_CXLGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_CY, SYSZ_INS_CY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DDB, SYSZ_INS_DDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DDBR, SYSZ_INS_DDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DEB, SYSZ_INS_DEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DEBR, SYSZ_INS_DEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DL, SYSZ_INS_DL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DLG, SYSZ_INS_DLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DLGR, SYSZ_INS_DLGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DLR, SYSZ_INS_DLR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DSG, SYSZ_INS_DSG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DSGF, SYSZ_INS_DSGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DSGFR, SYSZ_INS_DSGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DSGR, SYSZ_INS_DSGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_DXBR, SYSZ_INS_DXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_EAR, SYSZ_INS_EAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FIDBR, SYSZ_INS_FIDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FIDBRA, SYSZ_INS_FIDBRA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FIEBR, SYSZ_INS_FIEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FIEBRA, SYSZ_INS_FIEBRA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FIXBR, SYSZ_INS_FIXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FIXBRA, SYSZ_INS_FIXBRA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREFPEXTENSION, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_FLOGR, SYSZ_INS_FLOGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IC, SYSZ_INS_IC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IC32, SYSZ_INS_IC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IC32Y, SYSZ_INS_ICY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ICY, SYSZ_INS_ICY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IIHF, SYSZ_INS_IIHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IIHH, SYSZ_INS_IIHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IIHL, SYSZ_INS_IIHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IILF, SYSZ_INS_IILF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IILH, SYSZ_INS_IILH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IILL, SYSZ_INS_IILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_IPM, SYSZ_INS_IPM,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_J, SYSZ_INS_J,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_JG, SYSZ_INS_JG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		SystemZ_L, SYSZ_INS_L,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LA, SYSZ_INS_LA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAA, SYSZ_INS_LAA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAAG, SYSZ_INS_LAAG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAAL, SYSZ_INS_LAAL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAALG, SYSZ_INS_LAALG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAN, SYSZ_INS_LAN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LANG, SYSZ_INS_LANG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAO, SYSZ_INS_LAO,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAOG, SYSZ_INS_LAOG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LARL, SYSZ_INS_LARL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAX, SYSZ_INS_LAX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAXG, SYSZ_INS_LAXG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREINTERLOCKEDACCESS1, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LAY, SYSZ_INS_LAY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LB, SYSZ_INS_LB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LBH, SYSZ_INS_LBH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LBR, SYSZ_INS_LBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LCDBR, SYSZ_INS_LCDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LCEBR, SYSZ_INS_LCEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LCGFR, SYSZ_INS_LCGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LCGR, SYSZ_INS_LCGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LCR, SYSZ_INS_LCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LCXBR, SYSZ_INS_LCXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LD, SYSZ_INS_LD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LDEB, SYSZ_INS_LDEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LDEBR, SYSZ_INS_LDEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LDGR, SYSZ_INS_LDGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LDR, SYSZ_INS_LDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LDXBR, SYSZ_INS_LDXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LDY, SYSZ_INS_LDY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LE, SYSZ_INS_LE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LEDBR, SYSZ_INS_LEDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LER, SYSZ_INS_LER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LEXBR, SYSZ_INS_LEXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LEY, SYSZ_INS_LEY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LFH, SYSZ_INS_LFH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LG, SYSZ_INS_LG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGB, SYSZ_INS_LGB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGBR, SYSZ_INS_LGBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGDR, SYSZ_INS_LGDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGF, SYSZ_INS_LGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGFI, SYSZ_INS_LGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGFR, SYSZ_INS_LGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGFRL, SYSZ_INS_LGFRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGH, SYSZ_INS_LGH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGHI, SYSZ_INS_LGHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGHR, SYSZ_INS_LGHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGHRL, SYSZ_INS_LGHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGR, SYSZ_INS_LGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LGRL, SYSZ_INS_LGRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LH, SYSZ_INS_LH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LHH, SYSZ_INS_LHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LHI, SYSZ_INS_LHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LHR, SYSZ_INS_LHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LHRL, SYSZ_INS_LHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LHY, SYSZ_INS_LHY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLC, SYSZ_INS_LLC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLCH, SYSZ_INS_LLCH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLCR, SYSZ_INS_LLCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGC, SYSZ_INS_LLGC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGCR, SYSZ_INS_LLGCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGF, SYSZ_INS_LLGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGFR, SYSZ_INS_LLGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGFRL, SYSZ_INS_LLGFRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGH, SYSZ_INS_LLGH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGHR, SYSZ_INS_LLGHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLGHRL, SYSZ_INS_LLGHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLH, SYSZ_INS_LLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLHH, SYSZ_INS_LLHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLHR, SYSZ_INS_LLHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLHRL, SYSZ_INS_LLHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLIHF, SYSZ_INS_LLIHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLIHH, SYSZ_INS_LLIHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLIHL, SYSZ_INS_LLIHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLILF, SYSZ_INS_LLILF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLILH, SYSZ_INS_LLILH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LLILL, SYSZ_INS_LLILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LMG, SYSZ_INS_LMG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LNDBR, SYSZ_INS_LNDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LNEBR, SYSZ_INS_LNEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LNGFR, SYSZ_INS_LNGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LNGR, SYSZ_INS_LNGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LNR, SYSZ_INS_LNR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LNXBR, SYSZ_INS_LNXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LOC, SYSZ_INS_LOC,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LOCG, SYSZ_INS_LOCG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LOCGR, SYSZ_INS_LOCGR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LOCR, SYSZ_INS_LOCR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LPDBR, SYSZ_INS_LPDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LPEBR, SYSZ_INS_LPEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LPGFR, SYSZ_INS_LPGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LPGR, SYSZ_INS_LPGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LPR, SYSZ_INS_LPR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LPXBR, SYSZ_INS_LPXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LR, SYSZ_INS_LR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LRL, SYSZ_INS_LRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LRV, SYSZ_INS_LRV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LRVG, SYSZ_INS_LRVG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LRVGR, SYSZ_INS_LRVGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LRVR, SYSZ_INS_LRVR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LT, SYSZ_INS_LT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTDBR, SYSZ_INS_LTDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTDBRCompare, SYSZ_INS_LTDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTEBR, SYSZ_INS_LTEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTEBRCompare, SYSZ_INS_LTEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTG, SYSZ_INS_LTG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTGF, SYSZ_INS_LTGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTGFR, SYSZ_INS_LTGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTGR, SYSZ_INS_LTGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTR, SYSZ_INS_LTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTXBR, SYSZ_INS_LTXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LTXBRCompare, SYSZ_INS_LTXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LXDB, SYSZ_INS_LXDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LXDBR, SYSZ_INS_LXDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LXEB, SYSZ_INS_LXEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LXEBR, SYSZ_INS_LXEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LXR, SYSZ_INS_LXR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LY, SYSZ_INS_LY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LZDR, SYSZ_INS_LZDR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LZER, SYSZ_INS_LZER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_LZXR, SYSZ_INS_LZXR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MADB, SYSZ_INS_MADB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MADBR, SYSZ_INS_MADBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MAEB, SYSZ_INS_MAEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MAEBR, SYSZ_INS_MAEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MDB, SYSZ_INS_MDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MDBR, SYSZ_INS_MDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MDEB, SYSZ_INS_MDEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MDEBR, SYSZ_INS_MDEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MEEB, SYSZ_INS_MEEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MEEBR, SYSZ_INS_MEEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MGHI, SYSZ_INS_MGHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MH, SYSZ_INS_MH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MHI, SYSZ_INS_MHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MHY, SYSZ_INS_MHY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MLG, SYSZ_INS_MLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MLGR, SYSZ_INS_MLGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MS, SYSZ_INS_MS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSDB, SYSZ_INS_MSDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSDBR, SYSZ_INS_MSDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSEB, SYSZ_INS_MSEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSEBR, SYSZ_INS_MSEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSFI, SYSZ_INS_MSFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSG, SYSZ_INS_MSG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSGF, SYSZ_INS_MSGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSGFI, SYSZ_INS_MSGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSGFR, SYSZ_INS_MSGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSGR, SYSZ_INS_MSGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSR, SYSZ_INS_MSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MSY, SYSZ_INS_MSY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVC, SYSZ_INS_MVC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVGHI, SYSZ_INS_MVGHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVHHI, SYSZ_INS_MVHHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVHI, SYSZ_INS_MVHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVI, SYSZ_INS_MVI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVIY, SYSZ_INS_MVIY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MVST, SYSZ_INS_MVST,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_R0L, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MXBR, SYSZ_INS_MXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MXDB, SYSZ_INS_MXDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_MXDBR, SYSZ_INS_MXDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_N, SYSZ_INS_N,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NC, SYSZ_INS_NC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NG, SYSZ_INS_NG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NGR, SYSZ_INS_NGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NGRK, SYSZ_INS_NGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NI, SYSZ_INS_NI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NIHF, SYSZ_INS_NIHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NIHH, SYSZ_INS_NIHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NIHL, SYSZ_INS_NIHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NILF, SYSZ_INS_NILF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NILH, SYSZ_INS_NILH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NILL, SYSZ_INS_NILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NIY, SYSZ_INS_NIY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NR, SYSZ_INS_NR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NRK, SYSZ_INS_NRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_NY, SYSZ_INS_NY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_O, SYSZ_INS_O,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OC, SYSZ_INS_OC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OG, SYSZ_INS_OG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OGR, SYSZ_INS_OGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OGRK, SYSZ_INS_OGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OI, SYSZ_INS_OI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OIHF, SYSZ_INS_OIHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OIHH, SYSZ_INS_OIHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OIHL, SYSZ_INS_OIHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OILF, SYSZ_INS_OILF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OILH, SYSZ_INS_OILH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OILL, SYSZ_INS_OILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OIY, SYSZ_INS_OIY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OR, SYSZ_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ORK, SYSZ_INS_ORK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_OY, SYSZ_INS_OY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_PFD, SYSZ_INS_PFD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_PFDRL, SYSZ_INS_PFDRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RISBG, SYSZ_INS_RISBG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RISBG32, SYSZ_INS_RISBG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RISBHG, SYSZ_INS_RISBHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RISBLG, SYSZ_INS_RISBLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RLL, SYSZ_INS_RLL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RLLG, SYSZ_INS_RLLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RNSBG, SYSZ_INS_RNSBG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ROSBG, SYSZ_INS_ROSBG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_RXSBG, SYSZ_INS_RXSBG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_S, SYSZ_INS_S,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SDB, SYSZ_INS_SDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SDBR, SYSZ_INS_SDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SEB, SYSZ_INS_SEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SEBR, SYSZ_INS_SEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SG, SYSZ_INS_SG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SGF, SYSZ_INS_SGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SGFR, SYSZ_INS_SGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SGR, SYSZ_INS_SGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SGRK, SYSZ_INS_SGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SH, SYSZ_INS_SH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SHY, SYSZ_INS_SHY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SL, SYSZ_INS_SL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLB, SYSZ_INS_SLB,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLBG, SYSZ_INS_SLBG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLBR, SYSZ_INS_SLBR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLFI, SYSZ_INS_SLFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLG, SYSZ_INS_SLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLGBR, SYSZ_INS_SLBGR,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLGF, SYSZ_INS_SLGF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLGFI, SYSZ_INS_SLGFI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLGFR, SYSZ_INS_SLGFR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLGR, SYSZ_INS_SLGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLGRK, SYSZ_INS_SLGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLL, SYSZ_INS_SLL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLLG, SYSZ_INS_SLLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLLK, SYSZ_INS_SLLK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLR, SYSZ_INS_SLR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLRK, SYSZ_INS_SLRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SLY, SYSZ_INS_SLY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SQDB, SYSZ_INS_SQDB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SQDBR, SYSZ_INS_SQDBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SQEB, SYSZ_INS_SQEB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SQEBR, SYSZ_INS_SQEBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SQXBR, SYSZ_INS_SQXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SR, SYSZ_INS_SR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRA, SYSZ_INS_SRA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRAG, SYSZ_INS_SRAG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRAK, SYSZ_INS_SRAK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRK, SYSZ_INS_SRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRL, SYSZ_INS_SRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRLG, SYSZ_INS_SRLG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRLK, SYSZ_INS_SRLK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SRST, SYSZ_INS_SRST,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_R0L, 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_ST, SYSZ_INS_ST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STC, SYSZ_INS_STC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STCH, SYSZ_INS_STCH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STCY, SYSZ_INS_STCY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STD, SYSZ_INS_STD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STDY, SYSZ_INS_STDY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STE, SYSZ_INS_STE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STEY, SYSZ_INS_STEY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STFH, SYSZ_INS_STFH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STG, SYSZ_INS_STG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STGRL, SYSZ_INS_STGRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STH, SYSZ_INS_STH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STHH, SYSZ_INS_STHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { SYSZ_GRP_FEATUREHIGHWORD, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STHRL, SYSZ_INS_STHRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STHY, SYSZ_INS_STHY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STMG, SYSZ_INS_STMG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STOC, SYSZ_INS_STOC,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STOCG, SYSZ_INS_STOCG,
+#ifndef CAPSTONE_DIET
+		{ SYSZ_REG_CC, 0 }, { 0 }, { SYSZ_GRP_FEATURELOADSTOREONCOND, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STRL, SYSZ_INS_STRL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STRV, SYSZ_INS_STRV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STRVG, SYSZ_INS_STRVG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_STY, SYSZ_INS_STY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SXBR, SYSZ_INS_SXBR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_SY, SYSZ_INS_SY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_TM, SYSZ_INS_TM,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_TMHH, SYSZ_INS_TMHH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_TMHL, SYSZ_INS_TMHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_TMLH, SYSZ_INS_TMLH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_TMLL, SYSZ_INS_TMLL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_TMY, SYSZ_INS_TMY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_X, SYSZ_INS_X,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XC, SYSZ_INS_XC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XG, SYSZ_INS_XG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XGR, SYSZ_INS_XGR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XGRK, SYSZ_INS_XGRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XI, SYSZ_INS_XI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XIHF, SYSZ_INS_XIHF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XILF, SYSZ_INS_XILF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XIY, SYSZ_INS_XIY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XR, SYSZ_INS_XR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XRK, SYSZ_INS_XRK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { SYSZ_GRP_FEATUREDISTINCTOPS, 0 }, 0, 0
+#endif
+	},
+	{
+		SystemZ_XY, SYSZ_INS_XY,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { SYSZ_REG_CC, 0 }, { 0 }, 0, 0
+#endif
+	},
+};
+
+// given internal insn id, return public instruction info
+void SystemZ_get_insn_id(cs_struct *h, cs_insn *insn, unsigned int id)
+{
+	unsigned short i;
+
+	i = insn_find(insns, ARR_SIZE(insns), id, &h->insn_cache);
+	if (i != 0) {
+		insn->id = insns[i].mapid;
+
+		if (h->detail) {
+#ifndef CAPSTONE_DIET
+			memcpy(insn->detail->regs_read, insns[i].regs_use, sizeof(insns[i].regs_use));
+			insn->detail->regs_read_count = (uint8_t)count_positive(insns[i].regs_use);
+
+			memcpy(insn->detail->regs_write, insns[i].regs_mod, sizeof(insns[i].regs_mod));
+			insn->detail->regs_write_count = (uint8_t)count_positive(insns[i].regs_mod);
+
+			memcpy(insn->detail->groups, insns[i].groups, sizeof(insns[i].groups));
+			insn->detail->groups_count = (uint8_t)count_positive(insns[i].groups);
+
+			if (insns[i].branch || insns[i].indirect_branch) {
+				// this insn also belongs to JUMP group. add JUMP group
+				insn->detail->groups[insn->detail->groups_count] = SYSZ_GRP_JUMP;
+				insn->detail->groups_count++;
+			}
+#endif
+		}
+	}
+}
+
+#ifndef CAPSTONE_DIET
+static name_map insn_name_maps[] = {
+	{ SYSZ_INS_INVALID, NULL },
+
+	{ SYSZ_INS_A, "a" },
+	{ SYSZ_INS_ADB, "adb" },
+	{ SYSZ_INS_ADBR, "adbr" },
+	{ SYSZ_INS_AEB, "aeb" },
+	{ SYSZ_INS_AEBR, "aebr" },
+	{ SYSZ_INS_AFI, "afi" },
+	{ SYSZ_INS_AG, "ag" },
+	{ SYSZ_INS_AGF, "agf" },
+	{ SYSZ_INS_AGFI, "agfi" },
+	{ SYSZ_INS_AGFR, "agfr" },
+	{ SYSZ_INS_AGHI, "aghi" },
+	{ SYSZ_INS_AGHIK, "aghik" },
+	{ SYSZ_INS_AGR, "agr" },
+	{ SYSZ_INS_AGRK, "agrk" },
+	{ SYSZ_INS_AGSI, "agsi" },
+	{ SYSZ_INS_AH, "ah" },
+	{ SYSZ_INS_AHI, "ahi" },
+	{ SYSZ_INS_AHIK, "ahik" },
+	{ SYSZ_INS_AHY, "ahy" },
+	{ SYSZ_INS_AIH, "aih" },
+	{ SYSZ_INS_AL, "al" },
+	{ SYSZ_INS_ALC, "alc" },
+	{ SYSZ_INS_ALCG, "alcg" },
+	{ SYSZ_INS_ALCGR, "alcgr" },
+	{ SYSZ_INS_ALCR, "alcr" },
+	{ SYSZ_INS_ALFI, "alfi" },
+	{ SYSZ_INS_ALG, "alg" },
+	{ SYSZ_INS_ALGF, "algf" },
+	{ SYSZ_INS_ALGFI, "algfi" },
+	{ SYSZ_INS_ALGFR, "algfr" },
+	{ SYSZ_INS_ALGHSIK, "alghsik" },
+	{ SYSZ_INS_ALGR, "algr" },
+	{ SYSZ_INS_ALGRK, "algrk" },
+	{ SYSZ_INS_ALHSIK, "alhsik" },
+	{ SYSZ_INS_ALR, "alr" },
+	{ SYSZ_INS_ALRK, "alrk" },
+	{ SYSZ_INS_ALY, "aly" },
+	{ SYSZ_INS_AR, "ar" },
+	{ SYSZ_INS_ARK, "ark" },
+	{ SYSZ_INS_ASI, "asi" },
+	{ SYSZ_INS_AXBR, "axbr" },
+	{ SYSZ_INS_AY, "ay" },
+	{ SYSZ_INS_BCR, "bcr" },
+	{ SYSZ_INS_BRC, "brc" },
+	{ SYSZ_INS_BRCL, "brcl" },
+	{ SYSZ_INS_CGIJ, "cgij" },
+	{ SYSZ_INS_CGRJ, "cgrj" },
+	{ SYSZ_INS_CIJ, "cij" },
+	{ SYSZ_INS_CLGIJ, "clgij" },
+	{ SYSZ_INS_CLGRJ, "clgrj" },
+	{ SYSZ_INS_CLIJ, "clij" },
+	{ SYSZ_INS_CLRJ, "clrj" },
+	{ SYSZ_INS_CRJ, "crj" },
+	{ SYSZ_INS_BER, "ber" },
+	{ SYSZ_INS_JE, "je" },
+	{ SYSZ_INS_JGE, "jge" },
+	{ SYSZ_INS_LOCE, "loce" },
+	{ SYSZ_INS_LOCGE, "locge" },
+	{ SYSZ_INS_LOCGRE, "locgre" },
+	{ SYSZ_INS_LOCRE, "locre" },
+	{ SYSZ_INS_STOCE, "stoce" },
+	{ SYSZ_INS_STOCGE, "stocge" },
+	{ SYSZ_INS_BHR, "bhr" },
+	{ SYSZ_INS_BHER, "bher" },
+	{ SYSZ_INS_JHE, "jhe" },
+	{ SYSZ_INS_JGHE, "jghe" },
+	{ SYSZ_INS_LOCHE, "loche" },
+	{ SYSZ_INS_LOCGHE, "locghe" },
+	{ SYSZ_INS_LOCGRHE, "locgrhe" },
+	{ SYSZ_INS_LOCRHE, "locrhe" },
+	{ SYSZ_INS_STOCHE, "stoche" },
+	{ SYSZ_INS_STOCGHE, "stocghe" },
+	{ SYSZ_INS_JH, "jh" },
+	{ SYSZ_INS_JGH, "jgh" },
+	{ SYSZ_INS_LOCH, "loch" },
+	{ SYSZ_INS_LOCGH, "locgh" },
+	{ SYSZ_INS_LOCGRH, "locgrh" },
+	{ SYSZ_INS_LOCRH, "locrh" },
+	{ SYSZ_INS_STOCH, "stoch" },
+	{ SYSZ_INS_STOCGH, "stocgh" },
+	{ SYSZ_INS_CGIJNLH, "cgijnlh" },
+	{ SYSZ_INS_CGRJNLH, "cgrjnlh" },
+	{ SYSZ_INS_CIJNLH, "cijnlh" },
+	{ SYSZ_INS_CLGIJNLH, "clgijnlh" },
+	{ SYSZ_INS_CLGRJNLH, "clgrjnlh" },
+	{ SYSZ_INS_CLIJNLH, "clijnlh" },
+	{ SYSZ_INS_CLRJNLH, "clrjnlh" },
+	{ SYSZ_INS_CRJNLH, "crjnlh" },
+	{ SYSZ_INS_CGIJE, "cgije" },
+	{ SYSZ_INS_CGRJE, "cgrje" },
+	{ SYSZ_INS_CIJE, "cije" },
+	{ SYSZ_INS_CLGIJE, "clgije" },
+	{ SYSZ_INS_CLGRJE, "clgrje" },
+	{ SYSZ_INS_CLIJE, "clije" },
+	{ SYSZ_INS_CLRJE, "clrje" },
+	{ SYSZ_INS_CRJE, "crje" },
+	{ SYSZ_INS_CGIJNLE, "cgijnle" },
+	{ SYSZ_INS_CGRJNLE, "cgrjnle" },
+	{ SYSZ_INS_CIJNLE, "cijnle" },
+	{ SYSZ_INS_CLGIJNLE, "clgijnle" },
+	{ SYSZ_INS_CLGRJNLE, "clgrjnle" },
+	{ SYSZ_INS_CLIJNLE, "clijnle" },
+	{ SYSZ_INS_CLRJNLE, "clrjnle" },
+	{ SYSZ_INS_CRJNLE, "crjnle" },
+	{ SYSZ_INS_CGIJH, "cgijh" },
+	{ SYSZ_INS_CGRJH, "cgrjh" },
+	{ SYSZ_INS_CIJH, "cijh" },
+	{ SYSZ_INS_CLGIJH, "clgijh" },
+	{ SYSZ_INS_CLGRJH, "clgrjh" },
+	{ SYSZ_INS_CLIJH, "clijh" },
+	{ SYSZ_INS_CLRJH, "clrjh" },
+	{ SYSZ_INS_CRJH, "crjh" },
+	{ SYSZ_INS_CGIJNL, "cgijnl" },
+	{ SYSZ_INS_CGRJNL, "cgrjnl" },
+	{ SYSZ_INS_CIJNL, "cijnl" },
+	{ SYSZ_INS_CLGIJNL, "clgijnl" },
+	{ SYSZ_INS_CLGRJNL, "clgrjnl" },
+	{ SYSZ_INS_CLIJNL, "clijnl" },
+	{ SYSZ_INS_CLRJNL, "clrjnl" },
+	{ SYSZ_INS_CRJNL, "crjnl" },
+	{ SYSZ_INS_CGIJHE, "cgijhe" },
+	{ SYSZ_INS_CGRJHE, "cgrjhe" },
+	{ SYSZ_INS_CIJHE, "cijhe" },
+	{ SYSZ_INS_CLGIJHE, "clgijhe" },
+	{ SYSZ_INS_CLGRJHE, "clgrjhe" },
+	{ SYSZ_INS_CLIJHE, "clijhe" },
+	{ SYSZ_INS_CLRJHE, "clrjhe" },
+	{ SYSZ_INS_CRJHE, "crjhe" },
+	{ SYSZ_INS_CGIJNHE, "cgijnhe" },
+	{ SYSZ_INS_CGRJNHE, "cgrjnhe" },
+	{ SYSZ_INS_CIJNHE, "cijnhe" },
+	{ SYSZ_INS_CLGIJNHE, "clgijnhe" },
+	{ SYSZ_INS_CLGRJNHE, "clgrjnhe" },
+	{ SYSZ_INS_CLIJNHE, "clijnhe" },
+	{ SYSZ_INS_CLRJNHE, "clrjnhe" },
+	{ SYSZ_INS_CRJNHE, "crjnhe" },
+	{ SYSZ_INS_CGIJL, "cgijl" },
+	{ SYSZ_INS_CGRJL, "cgrjl" },
+	{ SYSZ_INS_CIJL, "cijl" },
+	{ SYSZ_INS_CLGIJL, "clgijl" },
+	{ SYSZ_INS_CLGRJL, "clgrjl" },
+	{ SYSZ_INS_CLIJL, "clijl" },
+	{ SYSZ_INS_CLRJL, "clrjl" },
+	{ SYSZ_INS_CRJL, "crjl" },
+	{ SYSZ_INS_CGIJNH, "cgijnh" },
+	{ SYSZ_INS_CGRJNH, "cgrjnh" },
+	{ SYSZ_INS_CIJNH, "cijnh" },
+	{ SYSZ_INS_CLGIJNH, "clgijnh" },
+	{ SYSZ_INS_CLGRJNH, "clgrjnh" },
+	{ SYSZ_INS_CLIJNH, "clijnh" },
+	{ SYSZ_INS_CLRJNH, "clrjnh" },
+	{ SYSZ_INS_CRJNH, "crjnh" },
+	{ SYSZ_INS_CGIJLE, "cgijle" },
+	{ SYSZ_INS_CGRJLE, "cgrjle" },
+	{ SYSZ_INS_CIJLE, "cijle" },
+	{ SYSZ_INS_CLGIJLE, "clgijle" },
+	{ SYSZ_INS_CLGRJLE, "clgrjle" },
+	{ SYSZ_INS_CLIJLE, "clijle" },
+	{ SYSZ_INS_CLRJLE, "clrjle" },
+	{ SYSZ_INS_CRJLE, "crjle" },
+	{ SYSZ_INS_CGIJNE, "cgijne" },
+	{ SYSZ_INS_CGRJNE, "cgrjne" },
+	{ SYSZ_INS_CIJNE, "cijne" },
+	{ SYSZ_INS_CLGIJNE, "clgijne" },
+	{ SYSZ_INS_CLGRJNE, "clgrjne" },
+	{ SYSZ_INS_CLIJNE, "clijne" },
+	{ SYSZ_INS_CLRJNE, "clrjne" },
+	{ SYSZ_INS_CRJNE, "crjne" },
+	{ SYSZ_INS_CGIJLH, "cgijlh" },
+	{ SYSZ_INS_CGRJLH, "cgrjlh" },
+	{ SYSZ_INS_CIJLH, "cijlh" },
+	{ SYSZ_INS_CLGIJLH, "clgijlh" },
+	{ SYSZ_INS_CLGRJLH, "clgrjlh" },
+	{ SYSZ_INS_CLIJLH, "clijlh" },
+	{ SYSZ_INS_CLRJLH, "clrjlh" },
+	{ SYSZ_INS_CRJLH, "crjlh" },
+	{ SYSZ_INS_BLR, "blr" },
+	{ SYSZ_INS_BLER, "bler" },
+	{ SYSZ_INS_JLE, "jle" },
+	{ SYSZ_INS_JGLE, "jgle" },
+	{ SYSZ_INS_LOCLE, "locle" },
+	{ SYSZ_INS_LOCGLE, "locgle" },
+	{ SYSZ_INS_LOCGRLE, "locgrle" },
+	{ SYSZ_INS_LOCRLE, "locrle" },
+	{ SYSZ_INS_STOCLE, "stocle" },
+	{ SYSZ_INS_STOCGLE, "stocgle" },
+	{ SYSZ_INS_BLHR, "blhr" },
+	{ SYSZ_INS_JLH, "jlh" },
+	{ SYSZ_INS_JGLH, "jglh" },
+	{ SYSZ_INS_LOCLH, "loclh" },
+	{ SYSZ_INS_LOCGLH, "locglh" },
+	{ SYSZ_INS_LOCGRLH, "locgrlh" },
+	{ SYSZ_INS_LOCRLH, "locrlh" },
+	{ SYSZ_INS_STOCLH, "stoclh" },
+	{ SYSZ_INS_STOCGLH, "stocglh" },
+	{ SYSZ_INS_JL, "jl" },
+	{ SYSZ_INS_JGL, "jgl" },
+	{ SYSZ_INS_LOCL, "locl" },
+	{ SYSZ_INS_LOCGL, "locgl" },
+	{ SYSZ_INS_LOCGRL, "locgrl" },
+	{ SYSZ_INS_LOCRL, "locrl" },
+	{ SYSZ_INS_LOC, "loc" },
+	{ SYSZ_INS_LOCG, "locg" },
+	{ SYSZ_INS_LOCGR, "locgr" },
+	{ SYSZ_INS_LOCR, "locr" },
+	{ SYSZ_INS_STOCL, "stocl" },
+	{ SYSZ_INS_STOCGL, "stocgl" },
+	{ SYSZ_INS_BNER, "bner" },
+	{ SYSZ_INS_JNE, "jne" },
+	{ SYSZ_INS_JGNE, "jgne" },
+	{ SYSZ_INS_LOCNE, "locne" },
+	{ SYSZ_INS_LOCGNE, "locgne" },
+	{ SYSZ_INS_LOCGRNE, "locgrne" },
+	{ SYSZ_INS_LOCRNE, "locrne" },
+	{ SYSZ_INS_STOCNE, "stocne" },
+	{ SYSZ_INS_STOCGNE, "stocgne" },
+	{ SYSZ_INS_BNHR, "bnhr" },
+	{ SYSZ_INS_BNHER, "bnher" },
+	{ SYSZ_INS_JNHE, "jnhe" },
+	{ SYSZ_INS_JGNHE, "jgnhe" },
+	{ SYSZ_INS_LOCNHE, "locnhe" },
+	{ SYSZ_INS_LOCGNHE, "locgnhe" },
+	{ SYSZ_INS_LOCGRNHE, "locgrnhe" },
+	{ SYSZ_INS_LOCRNHE, "locrnhe" },
+	{ SYSZ_INS_STOCNHE, "stocnhe" },
+	{ SYSZ_INS_STOCGNHE, "stocgnhe" },
+	{ SYSZ_INS_JNH, "jnh" },
+	{ SYSZ_INS_JGNH, "jgnh" },
+	{ SYSZ_INS_LOCNH, "locnh" },
+	{ SYSZ_INS_LOCGNH, "locgnh" },
+	{ SYSZ_INS_LOCGRNH, "locgrnh" },
+	{ SYSZ_INS_LOCRNH, "locrnh" },
+	{ SYSZ_INS_STOCNH, "stocnh" },
+	{ SYSZ_INS_STOCGNH, "stocgnh" },
+	{ SYSZ_INS_BNLR, "bnlr" },
+	{ SYSZ_INS_BNLER, "bnler" },
+	{ SYSZ_INS_JNLE, "jnle" },
+	{ SYSZ_INS_JGNLE, "jgnle" },
+	{ SYSZ_INS_LOCNLE, "locnle" },
+	{ SYSZ_INS_LOCGNLE, "locgnle" },
+	{ SYSZ_INS_LOCGRNLE, "locgrnle" },
+	{ SYSZ_INS_LOCRNLE, "locrnle" },
+	{ SYSZ_INS_STOCNLE, "stocnle" },
+	{ SYSZ_INS_STOCGNLE, "stocgnle" },
+	{ SYSZ_INS_BNLHR, "bnlhr" },
+	{ SYSZ_INS_JNLH, "jnlh" },
+	{ SYSZ_INS_JGNLH, "jgnlh" },
+	{ SYSZ_INS_LOCNLH, "locnlh" },
+	{ SYSZ_INS_LOCGNLH, "locgnlh" },
+	{ SYSZ_INS_LOCGRNLH, "locgrnlh" },
+	{ SYSZ_INS_LOCRNLH, "locrnlh" },
+	{ SYSZ_INS_STOCNLH, "stocnlh" },
+	{ SYSZ_INS_STOCGNLH, "stocgnlh" },
+	{ SYSZ_INS_JNL, "jnl" },
+	{ SYSZ_INS_JGNL, "jgnl" },
+	{ SYSZ_INS_LOCNL, "locnl" },
+	{ SYSZ_INS_LOCGNL, "locgnl" },
+	{ SYSZ_INS_LOCGRNL, "locgrnl" },
+	{ SYSZ_INS_LOCRNL, "locrnl" },
+	{ SYSZ_INS_STOCNL, "stocnl" },
+	{ SYSZ_INS_STOCGNL, "stocgnl" },
+	{ SYSZ_INS_BNOR, "bnor" },
+	{ SYSZ_INS_JNO, "jno" },
+	{ SYSZ_INS_JGNO, "jgno" },
+	{ SYSZ_INS_LOCNO, "locno" },
+	{ SYSZ_INS_LOCGNO, "locgno" },
+	{ SYSZ_INS_LOCGRNO, "locgrno" },
+	{ SYSZ_INS_LOCRNO, "locrno" },
+	{ SYSZ_INS_STOCNO, "stocno" },
+	{ SYSZ_INS_STOCGNO, "stocgno" },
+	{ SYSZ_INS_BOR, "bor" },
+	{ SYSZ_INS_JO, "jo" },
+	{ SYSZ_INS_JGO, "jgo" },
+	{ SYSZ_INS_LOCO, "loco" },
+	{ SYSZ_INS_LOCGO, "locgo" },
+	{ SYSZ_INS_LOCGRO, "locgro" },
+	{ SYSZ_INS_LOCRO, "locro" },
+	{ SYSZ_INS_STOCO, "stoco" },
+	{ SYSZ_INS_STOCGO, "stocgo" },
+	{ SYSZ_INS_STOC, "stoc" },
+	{ SYSZ_INS_STOCG, "stocg" },
+	{ SYSZ_INS_BASR, "basr" },
+	{ SYSZ_INS_BR, "br" },
+	{ SYSZ_INS_BRAS, "bras" },
+	{ SYSZ_INS_BRASL, "brasl" },
+	{ SYSZ_INS_J, "j" },
+	{ SYSZ_INS_JG, "jg" },
+	{ SYSZ_INS_BRCT, "brct" },
+	{ SYSZ_INS_BRCTG, "brctg" },
+	{ SYSZ_INS_C, "c" },
+	{ SYSZ_INS_CDB, "cdb" },
+	{ SYSZ_INS_CDBR, "cdbr" },
+	{ SYSZ_INS_CDFBR, "cdfbr" },
+	{ SYSZ_INS_CDGBR, "cdgbr" },
+	{ SYSZ_INS_CDLFBR, "cdlfbr" },
+	{ SYSZ_INS_CDLGBR, "cdlgbr" },
+	{ SYSZ_INS_CEB, "ceb" },
+	{ SYSZ_INS_CEBR, "cebr" },
+	{ SYSZ_INS_CEFBR, "cefbr" },
+	{ SYSZ_INS_CEGBR, "cegbr" },
+	{ SYSZ_INS_CELFBR, "celfbr" },
+	{ SYSZ_INS_CELGBR, "celgbr" },
+	{ SYSZ_INS_CFDBR, "cfdbr" },
+	{ SYSZ_INS_CFEBR, "cfebr" },
+	{ SYSZ_INS_CFI, "cfi" },
+	{ SYSZ_INS_CFXBR, "cfxbr" },
+	{ SYSZ_INS_CG, "cg" },
+	{ SYSZ_INS_CGDBR, "cgdbr" },
+	{ SYSZ_INS_CGEBR, "cgebr" },
+	{ SYSZ_INS_CGF, "cgf" },
+	{ SYSZ_INS_CGFI, "cgfi" },
+	{ SYSZ_INS_CGFR, "cgfr" },
+	{ SYSZ_INS_CGFRL, "cgfrl" },
+	{ SYSZ_INS_CGH, "cgh" },
+	{ SYSZ_INS_CGHI, "cghi" },
+	{ SYSZ_INS_CGHRL, "cghrl" },
+	{ SYSZ_INS_CGHSI, "cghsi" },
+	{ SYSZ_INS_CGR, "cgr" },
+	{ SYSZ_INS_CGRL, "cgrl" },
+	{ SYSZ_INS_CGXBR, "cgxbr" },
+	{ SYSZ_INS_CH, "ch" },
+	{ SYSZ_INS_CHF, "chf" },
+	{ SYSZ_INS_CHHSI, "chhsi" },
+	{ SYSZ_INS_CHI, "chi" },
+	{ SYSZ_INS_CHRL, "chrl" },
+	{ SYSZ_INS_CHSI, "chsi" },
+	{ SYSZ_INS_CHY, "chy" },
+	{ SYSZ_INS_CIH, "cih" },
+	{ SYSZ_INS_CL, "cl" },
+	{ SYSZ_INS_CLC, "clc" },
+	{ SYSZ_INS_CLFDBR, "clfdbr" },
+	{ SYSZ_INS_CLFEBR, "clfebr" },
+	{ SYSZ_INS_CLFHSI, "clfhsi" },
+	{ SYSZ_INS_CLFI, "clfi" },
+	{ SYSZ_INS_CLFXBR, "clfxbr" },
+	{ SYSZ_INS_CLG, "clg" },
+	{ SYSZ_INS_CLGDBR, "clgdbr" },
+	{ SYSZ_INS_CLGEBR, "clgebr" },
+	{ SYSZ_INS_CLGF, "clgf" },
+	{ SYSZ_INS_CLGFI, "clgfi" },
+	{ SYSZ_INS_CLGFR, "clgfr" },
+	{ SYSZ_INS_CLGFRL, "clgfrl" },
+	{ SYSZ_INS_CLGHRL, "clghrl" },
+	{ SYSZ_INS_CLGHSI, "clghsi" },
+	{ SYSZ_INS_CLGR, "clgr" },
+	{ SYSZ_INS_CLGRL, "clgrl" },
+	{ SYSZ_INS_CLGXBR, "clgxbr" },
+	{ SYSZ_INS_CLHF, "clhf" },
+	{ SYSZ_INS_CLHHSI, "clhhsi" },
+	{ SYSZ_INS_CLHRL, "clhrl" },
+	{ SYSZ_INS_CLI, "cli" },
+	{ SYSZ_INS_CLIH, "clih" },
+	{ SYSZ_INS_CLIY, "cliy" },
+	{ SYSZ_INS_CLR, "clr" },
+	{ SYSZ_INS_CLRL, "clrl" },
+	{ SYSZ_INS_CLST, "clst" },
+	{ SYSZ_INS_CLY, "cly" },
+	{ SYSZ_INS_CPSDR, "cpsdr" },
+	{ SYSZ_INS_CR, "cr" },
+	{ SYSZ_INS_CRL, "crl" },
+	{ SYSZ_INS_CS, "cs" },
+	{ SYSZ_INS_CSG, "csg" },
+	{ SYSZ_INS_CSY, "csy" },
+	{ SYSZ_INS_CXBR, "cxbr" },
+	{ SYSZ_INS_CXFBR, "cxfbr" },
+	{ SYSZ_INS_CXGBR, "cxgbr" },
+	{ SYSZ_INS_CXLFBR, "cxlfbr" },
+	{ SYSZ_INS_CXLGBR, "cxlgbr" },
+	{ SYSZ_INS_CY, "cy" },
+	{ SYSZ_INS_DDB, "ddb" },
+	{ SYSZ_INS_DDBR, "ddbr" },
+	{ SYSZ_INS_DEB, "deb" },
+	{ SYSZ_INS_DEBR, "debr" },
+	{ SYSZ_INS_DL, "dl" },
+	{ SYSZ_INS_DLG, "dlg" },
+	{ SYSZ_INS_DLGR, "dlgr" },
+	{ SYSZ_INS_DLR, "dlr" },
+	{ SYSZ_INS_DSG, "dsg" },
+	{ SYSZ_INS_DSGF, "dsgf" },
+	{ SYSZ_INS_DSGFR, "dsgfr" },
+	{ SYSZ_INS_DSGR, "dsgr" },
+	{ SYSZ_INS_DXBR, "dxbr" },
+	{ SYSZ_INS_EAR, "ear" },
+	{ SYSZ_INS_FIDBR, "fidbr" },
+	{ SYSZ_INS_FIDBRA, "fidbra" },
+	{ SYSZ_INS_FIEBR, "fiebr" },
+	{ SYSZ_INS_FIEBRA, "fiebra" },
+	{ SYSZ_INS_FIXBR, "fixbr" },
+	{ SYSZ_INS_FIXBRA, "fixbra" },
+	{ SYSZ_INS_FLOGR, "flogr" },
+	{ SYSZ_INS_IC, "ic" },
+	{ SYSZ_INS_ICY, "icy" },
+	{ SYSZ_INS_IIHF, "iihf" },
+	{ SYSZ_INS_IIHH, "iihh" },
+	{ SYSZ_INS_IIHL, "iihl" },
+	{ SYSZ_INS_IILF, "iilf" },
+	{ SYSZ_INS_IILH, "iilh" },
+	{ SYSZ_INS_IILL, "iill" },
+	{ SYSZ_INS_IPM, "ipm" },
+	{ SYSZ_INS_L, "l" },
+	{ SYSZ_INS_LA, "la" },
+	{ SYSZ_INS_LAA, "laa" },
+	{ SYSZ_INS_LAAG, "laag" },
+	{ SYSZ_INS_LAAL, "laal" },
+	{ SYSZ_INS_LAALG, "laalg" },
+	{ SYSZ_INS_LAN, "lan" },
+	{ SYSZ_INS_LANG, "lang" },
+	{ SYSZ_INS_LAO, "lao" },
+	{ SYSZ_INS_LAOG, "laog" },
+	{ SYSZ_INS_LARL, "larl" },
+	{ SYSZ_INS_LAX, "lax" },
+	{ SYSZ_INS_LAXG, "laxg" },
+	{ SYSZ_INS_LAY, "lay" },
+	{ SYSZ_INS_LB, "lb" },
+	{ SYSZ_INS_LBH, "lbh" },
+	{ SYSZ_INS_LBR, "lbr" },
+	{ SYSZ_INS_LCDBR, "lcdbr" },
+	{ SYSZ_INS_LCEBR, "lcebr" },
+	{ SYSZ_INS_LCGFR, "lcgfr" },
+	{ SYSZ_INS_LCGR, "lcgr" },
+	{ SYSZ_INS_LCR, "lcr" },
+	{ SYSZ_INS_LCXBR, "lcxbr" },
+	{ SYSZ_INS_LD, "ld" },
+	{ SYSZ_INS_LDEB, "ldeb" },
+	{ SYSZ_INS_LDEBR, "ldebr" },
+	{ SYSZ_INS_LDGR, "ldgr" },
+	{ SYSZ_INS_LDR, "ldr" },
+	{ SYSZ_INS_LDXBR, "ldxbr" },
+	{ SYSZ_INS_LDY, "ldy" },
+	{ SYSZ_INS_LE, "le" },
+	{ SYSZ_INS_LEDBR, "ledbr" },
+	{ SYSZ_INS_LER, "ler" },
+	{ SYSZ_INS_LEXBR, "lexbr" },
+	{ SYSZ_INS_LEY, "ley" },
+	{ SYSZ_INS_LFH, "lfh" },
+	{ SYSZ_INS_LG, "lg" },
+	{ SYSZ_INS_LGB, "lgb" },
+	{ SYSZ_INS_LGBR, "lgbr" },
+	{ SYSZ_INS_LGDR, "lgdr" },
+	{ SYSZ_INS_LGF, "lgf" },
+	{ SYSZ_INS_LGFI, "lgfi" },
+	{ SYSZ_INS_LGFR, "lgfr" },
+	{ SYSZ_INS_LGFRL, "lgfrl" },
+	{ SYSZ_INS_LGH, "lgh" },
+	{ SYSZ_INS_LGHI, "lghi" },
+	{ SYSZ_INS_LGHR, "lghr" },
+	{ SYSZ_INS_LGHRL, "lghrl" },
+	{ SYSZ_INS_LGR, "lgr" },
+	{ SYSZ_INS_LGRL, "lgrl" },
+	{ SYSZ_INS_LH, "lh" },
+	{ SYSZ_INS_LHH, "lhh" },
+	{ SYSZ_INS_LHI, "lhi" },
+	{ SYSZ_INS_LHR, "lhr" },
+	{ SYSZ_INS_LHRL, "lhrl" },
+	{ SYSZ_INS_LHY, "lhy" },
+	{ SYSZ_INS_LLC, "llc" },
+	{ SYSZ_INS_LLCH, "llch" },
+	{ SYSZ_INS_LLCR, "llcr" },
+	{ SYSZ_INS_LLGC, "llgc" },
+	{ SYSZ_INS_LLGCR, "llgcr" },
+	{ SYSZ_INS_LLGF, "llgf" },
+	{ SYSZ_INS_LLGFR, "llgfr" },
+	{ SYSZ_INS_LLGFRL, "llgfrl" },
+	{ SYSZ_INS_LLGH, "llgh" },
+	{ SYSZ_INS_LLGHR, "llghr" },
+	{ SYSZ_INS_LLGHRL, "llghrl" },
+	{ SYSZ_INS_LLH, "llh" },
+	{ SYSZ_INS_LLHH, "llhh" },
+	{ SYSZ_INS_LLHR, "llhr" },
+	{ SYSZ_INS_LLHRL, "llhrl" },
+	{ SYSZ_INS_LLIHF, "llihf" },
+	{ SYSZ_INS_LLIHH, "llihh" },
+	{ SYSZ_INS_LLIHL, "llihl" },
+	{ SYSZ_INS_LLILF, "llilf" },
+	{ SYSZ_INS_LLILH, "llilh" },
+	{ SYSZ_INS_LLILL, "llill" },
+	{ SYSZ_INS_LMG, "lmg" },
+	{ SYSZ_INS_LNDBR, "lndbr" },
+	{ SYSZ_INS_LNEBR, "lnebr" },
+	{ SYSZ_INS_LNGFR, "lngfr" },
+	{ SYSZ_INS_LNGR, "lngr" },
+	{ SYSZ_INS_LNR, "lnr" },
+	{ SYSZ_INS_LNXBR, "lnxbr" },
+	{ SYSZ_INS_LPDBR, "lpdbr" },
+	{ SYSZ_INS_LPEBR, "lpebr" },
+	{ SYSZ_INS_LPGFR, "lpgfr" },
+	{ SYSZ_INS_LPGR, "lpgr" },
+	{ SYSZ_INS_LPR, "lpr" },
+	{ SYSZ_INS_LPXBR, "lpxbr" },
+	{ SYSZ_INS_LR, "lr" },
+	{ SYSZ_INS_LRL, "lrl" },
+	{ SYSZ_INS_LRV, "lrv" },
+	{ SYSZ_INS_LRVG, "lrvg" },
+	{ SYSZ_INS_LRVGR, "lrvgr" },
+	{ SYSZ_INS_LRVR, "lrvr" },
+	{ SYSZ_INS_LT, "lt" },
+	{ SYSZ_INS_LTDBR, "ltdbr" },
+	{ SYSZ_INS_LTEBR, "ltebr" },
+	{ SYSZ_INS_LTG, "ltg" },
+	{ SYSZ_INS_LTGF, "ltgf" },
+	{ SYSZ_INS_LTGFR, "ltgfr" },
+	{ SYSZ_INS_LTGR, "ltgr" },
+	{ SYSZ_INS_LTR, "ltr" },
+	{ SYSZ_INS_LTXBR, "ltxbr" },
+	{ SYSZ_INS_LXDB, "lxdb" },
+	{ SYSZ_INS_LXDBR, "lxdbr" },
+	{ SYSZ_INS_LXEB, "lxeb" },
+	{ SYSZ_INS_LXEBR, "lxebr" },
+	{ SYSZ_INS_LXR, "lxr" },
+	{ SYSZ_INS_LY, "ly" },
+	{ SYSZ_INS_LZDR, "lzdr" },
+	{ SYSZ_INS_LZER, "lzer" },
+	{ SYSZ_INS_LZXR, "lzxr" },
+	{ SYSZ_INS_MADB, "madb" },
+	{ SYSZ_INS_MADBR, "madbr" },
+	{ SYSZ_INS_MAEB, "maeb" },
+	{ SYSZ_INS_MAEBR, "maebr" },
+	{ SYSZ_INS_MDB, "mdb" },
+	{ SYSZ_INS_MDBR, "mdbr" },
+	{ SYSZ_INS_MDEB, "mdeb" },
+	{ SYSZ_INS_MDEBR, "mdebr" },
+	{ SYSZ_INS_MEEB, "meeb" },
+	{ SYSZ_INS_MEEBR, "meebr" },
+	{ SYSZ_INS_MGHI, "mghi" },
+	{ SYSZ_INS_MH, "mh" },
+	{ SYSZ_INS_MHI, "mhi" },
+	{ SYSZ_INS_MHY, "mhy" },
+	{ SYSZ_INS_MLG, "mlg" },
+	{ SYSZ_INS_MLGR, "mlgr" },
+	{ SYSZ_INS_MS, "ms" },
+	{ SYSZ_INS_MSDB, "msdb" },
+	{ SYSZ_INS_MSDBR, "msdbr" },
+	{ SYSZ_INS_MSEB, "mseb" },
+	{ SYSZ_INS_MSEBR, "msebr" },
+	{ SYSZ_INS_MSFI, "msfi" },
+	{ SYSZ_INS_MSG, "msg" },
+	{ SYSZ_INS_MSGF, "msgf" },
+	{ SYSZ_INS_MSGFI, "msgfi" },
+	{ SYSZ_INS_MSGFR, "msgfr" },
+	{ SYSZ_INS_MSGR, "msgr" },
+	{ SYSZ_INS_MSR, "msr" },
+	{ SYSZ_INS_MSY, "msy" },
+	{ SYSZ_INS_MVC, "mvc" },
+	{ SYSZ_INS_MVGHI, "mvghi" },
+	{ SYSZ_INS_MVHHI, "mvhhi" },
+	{ SYSZ_INS_MVHI, "mvhi" },
+	{ SYSZ_INS_MVI, "mvi" },
+	{ SYSZ_INS_MVIY, "mviy" },
+	{ SYSZ_INS_MVST, "mvst" },
+	{ SYSZ_INS_MXBR, "mxbr" },
+	{ SYSZ_INS_MXDB, "mxdb" },
+	{ SYSZ_INS_MXDBR, "mxdbr" },
+	{ SYSZ_INS_N, "n" },
+	{ SYSZ_INS_NC, "nc" },
+	{ SYSZ_INS_NG, "ng" },
+	{ SYSZ_INS_NGR, "ngr" },
+	{ SYSZ_INS_NGRK, "ngrk" },
+	{ SYSZ_INS_NI, "ni" },
+	{ SYSZ_INS_NIHF, "nihf" },
+	{ SYSZ_INS_NIHH, "nihh" },
+	{ SYSZ_INS_NIHL, "nihl" },
+	{ SYSZ_INS_NILF, "nilf" },
+	{ SYSZ_INS_NILH, "nilh" },
+	{ SYSZ_INS_NILL, "nill" },
+	{ SYSZ_INS_NIY, "niy" },
+	{ SYSZ_INS_NR, "nr" },
+	{ SYSZ_INS_NRK, "nrk" },
+	{ SYSZ_INS_NY, "ny" },
+	{ SYSZ_INS_O, "o" },
+	{ SYSZ_INS_OC, "oc" },
+	{ SYSZ_INS_OG, "og" },
+	{ SYSZ_INS_OGR, "ogr" },
+	{ SYSZ_INS_OGRK, "ogrk" },
+	{ SYSZ_INS_OI, "oi" },
+	{ SYSZ_INS_OIHF, "oihf" },
+	{ SYSZ_INS_OIHH, "oihh" },
+	{ SYSZ_INS_OIHL, "oihl" },
+	{ SYSZ_INS_OILF, "oilf" },
+	{ SYSZ_INS_OILH, "oilh" },
+	{ SYSZ_INS_OILL, "oill" },
+	{ SYSZ_INS_OIY, "oiy" },
+	{ SYSZ_INS_OR, "or" },
+	{ SYSZ_INS_ORK, "ork" },
+	{ SYSZ_INS_OY, "oy" },
+	{ SYSZ_INS_PFD, "pfd" },
+	{ SYSZ_INS_PFDRL, "pfdrl" },
+	{ SYSZ_INS_RISBG, "risbg" },
+	{ SYSZ_INS_RISBHG, "risbhg" },
+	{ SYSZ_INS_RISBLG, "risblg" },
+	{ SYSZ_INS_RLL, "rll" },
+	{ SYSZ_INS_RLLG, "rllg" },
+	{ SYSZ_INS_RNSBG, "rnsbg" },
+	{ SYSZ_INS_ROSBG, "rosbg" },
+	{ SYSZ_INS_RXSBG, "rxsbg" },
+	{ SYSZ_INS_S, "s" },
+	{ SYSZ_INS_SDB, "sdb" },
+	{ SYSZ_INS_SDBR, "sdbr" },
+	{ SYSZ_INS_SEB, "seb" },
+	{ SYSZ_INS_SEBR, "sebr" },
+	{ SYSZ_INS_SG, "sg" },
+	{ SYSZ_INS_SGF, "sgf" },
+	{ SYSZ_INS_SGFR, "sgfr" },
+	{ SYSZ_INS_SGR, "sgr" },
+	{ SYSZ_INS_SGRK, "sgrk" },
+	{ SYSZ_INS_SH, "sh" },
+	{ SYSZ_INS_SHY, "shy" },
+	{ SYSZ_INS_SL, "sl" },
+	{ SYSZ_INS_SLB, "slb" },
+	{ SYSZ_INS_SLBG, "slbg" },
+	{ SYSZ_INS_SLBR, "slbr" },
+	{ SYSZ_INS_SLFI, "slfi" },
+	{ SYSZ_INS_SLG, "slg" },
+	{ SYSZ_INS_SLBGR, "slbgr" },
+	{ SYSZ_INS_SLGF, "slgf" },
+	{ SYSZ_INS_SLGFI, "slgfi" },
+	{ SYSZ_INS_SLGFR, "slgfr" },
+	{ SYSZ_INS_SLGR, "slgr" },
+	{ SYSZ_INS_SLGRK, "slgrk" },
+	{ SYSZ_INS_SLL, "sll" },
+	{ SYSZ_INS_SLLG, "sllg" },
+	{ SYSZ_INS_SLLK, "sllk" },
+	{ SYSZ_INS_SLR, "slr" },
+	{ SYSZ_INS_SLRK, "slrk" },
+	{ SYSZ_INS_SLY, "sly" },
+	{ SYSZ_INS_SQDB, "sqdb" },
+	{ SYSZ_INS_SQDBR, "sqdbr" },
+	{ SYSZ_INS_SQEB, "sqeb" },
+	{ SYSZ_INS_SQEBR, "sqebr" },
+	{ SYSZ_INS_SQXBR, "sqxbr" },
+	{ SYSZ_INS_SR, "sr" },
+	{ SYSZ_INS_SRA, "sra" },
+	{ SYSZ_INS_SRAG, "srag" },
+	{ SYSZ_INS_SRAK, "srak" },
+	{ SYSZ_INS_SRK, "srk" },
+	{ SYSZ_INS_SRL, "srl" },
+	{ SYSZ_INS_SRLG, "srlg" },
+	{ SYSZ_INS_SRLK, "srlk" },
+	{ SYSZ_INS_SRST, "srst" },
+	{ SYSZ_INS_ST, "st" },
+	{ SYSZ_INS_STC, "stc" },
+	{ SYSZ_INS_STCH, "stch" },
+	{ SYSZ_INS_STCY, "stcy" },
+	{ SYSZ_INS_STD, "std" },
+	{ SYSZ_INS_STDY, "stdy" },
+	{ SYSZ_INS_STE, "ste" },
+	{ SYSZ_INS_STEY, "stey" },
+	{ SYSZ_INS_STFH, "stfh" },
+	{ SYSZ_INS_STG, "stg" },
+	{ SYSZ_INS_STGRL, "stgrl" },
+	{ SYSZ_INS_STH, "sth" },
+	{ SYSZ_INS_STHH, "sthh" },
+	{ SYSZ_INS_STHRL, "sthrl" },
+	{ SYSZ_INS_STHY, "sthy" },
+	{ SYSZ_INS_STMG, "stmg" },
+	{ SYSZ_INS_STRL, "strl" },
+	{ SYSZ_INS_STRV, "strv" },
+	{ SYSZ_INS_STRVG, "strvg" },
+	{ SYSZ_INS_STY, "sty" },
+	{ SYSZ_INS_SXBR, "sxbr" },
+	{ SYSZ_INS_SY, "sy" },
+	{ SYSZ_INS_TM, "tm" },
+	{ SYSZ_INS_TMHH, "tmhh" },
+	{ SYSZ_INS_TMHL, "tmhl" },
+	{ SYSZ_INS_TMLH, "tmlh" },
+	{ SYSZ_INS_TMLL, "tmll" },
+	{ SYSZ_INS_TMY, "tmy" },
+	{ SYSZ_INS_X, "x" },
+	{ SYSZ_INS_XC, "xc" },
+	{ SYSZ_INS_XG, "xg" },
+	{ SYSZ_INS_XGR, "xgr" },
+	{ SYSZ_INS_XGRK, "xgrk" },
+	{ SYSZ_INS_XI, "xi" },
+	{ SYSZ_INS_XIHF, "xihf" },
+	{ SYSZ_INS_XILF, "xilf" },
+	{ SYSZ_INS_XIY, "xiy" },
+	{ SYSZ_INS_XR, "xr" },
+	{ SYSZ_INS_XRK, "xrk" },
+	{ SYSZ_INS_XY, "xy" },
+};
+
+// special alias insn
+static name_map alias_insn_names[] = {
+	{ 0, NULL }
+};
+#endif
+
+const char *SystemZ_insn_name(csh handle, unsigned int id)
+{
+#ifndef CAPSTONE_DIET
+	unsigned int i;
+
+	if (id >= SYSZ_INS_MAX)
+		return NULL;
+
+	// handle special alias first
+	for (i = 0; i < ARR_SIZE(alias_insn_names); i++) {
+		if (alias_insn_names[i].id == id)
+			return alias_insn_names[i].name;
+	}
+
+	return insn_name_maps[id].name;
+#else
+	return NULL;
+#endif
+}
+
+// map internal raw register to 'public' register
+sysz_reg SystemZ_map_register(unsigned int r)
+{
+	static unsigned int map[] = { 0,
+		SYSZ_REG_CC, SYSZ_REG_F0, SYSZ_REG_F1, SYSZ_REG_F2, SYSZ_REG_F3,
+		SYSZ_REG_F4, SYSZ_REG_F5, SYSZ_REG_F6, SYSZ_REG_F7, SYSZ_REG_F8,
+		SYSZ_REG_F9, SYSZ_REG_F10, SYSZ_REG_F11, SYSZ_REG_F12, SYSZ_REG_F13,
+		SYSZ_REG_F14, SYSZ_REG_F15, SYSZ_REG_F0, SYSZ_REG_F1, SYSZ_REG_F4,
+		SYSZ_REG_F5, SYSZ_REG_F8, SYSZ_REG_F9, SYSZ_REG_F12, SYSZ_REG_F13,
+		SYSZ_REG_F0, SYSZ_REG_F1, SYSZ_REG_F2, SYSZ_REG_F3, SYSZ_REG_F4,
+		SYSZ_REG_F5, SYSZ_REG_F6, SYSZ_REG_F7, SYSZ_REG_F8, SYSZ_REG_F9,
+		SYSZ_REG_F10, SYSZ_REG_F11, SYSZ_REG_F12, SYSZ_REG_F13, SYSZ_REG_F14,
+		SYSZ_REG_F15, SYSZ_REG_0, SYSZ_REG_1, SYSZ_REG_2, SYSZ_REG_3,
+		SYSZ_REG_4, SYSZ_REG_5, SYSZ_REG_6, SYSZ_REG_7, SYSZ_REG_8,
+		SYSZ_REG_9, SYSZ_REG_10, SYSZ_REG_11, SYSZ_REG_12, SYSZ_REG_13,
+		SYSZ_REG_14, SYSZ_REG_15, SYSZ_REG_0, SYSZ_REG_1, SYSZ_REG_2,
+		SYSZ_REG_3, SYSZ_REG_4, SYSZ_REG_5, SYSZ_REG_6, SYSZ_REG_7,
+		SYSZ_REG_8, SYSZ_REG_9, SYSZ_REG_10, SYSZ_REG_11, SYSZ_REG_12,
+		SYSZ_REG_13, SYSZ_REG_14, SYSZ_REG_15, SYSZ_REG_0, SYSZ_REG_1,
+		SYSZ_REG_2, SYSZ_REG_3, SYSZ_REG_4, SYSZ_REG_5, SYSZ_REG_6,
+		SYSZ_REG_7, SYSZ_REG_8, SYSZ_REG_9, SYSZ_REG_10, SYSZ_REG_11,
+		SYSZ_REG_12, SYSZ_REG_13, SYSZ_REG_14, SYSZ_REG_15, SYSZ_REG_0,
+		SYSZ_REG_2, SYSZ_REG_4, SYSZ_REG_6, SYSZ_REG_8, SYSZ_REG_10,
+		SYSZ_REG_12, SYSZ_REG_14,
+	};
+
+	if (r < ARR_SIZE(map))
+		return map[r];
+
+	// cannot find this register
+	return 0;
+}
diff --git a/arch/SystemZ/SystemZMapping.h b/arch/SystemZ/SystemZMapping.h
new file mode 100644
index 0000000..9a20ab6
--- /dev/null
+++ b/arch/SystemZ/SystemZMapping.h
@@ -0,0 +1,22 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#ifndef CS_SYSZ_MAP_H
+#define CS_SYSZ_MAP_H
+
+#include "../../include/capstone.h"
+#include "../../include/systemz.h"
+
+// return name of regiser in friendly string
+const char *SystemZ_reg_name(csh handle, unsigned int reg);
+
+// given internal insn id, return public instruction info
+void SystemZ_get_insn_id(cs_struct *h, cs_insn *insn, unsigned int id);
+
+const char *SystemZ_insn_name(csh handle, unsigned int id);
+
+// map internal raw register to 'public' register
+sysz_reg SystemZ_map_register(unsigned int r);
+
+#endif
+
diff --git a/arch/SystemZ/SystemZModule.c b/arch/SystemZ/SystemZModule.c
new file mode 100644
index 0000000..bafcc16
--- /dev/null
+++ b/arch/SystemZ/SystemZModule.c
@@ -0,0 +1,50 @@
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include "../../utils.h"
+#include "../../MCRegisterInfo.h"
+#include "SystemZDisassembler.h"
+#include "SystemZInstPrinter.h"
+#include "SystemZMapping.h"
+
+static cs_err init(cs_struct *ud)
+{
+	MCRegisterInfo *mri;
+
+	mri = cs_mem_malloc(sizeof(*mri));
+
+	SystemZ_init(mri);
+	ud->printer = SystemZ_printInst;
+	ud->printer_info = mri;
+	ud->getinsn_info = mri;
+	ud->disasm = SystemZ_getInstruction;
+	ud->post_printer = SystemZ_post_printer;
+
+	ud->reg_name = SystemZ_reg_name;
+	ud->insn_id = SystemZ_get_insn_id;
+	ud->insn_name = SystemZ_insn_name;
+
+	return CS_ERR_OK;
+}
+
+static cs_err option(cs_struct *handle, cs_opt_type type, size_t value)
+{
+	if (type == CS_OPT_SYNTAX)
+		handle->syntax = value;
+
+	return CS_ERR_OK;
+}
+
+static void destroy(cs_struct *handle)
+{
+}
+
+void SystemZ_enable(void)
+{
+	arch_init[CS_ARCH_SYSZ] = init;
+	arch_option[CS_ARCH_SYSZ] = option;
+	arch_destroy[CS_ARCH_SYSZ] = destroy;
+
+	// support this arch
+	all_arch |= (1 << CS_ARCH_SYSZ);
+}
diff --git a/arch/X86/X86ATTInstPrinter.c b/arch/X86/X86ATTInstPrinter.c
index 75ace39..f387b52 100644
--- a/arch/X86/X86ATTInstPrinter.c
+++ b/arch/X86/X86ATTInstPrinter.c
@@ -69,6 +69,7 @@
 	printMemReference(MI, OpNo, O);
 }
 
+#ifndef CAPSTONE_X86_REDUCE
 static void printi256mem(MCInst *MI, unsigned OpNo, SStream *O)
 {
 	SStream_concat(O, "ymmword ptr ");
@@ -115,6 +116,84 @@
 	printMemReference(MI, OpNo, O);
 }
 
+static void printSSECC(MCInst *MI, unsigned Op, SStream *OS)
+{
+	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0xf;
+	switch (Imm) {
+		default: break;	// never reach
+		case    0: SStream_concat(OS, "eq"); break;
+		case    1: SStream_concat(OS, "lt"); break;
+		case    2: SStream_concat(OS, "le"); break;
+		case    3: SStream_concat(OS, "unord"); break;
+		case    4: SStream_concat(OS, "neq"); break;
+		case    5: SStream_concat(OS, "nlt"); break;
+		case    6: SStream_concat(OS, "nle"); break;
+		case    7: SStream_concat(OS, "ord"); break;
+		case    8: SStream_concat(OS, "eq_uq"); break;
+		case    9: SStream_concat(OS, "nge"); break;
+		case  0xa: SStream_concat(OS, "ngt"); break;
+		case  0xb: SStream_concat(OS, "false"); break;
+		case  0xc: SStream_concat(OS, "neq_oq"); break;
+		case  0xd: SStream_concat(OS, "ge"); break;
+		case  0xe: SStream_concat(OS, "gt"); break;
+		case  0xf: SStream_concat(OS, "true"); break;
+	}
+}
+
+static void printAVXCC(MCInst *MI, unsigned Op, SStream *O)
+{
+	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x1f;
+	switch (Imm) {
+		default: break;//printf("Invalid avxcc argument!\n"); break;
+		case    0: SStream_concat(O, "eq"); break;
+		case    1: SStream_concat(O, "lt"); break;
+		case    2: SStream_concat(O, "le"); break;
+		case    3: SStream_concat(O, "unord"); break;
+		case    4: SStream_concat(O, "neq"); break;
+		case    5: SStream_concat(O, "nlt"); break;
+		case    6: SStream_concat(O, "nle"); break;
+		case    7: SStream_concat(O, "ord"); break;
+		case    8: SStream_concat(O, "eq_uq"); break;
+		case    9: SStream_concat(O, "nge"); break;
+		case  0xa: SStream_concat(O, "ngt"); break;
+		case  0xb: SStream_concat(O, "false"); break;
+		case  0xc: SStream_concat(O, "neq_oq"); break;
+		case  0xd: SStream_concat(O, "ge"); break;
+		case  0xe: SStream_concat(O, "gt"); break;
+		case  0xf: SStream_concat(O, "true"); break;
+		case 0x10: SStream_concat(O, "eq_os"); break;
+		case 0x11: SStream_concat(O, "lt_oq"); break;
+		case 0x12: SStream_concat(O, "le_oq"); break;
+		case 0x13: SStream_concat(O, "unord_s"); break;
+		case 0x14: SStream_concat(O, "neq_us"); break;
+		case 0x15: SStream_concat(O, "nlt_uq"); break;
+		case 0x16: SStream_concat(O, "nle_uq"); break;
+		case 0x17: SStream_concat(O, "ord_s"); break;
+		case 0x18: SStream_concat(O, "eq_us"); break;
+		case 0x19: SStream_concat(O, "nge_uq"); break;
+		case 0x1a: SStream_concat(O, "ngt_uq"); break;
+		case 0x1b: SStream_concat(O, "false_os"); break;
+		case 0x1c: SStream_concat(O, "neq_os"); break;
+		case 0x1d: SStream_concat(O, "ge_oq"); break;
+		case 0x1e: SStream_concat(O, "gt_oq"); break;
+		case 0x1f: SStream_concat(O, "true_us"); break;
+	}
+}
+
+static void printRoundingControl(MCInst *MI, unsigned Op, SStream *O)
+{
+	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x3;
+	switch (Imm) {
+		case 0: SStream_concat(O, "{rn-sae}"); break;
+		case 1: SStream_concat(O, "{rd-sae}"); break;
+		case 2: SStream_concat(O, "{ru-sae}"); break;
+		case 3: SStream_concat(O, "{rz-sae}"); break;
+		default: break;	// never reach
+	}
+}
+
+#endif
+
 static void printSrcIdx(MCInst *MI, unsigned Op, SStream *O)
 {
 	MCOperand *SegReg;
@@ -247,82 +326,6 @@
 
 static void printRegName(SStream *OS, unsigned RegNo);
 
-static void printSSECC(MCInst *MI, unsigned Op, SStream *OS)
-{
-	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0xf;
-	switch (Imm) {
-		default: break;	// never reach
-		case    0: SStream_concat(OS, "eq"); break;
-		case    1: SStream_concat(OS, "lt"); break;
-		case    2: SStream_concat(OS, "le"); break;
-		case    3: SStream_concat(OS, "unord"); break;
-		case    4: SStream_concat(OS, "neq"); break;
-		case    5: SStream_concat(OS, "nlt"); break;
-		case    6: SStream_concat(OS, "nle"); break;
-		case    7: SStream_concat(OS, "ord"); break;
-		case    8: SStream_concat(OS, "eq_uq"); break;
-		case    9: SStream_concat(OS, "nge"); break;
-		case  0xa: SStream_concat(OS, "ngt"); break;
-		case  0xb: SStream_concat(OS, "false"); break;
-		case  0xc: SStream_concat(OS, "neq_oq"); break;
-		case  0xd: SStream_concat(OS, "ge"); break;
-		case  0xe: SStream_concat(OS, "gt"); break;
-		case  0xf: SStream_concat(OS, "true"); break;
-	}
-}
-
-static void printAVXCC(MCInst *MI, unsigned Op, SStream *O)
-{
-	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x1f;
-	switch (Imm) {
-		default: break;//printf("Invalid avxcc argument!\n"); break;
-		case    0: SStream_concat(O, "eq"); break;
-		case    1: SStream_concat(O, "lt"); break;
-		case    2: SStream_concat(O, "le"); break;
-		case    3: SStream_concat(O, "unord"); break;
-		case    4: SStream_concat(O, "neq"); break;
-		case    5: SStream_concat(O, "nlt"); break;
-		case    6: SStream_concat(O, "nle"); break;
-		case    7: SStream_concat(O, "ord"); break;
-		case    8: SStream_concat(O, "eq_uq"); break;
-		case    9: SStream_concat(O, "nge"); break;
-		case  0xa: SStream_concat(O, "ngt"); break;
-		case  0xb: SStream_concat(O, "false"); break;
-		case  0xc: SStream_concat(O, "neq_oq"); break;
-		case  0xd: SStream_concat(O, "ge"); break;
-		case  0xe: SStream_concat(O, "gt"); break;
-		case  0xf: SStream_concat(O, "true"); break;
-		case 0x10: SStream_concat(O, "eq_os"); break;
-		case 0x11: SStream_concat(O, "lt_oq"); break;
-		case 0x12: SStream_concat(O, "le_oq"); break;
-		case 0x13: SStream_concat(O, "unord_s"); break;
-		case 0x14: SStream_concat(O, "neq_us"); break;
-		case 0x15: SStream_concat(O, "nlt_uq"); break;
-		case 0x16: SStream_concat(O, "nle_uq"); break;
-		case 0x17: SStream_concat(O, "ord_s"); break;
-		case 0x18: SStream_concat(O, "eq_us"); break;
-		case 0x19: SStream_concat(O, "nge_uq"); break;
-		case 0x1a: SStream_concat(O, "ngt_uq"); break;
-		case 0x1b: SStream_concat(O, "false_os"); break;
-		case 0x1c: SStream_concat(O, "neq_os"); break;
-		case 0x1d: SStream_concat(O, "ge_oq"); break;
-		case 0x1e: SStream_concat(O, "gt_oq"); break;
-		case 0x1f: SStream_concat(O, "true_us"); break;
-	}
-}
-
-static void printRoundingControl(MCInst *MI, unsigned Op, SStream *O)
-{
-	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x3;
-	switch (Imm) {
-		case 0: SStream_concat(O, "{rn-sae}"); break;
-		case 1: SStream_concat(O, "{rd-sae}"); break;
-		case 2: SStream_concat(O, "{ru-sae}"); break;
-		case 3: SStream_concat(O, "{rz-sae}"); break;
-		default: break;	// never reach
-	}
-}
-
 /// printPCRelImm - This is used to print an immediate value that ends up
 /// being encoded as a pc-relative value (e.g. for jumps and calls).  These
 /// print slightly differently than normal immediates.  For example, a $ is not
@@ -473,14 +476,22 @@
 #include "X86InstPrinter.h"
 
 #define GET_INSTRINFO_ENUM
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenInstrInfo_reduce.inc"
+#else
 #include "X86GenInstrInfo.inc"
+#endif
 
 #define GET_REGINFO_ENUM
 #include "X86GenRegisterInfo.inc"
 
 // Include the auto-generated portion of the assembly writer.
 #define PRINT_ALIAS_INSTR
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenAsmWriter_reduce.inc"
+#else
 #include "X86GenAsmWriter.inc"
+#endif
 
 static void printRegName(SStream *OS, unsigned RegNo)
 {
diff --git a/arch/X86/X86Disassembler.c b/arch/X86/X86Disassembler.c
index 2083383..51c108f 100644
--- a/arch/X86/X86Disassembler.c
+++ b/arch/X86/X86Disassembler.c
@@ -32,7 +32,11 @@
 #include "X86GenRegisterInfo.inc"
 
 #define GET_INSTRINFO_ENUM
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenInstrInfo_reduce.inc"
+#else
 #include "X86GenInstrInfo.inc"
+#endif
 
 struct reader_info {
 	const uint8_t *code;
@@ -181,15 +185,27 @@
 			case ENCODING_IB:
 				// Special case those X86 instructions that use the imm8 as a set of
 				// bits, bit count, etc. and are not sign-extend.
-				if (Opcode != X86_BLENDPSrri && Opcode != X86_BLENDPDrri &&
-						Opcode != X86_PBLENDWrri && Opcode != X86_MPSADBWrri &&
-						Opcode != X86_DPPSrri && Opcode != X86_DPPDrri &&
-						Opcode != X86_INSERTPSrr && Opcode != X86_VBLENDPSYrri &&
-						Opcode != X86_VBLENDPSYrmi && Opcode != X86_VBLENDPDYrri &&
-						Opcode != X86_VBLENDPDYrmi && Opcode != X86_VPBLENDWrri &&
-						Opcode != X86_VMPSADBWrri && Opcode != X86_VDPPSYrri &&
-						Opcode != X86_VDPPSYrmi && Opcode != X86_VDPPDrri &&
-						Opcode != X86_VINSERTPSrr && Opcode != X86_INT)
+				if (
+#ifndef CAPSTONE_X86_REDUCE
+						Opcode != X86_BLENDPSrri &&
+						Opcode != X86_BLENDPDrri &&
+						Opcode != X86_PBLENDWrri &&
+						Opcode != X86_MPSADBWrri &&
+						Opcode != X86_DPPSrri &&
+						Opcode != X86_DPPDrri &&
+						Opcode != X86_INSERTPSrr &&
+						Opcode != X86_VBLENDPSYrri &&
+						Opcode != X86_VBLENDPSYrmi &&
+						Opcode != X86_VBLENDPDYrri &&
+						Opcode != X86_VBLENDPDYrmi &&
+						Opcode != X86_VPBLENDWrri &&
+						Opcode != X86_VMPSADBWrri &&
+						Opcode != X86_VDPPSYrri &&
+						Opcode != X86_VDPPSYrmi &&
+						Opcode != X86_VDPPDrri &&
+						Opcode != X86_VINSERTPSrr &&
+#endif
+						Opcode != X86_INT)
 					if(immediate & 0x80)
 						immediate |= ~(0xffull);
 				break;
@@ -305,6 +321,9 @@
 	MCOperand *displacement;
 	MCOperand *segmentReg;
 	bool IndexIs512;
+#ifndef CAPSTONE_X86_REDUCE
+	uint32_t Opcode;
+#endif
 
 	if (insn->eaBase == EA_BASE_sib || insn->eaBase == EA_BASE_sib64) {
 		if (insn->sibBase != SIB_BASE_NONE) {
@@ -328,8 +347,12 @@
 		// I don't see a way to get the correct IndexReg in readSIB:
 		//   We can tell whether it is VSIB or SIB after instruction ID is decoded,
 		//   but instruction ID may not be decoded yet when calling readSIB.
-		uint32_t Opcode = MCInst_getOpcode(mcInst);
-		bool IndexIs128 = (Opcode == X86_VGATHERDPDrm ||
+#ifndef CAPSTONE_X86_REDUCE
+		Opcode = MCInst_getOpcode(mcInst);
+#endif
+		bool IndexIs128 = (
+#ifndef CAPSTONE_X86_REDUCE
+				Opcode == X86_VGATHERDPDrm ||
 				Opcode == X86_VGATHERDPDYrm ||
 				Opcode == X86_VGATHERQPDrm ||
 				Opcode == X86_VGATHERDPSrm ||
@@ -338,21 +361,34 @@
 				Opcode == X86_VPGATHERDQYrm ||
 				Opcode == X86_VPGATHERQQrm ||
 				Opcode == X86_VPGATHERDDrm ||
-				Opcode == X86_VPGATHERQDrm);
-		bool IndexIs256 = (Opcode == X86_VGATHERQPDYrm ||
+				Opcode == X86_VPGATHERQDrm ||
+#endif
+				false
+				);
+		bool IndexIs256 = (
+#ifndef CAPSTONE_X86_REDUCE
+				Opcode == X86_VGATHERQPDYrm ||
 				Opcode == X86_VGATHERDPSYrm ||
 				Opcode == X86_VGATHERQPSYrm ||
 				Opcode == X86_VGATHERDPDZrm ||
 				Opcode == X86_VPGATHERDQZrm ||
 				Opcode == X86_VPGATHERQQYrm ||
 				Opcode == X86_VPGATHERDDYrm ||
-				Opcode == X86_VPGATHERQDYrm);
-		IndexIs512 = (Opcode == X86_VGATHERQPDZrm ||
+				Opcode == X86_VPGATHERQDYrm ||
+#endif
+				false
+				);
+		IndexIs512 = (
+#ifndef CAPSTONE_X86_REDUCE
+				Opcode == X86_VGATHERQPDZrm ||
 				Opcode == X86_VGATHERDPSZrm ||
 				Opcode == X86_VGATHERQPSZrm ||
 				Opcode == X86_VPGATHERQQZrm ||
 				Opcode == X86_VPGATHERDDZrm ||
-				Opcode == X86_VPGATHERQDZrm);
+				Opcode == X86_VPGATHERQDZrm ||
+#endif
+				false
+				);
 
 		if (IndexIs128 || IndexIs256 || IndexIs512) {
 			unsigned IndexOffset = insn->sibIndex -
@@ -612,12 +648,14 @@
 	// If when reading the prefix bytes we determined the overlapping 0xf2 or 0xf3
 	// prefix bytes should be disassembled as xrelease and xacquire then set the
 	// opcode to those instead of the rep and repne opcodes.
+#ifndef CAPSTONE_X86_REDUCE
 	if (insn->xAcquireRelease) {
 		if (MCInst_getOpcode(mcInst) == X86_REP_PREFIX)
 			MCInst_setOpcode(mcInst, X86_XRELEASE_PREFIX);
 		else if (MCInst_getOpcode(mcInst) == X86_REPNE_PREFIX)
 			MCInst_setOpcode(mcInst, X86_XACQUIRE_PREFIX);
 	}
+#endif
 
 	insn->numImmediatesTranslated = 0;
 
diff --git a/arch/X86/X86DisassemblerDecoder.c b/arch/X86/X86DisassemblerDecoder.c
index 5424fb0..852ad9c 100644
--- a/arch/X86/X86DisassemblerDecoder.c
+++ b/arch/X86/X86DisassemblerDecoder.c
@@ -24,11 +24,19 @@
 
 #include "X86DisassemblerDecoder.h"
 
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenDisassemblerTables_reduce.inc"
+#else
 #include "X86GenDisassemblerTables.inc"
+#endif
 
 //#define GET_INSTRINFO_ENUM
 #define GET_INSTRINFO_MC_DESC
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenInstrInfo_reduce.inc"
+#else
 #include "X86GenInstrInfo.inc"
+#endif
 
 static const char *x86DisassemblerGetInstrName(unsigned Opcode)
 {
@@ -79,6 +87,7 @@
 	uint8_t index;
 
 	switch (type) {
+		default:
 		case ONEBYTE:
 			decision = ONEBYTE_SYM;
 			indextable = index_x86DisassemblerOneByteOpcodes;
@@ -95,6 +104,7 @@
 			decision = THREEBYTE3A_SYM;
 			indextable = index_x86DisassemblerThreeByte3AOpcodes;
 			break;
+#ifndef CAPSTONE_X86_REDUCE
 		case XOP8_MAP:
 			decision = XOP8_MAP_SYM;
 			indextable = index_x86DisassemblerXOP8Opcodes;
@@ -107,6 +117,7 @@
 			decision = XOPA_MAP_SYM;
 			indextable = index_x86DisassemblerXOPAOpcodes;
 			break;
+#endif
 	}
 
 	index = indextable[insnContext];
@@ -137,6 +148,7 @@
 	uint8_t index;
 
 	switch (type) {
+		default:
 		case ONEBYTE:
 			indextable = index_x86DisassemblerOneByteOpcodes;
 			index = indextable[insnContext];
@@ -169,6 +181,7 @@
 			else
 				dec = &emptyTable.modRMDecisions[opcode];
 			break;
+#ifndef CAPSTONE_X86_REDUCE
 		case XOP8_MAP:
 			indextable = index_x86DisassemblerXOP8Opcodes;
 			index = indextable[insnContext];
@@ -193,6 +206,7 @@
 			else
 				dec = &emptyTable.modRMDecisions[opcode];
 			break;
+#endif
 	}
 
 	switch (dec->modrm_type) {
diff --git a/arch/X86/X86GenAsmWriter1_reduce.inc b/arch/X86/X86GenAsmWriter1_reduce.inc
new file mode 100644
index 0000000..4930f08
--- /dev/null
+++ b/arch/X86/X86GenAsmWriter1_reduce.inc
@@ -0,0 +1,2832 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Assembly Writer Source Fragment                                             *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine, http://www.capstone-engine.org */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
+
+/// printInstruction - This method is automatically generated by tablegen
+/// from the instruction set description.
+static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
+{
+  static const uint32_t OpInfo[] = {
+    0U,	// PHI
+    0U,	// INLINEASM
+    0U,	// PROLOG_LABEL
+    0U,	// EH_LABEL
+    0U,	// GC_LABEL
+    0U,	// KILL
+    0U,	// EXTRACT_SUBREG
+    0U,	// INSERT_SUBREG
+    0U,	// IMPLICIT_DEF
+    0U,	// SUBREG_TO_REG
+    0U,	// COPY_TO_REGCLASS
+    3313U,	// DBG_VALUE
+    0U,	// REG_SEQUENCE
+    0U,	// COPY
+    3306U,	// BUNDLE
+    3369U,	// LIFETIME_START
+    3293U,	// LIFETIME_END
+    0U,	// STACKMAP
+    0U,	// PATCHPOINT
+    3384U,	// AAA
+    8365U,	// AAD8i8
+    8840U,	// AAM8i8
+    3895U,	// AAS
+    3048U,	// ACQUIRE_MOV16rm
+    3048U,	// ACQUIRE_MOV32rm
+    3048U,	// ACQUIRE_MOV64rm
+    3048U,	// ACQUIRE_MOV8rm
+    9577U,	// ADC16i16
+    278659U,	// ADC16mi
+    278659U,	// ADC16mi8
+    278659U,	// ADC16mr
+    548995U,	// ADC16ri
+    548995U,	// ADC16ri8
+    811139U,	// ADC16rm
+    548995U,	// ADC16rr
+    4464771U,	// ADC16rr_REV
+    9713U,	// ADC32i32
+    295043U,	// ADC32mi
+    295043U,	// ADC32mi8
+    295043U,	// ADC32mr
+    548995U,	// ADC32ri
+    548995U,	// ADC32ri8
+    1073283U,	// ADC32rm
+    548995U,	// ADC32rr
+    4464771U,	// ADC32rr_REV
+    9861U,	// ADC64i32
+    303235U,	// ADC64mi32
+    303235U,	// ADC64mi8
+    303235U,	// ADC64mr
+    548995U,	// ADC64ri32
+    548995U,	// ADC64ri8
+    1335427U,	// ADC64rm
+    548995U,	// ADC64rr
+    4464771U,	// ADC64rr_REV
+    9475U,	// ADC8i8
+    311427U,	// ADC8mi
+    311427U,	// ADC8mr
+    548995U,	// ADC8ri
+    1597571U,	// ADC8rm
+    548995U,	// ADC8rr
+    4464771U,	// ADC8rr_REV
+    8660111U,	// ADCX32rm
+    12854415U,	// ADCX32rr
+    17048719U,	// ADCX64rm
+    12854415U,	// ADCX64rr
+    9586U,	// ADD16i16
+    278715U,	// ADD16mi
+    278715U,	// ADD16mi8
+    278715U,	// ADD16mr
+    549051U,	// ADD16ri
+    549051U,	// ADD16ri8
+    0U,	// ADD16ri8_DB
+    0U,	// ADD16ri_DB
+    811195U,	// ADD16rm
+    549051U,	// ADD16rr
+    0U,	// ADD16rr_DB
+    4464827U,	// ADD16rr_REV
+    9723U,	// ADD32i32
+    295099U,	// ADD32mi
+    295099U,	// ADD32mi8
+    295099U,	// ADD32mr
+    549051U,	// ADD32ri
+    549051U,	// ADD32ri8
+    0U,	// ADD32ri8_DB
+    0U,	// ADD32ri_DB
+    1073339U,	// ADD32rm
+    549051U,	// ADD32rr
+    0U,	// ADD32rr_DB
+    4464827U,	// ADD32rr_REV
+    9871U,	// ADD64i32
+    303291U,	// ADD64mi32
+    303291U,	// ADD64mi8
+    303291U,	// ADD64mr
+    549051U,	// ADD64ri32
+    0U,	// ADD64ri32_DB
+    549051U,	// ADD64ri8
+    0U,	// ADD64ri8_DB
+    1335483U,	// ADD64rm
+    549051U,	// ADD64rr
+    0U,	// ADD64rr_DB
+    4464827U,	// ADD64rr_REV
+    9484U,	// ADD8i8
+    311483U,	// ADD8mi
+    311483U,	// ADD8mr
+    549051U,	// ADD8ri
+    1597627U,	// ADD8rm
+    549051U,	// ADD8rr
+    4464827U,	// ADD8rr_REV
+    3323U,	// ADJCALLSTACKDOWN32
+    3323U,	// ADJCALLSTACKDOWN64
+    3341U,	// ADJCALLSTACKUP32
+    3341U,	// ADJCALLSTACKUP64
+    8660129U,	// ADOX32rm
+    12854433U,	// ADOX32rr
+    17048737U,	// ADOX64rm
+    12854433U,	// ADOX64rr
+    9595U,	// AND16i16
+    278764U,	// AND16mi
+    278764U,	// AND16mi8
+    278764U,	// AND16mr
+    549100U,	// AND16ri
+    549100U,	// AND16ri8
+    811244U,	// AND16rm
+    549100U,	// AND16rr
+    4464876U,	// AND16rr_REV
+    9733U,	// AND32i32
+    295148U,	// AND32mi
+    295148U,	// AND32mi8
+    295148U,	// AND32mr
+    549100U,	// AND32ri
+    549100U,	// AND32ri8
+    1073388U,	// AND32rm
+    549100U,	// AND32rr
+    4464876U,	// AND32rr_REV
+    9881U,	// AND64i32
+    303340U,	// AND64mi32
+    303340U,	// AND64mi8
+    303340U,	// AND64mr
+    549100U,	// AND64ri32
+    549100U,	// AND64ri8
+    1335532U,	// AND64rm
+    549100U,	// AND64rr
+    4464876U,	// AND64rr_REV
+    9493U,	// AND8i8
+    311532U,	// AND8mi
+    311532U,	// AND8mr
+    549100U,	// AND8ri
+    1597676U,	// AND8rm
+    549100U,	// AND8rr
+    4464876U,	// AND8rr_REV
+    79962765U,	// ANDN32rm
+    348398221U,	// ANDN32rr
+    616833677U,	// ANDN64rm
+    348398221U,	// ANDN64rr
+    279146U,	// ARPL16mr
+    12853866U,	// ARPL16rr
+    1950U,	// ATOMADD6432
+    2730U,	// ATOMAND16
+    2163U,	// ATOMAND32
+    2417U,	// ATOMAND64
+    1971U,	// ATOMAND6432
+    2884U,	// ATOMAND8
+    2845U,	// ATOMMAX16
+    2378U,	// ATOMMAX32
+    2691U,	// ATOMMAX64
+    2120U,	// ATOMMAX6432
+    3011U,	// ATOMMAX8
+    2769U,	// ATOMMIN16
+    2263U,	// ATOMMIN32
+    2576U,	// ATOMMIN64
+    2014U,	// ATOMMIN6432
+    2921U,	// ATOMMIN8
+    2749U,	// ATOMNAND16
+    2182U,	// ATOMNAND32
+    2436U,	// ATOMNAND64
+    1992U,	// ATOMNAND6432
+    2902U,	// ATOMNAND8
+    2808U,	// ATOMOR16
+    2341U,	// ATOMOR32
+    2654U,	// ATOMOR64
+    2079U,	// ATOMOR6432
+    2976U,	// ATOMOR8
+    1929U,	// ATOMSUB6432
+    2057U,	// ATOMSWAP6432
+    2864U,	// ATOMUMAX16
+    2397U,	// ATOMUMAX32
+    2710U,	// ATOMUMAX64
+    2141U,	// ATOMUMAX6432
+    3029U,	// ATOMUMAX8
+    2788U,	// ATOMUMIN16
+    2282U,	// ATOMUMIN32
+    2595U,	// ATOMUMIN64
+    2035U,	// ATOMUMIN6432
+    2939U,	// ATOMUMIN8
+    2826U,	// ATOMXOR16
+    2359U,	// ATOMXOR32
+    2672U,	// ATOMXOR64
+    2099U,	// ATOMXOR6432
+    2993U,	// ATOMXOR8
+    881075086U,	// BEXTR32rm
+    348398478U,	// BEXTR32rr
+    889463694U,	// BEXTR64rm
+    348398478U,	// BEXTR64rr
+    881075086U,	// BEXTRI32mi
+    348398478U,	// BEXTRI32ri
+    889463694U,	// BEXTRI64mi
+    348398478U,	// BEXTRI64ri
+    8659539U,	// BLCFILL32rm
+    12853843U,	// BLCFILL32rr
+    17048147U,	// BLCFILL64rm
+    12853843U,	// BLCFILL64rr
+    8659477U,	// BLCI32rm
+    12853781U,	// BLCI32rr
+    17048085U,	// BLCI64rm
+    12853781U,	// BLCI64rr
+    8659085U,	// BLCIC32rm
+    12853389U,	// BLCIC32rr
+    17047693U,	// BLCIC64rm
+    12853389U,	// BLCIC64rr
+    8659495U,	// BLCMSK32rm
+    12853799U,	// BLCMSK32rr
+    17048103U,	// BLCMSK64rm
+    12853799U,	// BLCMSK64rr
+    8659869U,	// BLCS32rm
+    12854173U,	// BLCS32rr
+    17048477U,	// BLCS64rm
+    12854173U,	// BLCS64rr
+    8659548U,	// BLSFILL32rm
+    12853852U,	// BLSFILL32rr
+    17048156U,	// BLSFILL64rm
+    12853852U,	// BLSFILL64rr
+    8659489U,	// BLSI32rm
+    12853793U,	// BLSI32rr
+    17048097U,	// BLSI64rm
+    12853793U,	// BLSI64rr
+    8659092U,	// BLSIC32rm
+    12853396U,	// BLSIC32rr
+    17047700U,	// BLSIC64rm
+    12853396U,	// BLSIC64rr
+    8659503U,	// BLSMSK32rm
+    12853807U,	// BLSMSK32rr
+    17048111U,	// BLSMSK64rm
+    12853807U,	// BLSMSK64rr
+    8659833U,	// BLSR32rm
+    12854137U,	// BLSR32rr
+    17048441U,	// BLSR64rm
+    12854137U,	// BLSR64rr
+    21242097U,	// BOUNDS16rm
+    8659185U,	// BOUNDS32rm
+    21242333U,	// BSF16rm
+    12853725U,	// BSF16rr
+    8659421U,	// BSF32rm
+    12853725U,	// BSF32rr
+    17048029U,	// BSF64rm
+    12853725U,	// BSF64rr
+    21242740U,	// BSR16rm
+    12854132U,	// BSR16rr
+    8659828U,	// BSR32rm
+    12854132U,	// BSR32rr
+    17048436U,	// BSR64rm
+    12854132U,	// BSR64rr
+    8895U,	// BSWAP32r
+    8895U,	// BSWAP64r
+    279526U,	// BT16mi8
+    279526U,	// BT16mr
+    12854246U,	// BT16ri8
+    12854246U,	// BT16rr
+    295910U,	// BT32mi8
+    295910U,	// BT32mr
+    12854246U,	// BT32ri8
+    12854246U,	// BT32rr
+    304102U,	// BT64mi8
+    304102U,	// BT64mr
+    12854246U,	// BT64ri8
+    12854246U,	// BT64rr
+    278696U,	// BTC16mi8
+    278696U,	// BTC16mr
+    12853416U,	// BTC16ri8
+    12853416U,	// BTC16rr
+    295080U,	// BTC32mi8
+    295080U,	// BTC32mr
+    12853416U,	// BTC32ri8
+    12853416U,	// BTC32rr
+    303272U,	// BTC64mi8
+    303272U,	// BTC64mr
+    12853416U,	// BTC64ri8
+    12853416U,	// BTC64rr
+    279423U,	// BTR16mi8
+    279423U,	// BTR16mr
+    12854143U,	// BTR16ri8
+    12854143U,	// BTR16rr
+    295807U,	// BTR32mi8
+    295807U,	// BTR32mr
+    12854143U,	// BTR32ri8
+    12854143U,	// BTR32rr
+    303999U,	// BTR64mi8
+    303999U,	// BTR64mr
+    12854143U,	// BTR64ri8
+    12854143U,	// BTR64rr
+    279508U,	// BTS16mi8
+    279508U,	// BTS16mr
+    12854228U,	// BTS16ri8
+    12854228U,	// BTS16rr
+    295892U,	// BTS32mi8
+    295892U,	// BTS32mr
+    12854228U,	// BTS32ri8
+    12854228U,	// BTS32rr
+    304084U,	// BTS64mi8
+    304084U,	// BTS64mr
+    12854228U,	// BTS64ri8
+    12854228U,	// BTS64rr
+    881074715U,	// BZHI32rm
+    348398107U,	// BZHI32rr
+    889463323U,	// BZHI64rm
+    348398107U,	// BZHI64rr
+    16973U,	// CALL16m
+    8781U,	// CALL16r
+    33357U,	// CALL32m
+    8781U,	// CALL32r
+    41549U,	// CALL64m
+    57933U,	// CALL64pcrel32
+    8781U,	// CALL64r
+    57933U,	// CALLpcrel16
+    57933U,	// CALLpcrel32
+    4094U,	// CBW
+    3815U,	// CDQ
+    3600U,	// CDQE
+    3453U,	// CLAC
+    3485U,	// CLC
+    3535U,	// CLD
+    3660U,	// CLGI
+    3670U,	// CLI
+    4038U,	// CLTS
+    3489U,	// CMC
+    25436207U,	// CMOVA16rm
+    4464687U,	// CMOVA16rr
+    29630511U,	// CMOVA32rm
+    4464687U,	// CMOVA32rr
+    33824815U,	// CMOVA64rm
+    4464687U,	// CMOVA64rr
+    25436461U,	// CMOVAE16rm
+    4464941U,	// CMOVAE16rr
+    29630765U,	// CMOVAE32rm
+    4464941U,	// CMOVAE32rr
+    33825069U,	// CMOVAE64rm
+    4464941U,	// CMOVAE64rr
+    25436284U,	// CMOVB16rm
+    4464764U,	// CMOVB16rr
+    29630588U,	// CMOVB32rm
+    4464764U,	// CMOVB32rr
+    33824892U,	// CMOVB64rm
+    4464764U,	// CMOVB64rr
+    25436481U,	// CMOVBE16rm
+    4464961U,	// CMOVBE16rr
+    29630785U,	// CMOVBE32rm
+    4464961U,	// CMOVBE32rr
+    33825089U,	// CMOVBE64rm
+    4464961U,	// CMOVBE64rr
+    25436630U,	// CMOVE16rm
+    4465110U,	// CMOVE16rr
+    29630934U,	// CMOVE32rm
+    4465110U,	// CMOVE32rr
+    33825238U,	// CMOVE64rm
+    4465110U,	// CMOVE64rr
+    25436680U,	// CMOVG16rm
+    4465160U,	// CMOVG16rr
+    29630984U,	// CMOVG32rm
+    4465160U,	// CMOVG32rr
+    33825288U,	// CMOVG64rm
+    4465160U,	// CMOVG64rr
+    25436501U,	// CMOVGE16rm
+    4464981U,	// CMOVGE16rr
+    29630805U,	// CMOVGE32rm
+    4464981U,	// CMOVGE32rr
+    33825109U,	// CMOVGE64rm
+    4464981U,	// CMOVGE64rr
+    25436801U,	// CMOVL16rm
+    4465281U,	// CMOVL16rr
+    29631105U,	// CMOVL32rm
+    4465281U,	// CMOVL32rr
+    33825409U,	// CMOVL64rm
+    4465281U,	// CMOVL64rr
+    25436525U,	// CMOVLE16rm
+    4465005U,	// CMOVLE16rr
+    29630829U,	// CMOVLE32rm
+    4465005U,	// CMOVLE32rr
+    33825133U,	// CMOVLE64rm
+    4465005U,	// CMOVLE64rr
+    25436553U,	// CMOVNE16rm
+    4465033U,	// CMOVNE16rr
+    29630857U,	// CMOVNE32rm
+    4465033U,	// CMOVNE32rr
+    33825161U,	// CMOVNE64rm
+    4465033U,	// CMOVNE64rr
+    25436842U,	// CMOVNO16rm
+    4465322U,	// CMOVNO16rr
+    29631146U,	// CMOVNO32rm
+    4465322U,	// CMOVNO32rr
+    33825450U,	// CMOVNO64rm
+    4465322U,	// CMOVNO64rr
+    25436903U,	// CMOVNP16rm
+    4465383U,	// CMOVNP16rr
+    29631207U,	// CMOVNP32rm
+    4465383U,	// CMOVNP32rr
+    33825511U,	// CMOVNP64rm
+    4465383U,	// CMOVNP64rr
+    25437127U,	// CMOVNS16rm
+    4465607U,	// CMOVNS16rr
+    29631431U,	// CMOVNS32rm
+    4465607U,	// CMOVNS32rr
+    33825735U,	// CMOVNS64rm
+    4465607U,	// CMOVNS64rr
+    25436856U,	// CMOVO16rm
+    4465336U,	// CMOVO16rr
+    29631160U,	// CMOVO32rm
+    4465336U,	// CMOVO32rr
+    33825464U,	// CMOVO64rm
+    4465336U,	// CMOVO64rr
+    25436949U,	// CMOVP16rm
+    4465429U,	// CMOVP16rr
+    29631253U,	// CMOVP32rm
+    4465429U,	// CMOVP32rr
+    33825557U,	// CMOVP64rm
+    4465429U,	// CMOVP64rr
+    25437151U,	// CMOVS16rm
+    4465631U,	// CMOVS16rr
+    29631455U,	// CMOVS32rm
+    4465631U,	// CMOVS32rr
+    33825759U,	// CMOVS64rm
+    4465631U,	// CMOVS64rr
+    2322U,	// CMOV_FR32
+    2635U,	// CMOV_FR64
+    1889U,	// CMOV_GR16
+    1869U,	// CMOV_GR32
+    2958U,	// CMOV_GR8
+    2302U,	// CMOV_RFP32
+    2615U,	// CMOV_RFP64
+    1909U,	// CMOV_RFP80
+    2222U,	// CMOV_V16F32
+    2456U,	// CMOV_V2F64
+    2516U,	// CMOV_V2I64
+    2202U,	// CMOV_V4F32
+    2476U,	// CMOV_V4F64
+    2536U,	// CMOV_V4I64
+    2243U,	// CMOV_V8F32
+    2496U,	// CMOV_V8F64
+    2556U,	// CMOV_V8I64
+    9622U,	// CMP16i16
+    279248U,	// CMP16mi
+    279248U,	// CMP16mi8
+    279248U,	// CMP16mr
+    12853968U,	// CMP16ri
+    12853968U,	// CMP16ri8
+    21242576U,	// CMP16rm
+    12853968U,	// CMP16rr
+    12853968U,	// CMP16rr_REV
+    9787U,	// CMP32i32
+    295632U,	// CMP32mi
+    295632U,	// CMP32mi8
+    295632U,	// CMP32mr
+    12853968U,	// CMP32ri
+    12853968U,	// CMP32ri8
+    8659664U,	// CMP32rm
+    12853968U,	// CMP32rr
+    12853968U,	// CMP32rr_REV
+    9902U,	// CMP64i32
+    303824U,	// CMP64mi32
+    303824U,	// CMP64mi8
+    303824U,	// CMP64mr
+    12853968U,	// CMP64ri32
+    12853968U,	// CMP64ri8
+    17048272U,	// CMP64rm
+    12853968U,	// CMP64rr
+    12853968U,	// CMP64rr_REV
+    9510U,	// CMP8i8
+    312016U,	// CMP8mi
+    312016U,	// CMP8mr
+    12853968U,	// CMP8ri
+    38019792U,	// CMP8rm
+    12853968U,	// CMP8rr
+    12853968U,	// CMP8rr_REV
+    66689U,	// CMPS16
+    73995U,	// CMPS32
+    82730U,	// CMPS64
+    90211U,	// CMPS8
+    98358U,	// CMPXCHG16B
+    279021U,	// CMPXCHG16rm
+    12853741U,	// CMPXCHG16rr
+    295405U,	// CMPXCHG32rm
+    12853741U,	// CMPXCHG32rr
+    303597U,	// CMPXCHG64rm
+    12853741U,	// CMPXCHG64rr
+    41026U,	// CMPXCHG8B
+    311789U,	// CMPXCHG8rm
+    12853741U,	// CMPXCHG8rr
+    3529U,	// CPUID32
+    3529U,	// CPUID64
+    3791U,	// CQO
+    3908U,	// CS_PREFIX
+    3576U,	// CWD
+    3580U,	// CWDE
+    3388U,	// DAA
+    3899U,	// DAS
+    3278U,	// DATA16_PREFIX
+    16520U,	// DEC16m
+    8328U,	// DEC16r
+    8328U,	// DEC32_16r
+    8328U,	// DEC32_32r
+    32904U,	// DEC32m
+    8328U,	// DEC32r
+    16520U,	// DEC64_16m
+    8328U,	// DEC64_16r
+    32904U,	// DEC64_32m
+    8328U,	// DEC64_32r
+    41096U,	// DEC64m
+    8328U,	// DEC64r
+    49288U,	// DEC8m
+    8328U,	// DEC8r
+    17496U,	// DIV16m
+    9304U,	// DIV16r
+    33880U,	// DIV32m
+    9304U,	// DIV32r
+    42072U,	// DIV64m
+    9304U,	// DIV64r
+    50264U,	// DIV8m
+    9304U,	// DIV8r
+    3916U,	// DS_PREFIX
+    10014U,	// EH_RETURN
+    10014U,	// EH_RETURN64
+    3101U,	// EH_SjLj_LongJmp32
+    3191U,	// EH_SjLj_LongJmp64
+    3120U,	// EH_SjLj_SetJmp32
+    3210U,	// EH_SjLj_SetJmp64
+    58117U,	// EH_SjLj_Setup
+    12854096U,	// ENTER
+    3931U,	// ES_PREFIX
+    12853836U,	// FARCALL16i
+    107084U,	// FARCALL16m
+    12853836U,	// FARCALL32i
+    107084U,	// FARCALL32m
+    107084U,	// FARCALL64
+    12853973U,	// FARJMP16i
+    107221U,	// FARJMP16m
+    12853973U,	// FARJMP32i
+    107221U,	// FARJMP32m
+    107221U,	// FARJMP64
+    3753U,	// FSETPM
+    3946U,	// FS_PREFIX
+    3473U,	// GETSEC
+    3961U,	// GS_PREFIX
+    4063U,	// HLT
+    17495U,	// IDIV16m
+    9303U,	// IDIV16r
+    33879U,	// IDIV32m
+    9303U,	// IDIV32r
+    42071U,	// IDIV64m
+    9303U,	// IDIV64r
+    50263U,	// IDIV8m
+    9303U,	// IDIV8r
+    17019U,	// IMUL16m
+    8827U,	// IMUL16r
+    25436795U,	// IMUL16rm
+    893657723U,	// IMUL16rmi
+    893657723U,	// IMUL16rmi8
+    4465275U,	// IMUL16rr
+    348398203U,	// IMUL16rri
+    348398203U,	// IMUL16rri8
+    33403U,	// IMUL32m
+    8827U,	// IMUL32r
+    29631099U,	// IMUL32rm
+    881074811U,	// IMUL32rmi
+    881074811U,	// IMUL32rmi8
+    4465275U,	// IMUL32rr
+    348398203U,	// IMUL32rri
+    348398203U,	// IMUL32rri8
+    41595U,	// IMUL64m
+    8827U,	// IMUL64r
+    33825403U,	// IMUL64rm
+    889463419U,	// IMUL64rmi32
+    889463419U,	// IMUL64rmi8
+    4465275U,	// IMUL64rr
+    348398203U,	// IMUL64rri32
+    348398203U,	// IMUL64rri8
+    49787U,	// IMUL8m
+    8827U,	// IMUL8r
+    1950836U,	// IN16
+    9614U,	// IN16ri
+    4260U,	// IN16rr
+    1958142U,	// IN32
+    9778U,	// IN32ri
+    4270U,	// IN32rr
+    1966166U,	// IN8
+    9502U,	// IN8ri
+    4250U,	// IN8rr
+    16547U,	// INC16m
+    8355U,	// INC16r
+    8355U,	// INC32_16r
+    8355U,	// INC32_32r
+    32931U,	// INC32m
+    8355U,	// INC32r
+    16547U,	// INC64_16m
+    8355U,	// INC64_16r
+    32931U,	// INC64_32m
+    8355U,	// INC64_32r
+    41123U,	// INC64m
+    8355U,	// INC64r
+    49315U,	// INC8m
+    8355U,	// INC8r
+    9249U,	// INT
+    3096U,	// INT1
+    3186U,	// INT3
+    3795U,	// INTO
+    3571U,	// INVD
+    42214443U,	// INVEPT32
+    42214443U,	// INVEPT64
+    49658U,	// INVLPG
+    4216U,	// INVLPGA32
+    4233U,	// INVLPGA64
+    42213576U,	// INVPCID32
+    42213576U,	// INVPCID64
+    42213585U,	// INVVPID32
+    42213585U,	// INVVPID64
+    4043U,	// IRET16
+    3559U,	// IRET32
+    3858U,	// IRET64
+    3357U,	// Int_MemBarrier
+    57633U,	// JAE_1
+    57633U,	// JAE_2
+    57633U,	// JAE_4
+    57381U,	// JA_1
+    57381U,	// JA_2
+    57381U,	// JA_4
+    57653U,	// JBE_1
+    57653U,	// JBE_2
+    57653U,	// JBE_4
+    57426U,	// JB_1
+    57426U,	// JB_2
+    57426U,	// JB_4
+    58574U,	// JCXZ
+    58567U,	// JECXZ_32
+    58567U,	// JECXZ_64
+    57693U,	// JE_1
+    57693U,	// JE_2
+    57693U,	// JE_4
+    57673U,	// JGE_1
+    57673U,	// JGE_2
+    57673U,	// JGE_4
+    57846U,	// JG_1
+    57846U,	// JG_2
+    57846U,	// JG_4
+    57697U,	// JLE_1
+    57697U,	// JLE_2
+    57697U,	// JLE_4
+    57928U,	// JL_1
+    57928U,	// JL_2
+    57928U,	// JL_4
+    17110U,	// JMP16m
+    8918U,	// JMP16r
+    33494U,	// JMP32m
+    8918U,	// JMP32r
+    41686U,	// JMP64m
+    8918U,	// JMP64r
+    58070U,	// JMP_1
+    58070U,	// JMP_2
+    58070U,	// JMP_4
+    57717U,	// JNE_1
+    57717U,	// JNE_2
+    57717U,	// JNE_4
+    58014U,	// JNO_1
+    58014U,	// JNO_2
+    58014U,	// JNO_4
+    58075U,	// JNP_1
+    58075U,	// JNP_2
+    58075U,	// JNP_4
+    58299U,	// JNS_1
+    58299U,	// JNS_2
+    58299U,	// JNS_4
+    58010U,	// JO_1
+    58010U,	// JO_2
+    58010U,	// JO_4
+    58060U,	// JP_1
+    58060U,	// JP_2
+    58060U,	// JP_4
+    58580U,	// JRCXZ
+    58295U,	// JS_1
+    58295U,	// JS_2
+    58295U,	// JS_4
+    3625U,	// LAHF
+    21242689U,	// LAR16rm
+    12854081U,	// LAR16rr
+    21242689U,	// LAR32rm
+    12854081U,	// LAR32rr
+    21242689U,	// LAR64rm
+    12854081U,	// LAR64rr
+    279021U,	// LCMPXCHG16
+    98358U,	// LCMPXCHG16B
+    295405U,	// LCMPXCHG32
+    303597U,	// LCMPXCHG64
+    311789U,	// LCMPXCHG8
+    41026U,	// LCMPXCHG8B
+    46408611U,	// LDS16rm
+    46408611U,	// LDS32rm
+    8658976U,	// LEA16r
+    8658976U,	// LEA32r
+    8658976U,	// LEA64_32r
+    17047584U,	// LEA64r
+    3612U,	// LEAVE
+    3612U,	// LEAVE64
+    46408616U,	// LES16rm
+    46408616U,	// LES32rm
+    46408621U,	// LFS16rm
+    46408621U,	// LFS32rm
+    46408621U,	// LFS64rm
+    107498U,	// LGDT16m
+    107498U,	// LGDT32m
+    107498U,	// LGDT64m
+    46408626U,	// LGS16rm
+    46408626U,	// LGS32rm
+    46408626U,	// LGS64rm
+    107510U,	// LIDT16m
+    107510U,	// LIDT32m
+    107510U,	// LIDT64m
+    17410U,	// LLDT16m
+    9218U,	// LLDT16r
+    17512U,	// LMSW16m
+    9320U,	// LMSW16r
+    278715U,	// LOCK_ADD16mi
+    278715U,	// LOCK_ADD16mi8
+    278715U,	// LOCK_ADD16mr
+    295099U,	// LOCK_ADD32mi
+    295099U,	// LOCK_ADD32mi8
+    295099U,	// LOCK_ADD32mr
+    303291U,	// LOCK_ADD64mi32
+    303291U,	// LOCK_ADD64mi8
+    303291U,	// LOCK_ADD64mr
+    311483U,	// LOCK_ADD8mi
+    311483U,	// LOCK_ADD8mr
+    278764U,	// LOCK_AND16mi
+    278764U,	// LOCK_AND16mi8
+    278764U,	// LOCK_AND16mr
+    295148U,	// LOCK_AND32mi
+    295148U,	// LOCK_AND32mi8
+    295148U,	// LOCK_AND32mr
+    303340U,	// LOCK_AND64mi32
+    303340U,	// LOCK_AND64mi8
+    303340U,	// LOCK_AND64mr
+    311532U,	// LOCK_AND8mi
+    311532U,	// LOCK_AND8mr
+    16520U,	// LOCK_DEC16m
+    32904U,	// LOCK_DEC32m
+    41096U,	// LOCK_DEC64m
+    49288U,	// LOCK_DEC8m
+    16547U,	// LOCK_INC16m
+    32931U,	// LOCK_INC32m
+    41123U,	// LOCK_INC64m
+    49315U,	// LOCK_INC8m
+    279389U,	// LOCK_OR16mi
+    279389U,	// LOCK_OR16mi8
+    279389U,	// LOCK_OR16mr
+    295773U,	// LOCK_OR32mi
+    295773U,	// LOCK_OR32mi8
+    295773U,	// LOCK_OR32mr
+    303965U,	// LOCK_OR64mi32
+    303965U,	// LOCK_OR64mi8
+    303965U,	// LOCK_OR64mr
+    312157U,	// LOCK_OR8mi
+    312157U,	// LOCK_OR8mr
+    3693U,	// LOCK_PREFIX
+    278647U,	// LOCK_SUB16mi
+    278647U,	// LOCK_SUB16mi8
+    278647U,	// LOCK_SUB16mr
+    295031U,	// LOCK_SUB32mi
+    295031U,	// LOCK_SUB32mi8
+    295031U,	// LOCK_SUB32mr
+    303223U,	// LOCK_SUB64mi32
+    303223U,	// LOCK_SUB64mi8
+    303223U,	// LOCK_SUB64mr
+    311415U,	// LOCK_SUB8mi
+    311415U,	// LOCK_SUB8mr
+    279401U,	// LOCK_XOR16mi
+    279401U,	// LOCK_XOR16mi8
+    279401U,	// LOCK_XOR16mr
+    295785U,	// LOCK_XOR32mi
+    295785U,	// LOCK_XOR32mi8
+    295785U,	// LOCK_XOR32mr
+    303977U,	// LOCK_XOR64mi32
+    303977U,	// LOCK_XOR64mi8
+    303977U,	// LOCK_XOR64mr
+    312169U,	// LOCK_XOR8mi
+    312169U,	// LOCK_XOR8mr
+    140527U,	// LODSB
+    149019U,	// LODSL
+    157380U,	// LODSQ
+    165330U,	// LODSW
+    58100U,	// LOOP
+    57745U,	// LOOPE
+    57722U,	// LOOPNE
+    8674U,	// LRETIL
+    8988U,	// LRETIQ
+    8674U,	// LRETIW
+    3646U,	// LRETL
+    3832U,	// LRETQ
+    3646U,	// LRETW
+    21242480U,	// LSL16rm
+    12853872U,	// LSL16rr
+    8659568U,	// LSL32rm
+    12853872U,	// LSL32rr
+    17048176U,	// LSL64rm
+    12853872U,	// LSL64rr
+    46408655U,	// LSS16rm
+    46408655U,	// LSS32rm
+    46408655U,	// LSS64rm
+    17284U,	// LTRm
+    9092U,	// LTRr
+    172218U,	// LXADD16
+    180410U,	// LXADD32
+    188602U,	// LXADD64
+    196794U,	// LXADD8
+    21242899U,	// LZCNT16rm
+    12854291U,	// LZCNT16rr
+    8659987U,	// LZCNT32rm
+    12854291U,	// LZCNT32rr
+    17048595U,	// LZCNT64rm
+    12854291U,	// LZCNT64rr
+    3745U,	// MONTMUL
+    0U,	// MORESTACK_RET
+    0U,	// MORESTACK_RET_RESTORE_R10
+    2303069U,	// MOV16ao16
+    2303069U,	// MOV16ao16_16
+    279645U,	// MOV16mi
+    279645U,	// MOV16mr
+    279645U,	// MOV16ms
+    206270U,	// MOV16o16a
+    206270U,	// MOV16o16a_16
+    12854365U,	// MOV16ri
+    12854365U,	// MOV16ri_alt
+    21242973U,	// MOV16rm
+    12854365U,	// MOV16rr
+    12854365U,	// MOV16rr_REV
+    12854365U,	// MOV16rs
+    21242973U,	// MOV16sm
+    12854365U,	// MOV16sr
+    2573405U,	// MOV32ao32
+    2573405U,	// MOV32ao32_16
+    12854365U,	// MOV32cr
+    12854365U,	// MOV32dr
+    296029U,	// MOV32mi
+    296029U,	// MOV32mr
+    296029U,	// MOV32ms
+    214631U,	// MOV32o32a
+    214631U,	// MOV32o32a_16
+    0U,	// MOV32r0
+    12854365U,	// MOV32rc
+    12854365U,	// MOV32rd
+    12854365U,	// MOV32ri
+    0U,	// MOV32ri64
+    12854365U,	// MOV32ri_alt
+    8660061U,	// MOV32rm
+    12854365U,	// MOV32rr
+    12854365U,	// MOV32rr_REV
+    12854365U,	// MOV32rs
+    8660061U,	// MOV32sm
+    12854365U,	// MOV32sr
+    2302869U,	// MOV64ao16
+    2573205U,	// MOV64ao32
+    2843541U,	// MOV64ao64
+    3113877U,	// MOV64ao8
+    12854365U,	// MOV64cr
+    12854365U,	// MOV64dr
+    304221U,	// MOV64mi32
+    304221U,	// MOV64mr
+    304221U,	// MOV64ms
+    206248U,	// MOV64o16a
+    214607U,	// MOV64o32a
+    222938U,	// MOV64o64a
+    230712U,	// MOV64o8a
+    12854365U,	// MOV64rc
+    12854365U,	// MOV64rd
+    12854165U,	// MOV64ri
+    12854365U,	// MOV64ri32
+    17048669U,	// MOV64rm
+    12854365U,	// MOV64rr
+    12854365U,	// MOV64rr_REV
+    12854365U,	// MOV64rs
+    17048669U,	// MOV64sm
+    12854365U,	// MOV64sr
+    3114077U,	// MOV8ao8
+    3114077U,	// MOV8ao8_16
+    312413U,	// MOV8mi
+    312413U,	// MOV8mr
+    134530141U,	// MOV8mr_NOREX
+    230734U,	// MOV8o8a
+    230734U,	// MOV8o8a_16
+    12854365U,	// MOV8ri
+    12854365U,	// MOV8ri_alt
+    38020189U,	// MOV8rm
+    172237917U,	// MOV8rm_NOREX
+    12854365U,	// MOV8rr
+    147072093U,	// MOV8rr_NOREX
+    12854365U,	// MOV8rr_REV
+    278850U,	// MOVBE16mr
+    21242178U,	// MOVBE16rm
+    295234U,	// MOVBE32mr
+    8659266U,	// MOVBE32rm
+    303426U,	// MOVBE64mr
+    17047874U,	// MOVBE64rm
+    0U,	// MOVPC32r
+    50724970U,	// MOVSB
+    54911250U,	// MOVSL
+    59220785U,	// MOVSQ
+    63292552U,	// MOVSW
+    38020281U,	// MOVSX16rm8
+    12854457U,	// MOVSX16rr8
+    21243065U,	// MOVSX32rm16
+    38020281U,	// MOVSX32rm8
+    12854457U,	// MOVSX32rr16
+    12854457U,	// MOVSX32rr8
+    21243065U,	// MOVSX64rm16
+    8659225U,	// MOVSX64rm32
+    38020281U,	// MOVSX64rm8
+    12854457U,	// MOVSX64rr16
+    12853529U,	// MOVSX64rr32
+    12854457U,	// MOVSX64rr8
+    38020288U,	// MOVZX16rm8
+    12854464U,	// MOVZX16rr8
+    38020288U,	// MOVZX32_NOREXrm8
+    12854464U,	// MOVZX32_NOREXrr8
+    21243072U,	// MOVZX32rm16
+    38020288U,	// MOVZX32rm8
+    12854464U,	// MOVZX32rr16
+    12854464U,	// MOVZX32rr8
+    21243072U,	// MOVZX64rm16_Q
+    38020288U,	// MOVZX64rm8_Q
+    12854464U,	// MOVZX64rr16_Q
+    12854464U,	// MOVZX64rr8_Q
+    17020U,	// MUL16m
+    8828U,	// MUL16r
+    33404U,	// MUL32m
+    8828U,	// MUL32r
+    41596U,	// MUL64m
+    8828U,	// MUL64r
+    49788U,	// MUL8m
+    8828U,	// MUL8r
+    79963291U,	// MULX32rm
+    348398747U,	// MULX32rr
+    616834203U,	// MULX64rm
+    348398747U,	// MULX64rr
+    16872U,	// NEG16m
+    8680U,	// NEG16r
+    33256U,	// NEG32m
+    8680U,	// NEG32r
+    41448U,	// NEG64m
+    8680U,	// NEG64r
+    49640U,	// NEG8m
+    8680U,	// NEG8r
+    3811U,	// NOOP
+    33519U,	// NOOPL
+    17135U,	// NOOPW
+    17446U,	// NOT16m
+    9254U,	// NOT16r
+    33830U,	// NOT32m
+    9254U,	// NOT32r
+    42022U,	// NOT64m
+    9254U,	// NOT64r
+    50214U,	// NOT8m
+    9254U,	// NOT8r
+    9632U,	// OR16i16
+    279389U,	// OR16mi
+    279389U,	// OR16mi8
+    279389U,	// OR16mr
+    549725U,	// OR16ri
+    549725U,	// OR16ri8
+    811869U,	// OR16rm
+    549725U,	// OR16rr
+    4465501U,	// OR16rr_REV
+    9798U,	// OR32i32
+    295773U,	// OR32mi
+    295773U,	// OR32mi8
+    295773U,	// OR32mr
+    295773U,	// OR32mrLocked
+    549725U,	// OR32ri
+    549725U,	// OR32ri8
+    1074013U,	// OR32rm
+    549725U,	// OR32rr
+    4465501U,	// OR32rr_REV
+    9937U,	// OR64i32
+    303965U,	// OR64mi32
+    303965U,	// OR64mi8
+    303965U,	// OR64mr
+    549725U,	// OR64ri32
+    549725U,	// OR64ri8
+    1336157U,	// OR64rm
+    549725U,	// OR64rr
+    4465501U,	// OR64rr_REV
+    9520U,	// OR8i8
+    312157U,	// OR8mi
+    312157U,	// OR8mr
+    549725U,	// OR8ri
+    1598301U,	// OR8rm
+    549725U,	// OR8rr
+    4465501U,	// OR8rr_REV
+    2106444U,	// OUT16ir
+    4118U,	// OUT16rr
+    2368588U,	// OUT32ir
+    4172U,	// OUT32rr
+    2892876U,	// OUT8ir
+    3698U,	// OUT8rr
+    141042U,	// OUTSB
+    149245U,	// OUTSL
+    165640U,	// OUTSW
+    79962822U,	// PDEP32rm
+    348398278U,	// PDEP32rr
+    616833734U,	// PDEP64rm
+    348398278U,	// PDEP64rr
+    79963217U,	// PEXT32rm
+    348398673U,	// PEXT32rr
+    616834129U,	// PEXT64rm
+    348398673U,	// PEXT64rr
+    8954U,	// POP16r
+    17146U,	// POP16rmm
+    8954U,	// POP16rmr
+    8954U,	// POP32r
+    33530U,	// POP32rmm
+    8954U,	// POP32rmr
+    8954U,	// POP64r
+    41722U,	// POP64rmm
+    8954U,	// POP64rmr
+    4088U,	// POPA16
+    3716U,	// POPA32
+    3919U,	// POPDS16
+    3919U,	// POPDS32
+    3934U,	// POPES16
+    3934U,	// POPES32
+    3641U,	// POPF16
+    3523U,	// POPF32
+    3826U,	// POPF64
+    3949U,	// POPFS16
+    3949U,	// POPFS32
+    3949U,	// POPFS64
+    3964U,	// POPGS16
+    3964U,	// POPGS32
+    3964U,	// POPGS64
+    4031U,	// POPSS16
+    4031U,	// POPSS32
+    8719U,	// PUSH16i8
+    8719U,	// PUSH16r
+    16911U,	// PUSH16rmm
+    8719U,	// PUSH16rmr
+    8719U,	// PUSH32i8
+    8719U,	// PUSH32r
+    33295U,	// PUSH32rmm
+    8719U,	// PUSH32rmr
+    8719U,	// PUSH64i16
+    8719U,	// PUSH64i32
+    8719U,	// PUSH64i8
+    8719U,	// PUSH64r
+    41487U,	// PUSH64rmm
+    8719U,	// PUSH64rmr
+    4081U,	// PUSHA16
+    3709U,	// PUSHA32
+    3903U,	// PUSHCS16
+    3903U,	// PUSHCS32
+    3911U,	// PUSHDS16
+    3911U,	// PUSHDS32
+    3926U,	// PUSHES16
+    3926U,	// PUSHES32
+    3635U,	// PUSHF16
+    3516U,	// PUSHF32
+    3819U,	// PUSHF64
+    3941U,	// PUSHFS16
+    3941U,	// PUSHFS32
+    3941U,	// PUSHFS64
+    3956U,	// PUSHGS16
+    3956U,	// PUSHGS32
+    3956U,	// PUSHGS64
+    4023U,	// PUSHSS16
+    4023U,	// PUSHSS32
+    8719U,	// PUSHi16
+    8719U,	// PUSHi32
+    16958U,	// RCL16m1
+    3162686U,	// RCL16mCL
+    279102U,	// RCL16mi
+    8766U,	// RCL16r1
+    3154494U,	// RCL16rCL
+    4465214U,	// RCL16ri
+    33342U,	// RCL32m1
+    3179070U,	// RCL32mCL
+    295486U,	// RCL32mi
+    8766U,	// RCL32r1
+    3154494U,	// RCL32rCL
+    4465214U,	// RCL32ri
+    41534U,	// RCL64m1
+    3187262U,	// RCL64mCL
+    303678U,	// RCL64mi
+    8766U,	// RCL64r1
+    3154494U,	// RCL64rCL
+    4465214U,	// RCL64ri
+    49726U,	// RCL8m1
+    3195454U,	// RCL8mCL
+    311870U,	// RCL8mi
+    8766U,	// RCL8r1
+    3154494U,	// RCL8rCL
+    4465214U,	// RCL8ri
+    17227U,	// RCR16m1
+    3162955U,	// RCR16mCL
+    279371U,	// RCR16mi
+    9035U,	// RCR16r1
+    3154763U,	// RCR16rCL
+    4465483U,	// RCR16ri
+    33611U,	// RCR32m1
+    3179339U,	// RCR32mCL
+    295755U,	// RCR32mi
+    9035U,	// RCR32r1
+    3154763U,	// RCR32rCL
+    4465483U,	// RCR32ri
+    41803U,	// RCR64m1
+    3187531U,	// RCR64mCL
+    303947U,	// RCR64mi
+    9035U,	// RCR64r1
+    3154763U,	// RCR64rCL
+    4465483U,	// RCR64ri
+    49995U,	// RCR8m1
+    3195723U,	// RCR8mCL
+    312139U,	// RCR8mi
+    9035U,	// RCR8r1
+    3154763U,	// RCR8rCL
+    4465483U,	// RCR8ri
+    8600U,	// RDFSBASE
+    8600U,	// RDFSBASE64
+    8620U,	// RDGSBASE
+    8620U,	// RDGSBASE64
+    3873U,	// RDMSR
+    3493U,	// RDPMC
+    8425U,	// RDRAND16r
+    8425U,	// RDRAND32r
+    8425U,	// RDRAND64r
+    8384U,	// RDSEED16r
+    8384U,	// RDSEED32r
+    8384U,	// RDSEED64r
+    3506U,	// RDTSC
+    3800U,	// RDTSCP
+    3069U,	// RELEASE_MOV16mr
+    3069U,	// RELEASE_MOV32mr
+    3069U,	// RELEASE_MOV64mr
+    3069U,	// RELEASE_MOV8mr
+    3594U,	// REPNE_PREFIX
+    3437U,	// REP_MOVSB_32
+    3437U,	// REP_MOVSB_64
+    3549U,	// REP_MOVSD_32
+    3549U,	// REP_MOVSD_64
+    3848U,	// REP_MOVSQ_64
+    4108U,	// REP_MOVSW_32
+    4108U,	// REP_MOVSW_64
+    3807U,	// REP_PREFIX
+    3427U,	// REP_STOSB_32
+    3427U,	// REP_STOSB_64
+    3539U,	// REP_STOSD_32
+    3539U,	// REP_STOSD_64
+    3838U,	// REP_STOSQ_64
+    4098U,	// REP_STOSW_32
+    4098U,	// REP_STOSW_64
+    9230U,	// RETIL
+    9230U,	// RETIQ
+    9230U,	// RETIW
+    4044U,	// RETL
+    4044U,	// RETQ
+    4044U,	// RETW
+    3272U,	// REX64_PREFIX
+    3424869U,	// ROL16m1
+    3162725U,	// ROL16mCL
+    279141U,	// ROL16mi
+    3416677U,	// ROL16r1
+    3154533U,	// ROL16rCL
+    4465253U,	// ROL16ri
+    3441253U,	// ROL32m1
+    3179109U,	// ROL32mCL
+    295525U,	// ROL32mi
+    3416677U,	// ROL32r1
+    3154533U,	// ROL32rCL
+    4465253U,	// ROL32ri
+    3449445U,	// ROL64m1
+    3187301U,	// ROL64mCL
+    303717U,	// ROL64mi
+    3416677U,	// ROL64r1
+    3154533U,	// ROL64rCL
+    4465253U,	// ROL64ri
+    3457637U,	// ROL8m1
+    3195493U,	// ROL8mCL
+    311909U,	// ROL8mi
+    3416677U,	// ROL8r1
+    3154533U,	// ROL8rCL
+    4465253U,	// ROL8ri
+    3425116U,	// ROR16m1
+    3162972U,	// ROR16mCL
+    279388U,	// ROR16mi
+    3416924U,	// ROR16r1
+    3154780U,	// ROR16rCL
+    4465500U,	// ROR16ri
+    3441500U,	// ROR32m1
+    3179356U,	// ROR32mCL
+    295772U,	// ROR32mi
+    3416924U,	// ROR32r1
+    3154780U,	// ROR32rCL
+    4465500U,	// ROR32ri
+    3449692U,	// ROR64m1
+    3187548U,	// ROR64mCL
+    303964U,	// ROR64mi
+    3416924U,	// ROR64r1
+    3154780U,	// ROR64rCL
+    4465500U,	// ROR64ri
+    3457884U,	// ROR8m1
+    3195740U,	// ROR8mCL
+    312156U,	// ROR8mi
+    3416924U,	// ROR8r1
+    3154780U,	// ROR8rCL
+    4465500U,	// ROR8ri
+    881075379U,	// RORX32mi
+    348398771U,	// RORX32ri
+    889463987U,	// RORX64mi
+    348398771U,	// RORX64ri
+    3760U,	// RSM
+    3630U,	// SAHF
+    3480U,	// SALC
+    3425094U,	// SAR16m1
+    3162950U,	// SAR16mCL
+    279366U,	// SAR16mi
+    3416902U,	// SAR16r1
+    3154758U,	// SAR16rCL
+    4465478U,	// SAR16ri
+    3441478U,	// SAR32m1
+    3179334U,	// SAR32mCL
+    295750U,	// SAR32mi
+    3416902U,	// SAR32r1
+    3154758U,	// SAR32rCL
+    4465478U,	// SAR32ri
+    3449670U,	// SAR64m1
+    3187526U,	// SAR64mCL
+    303942U,	// SAR64mi
+    3416902U,	// SAR64r1
+    3154758U,	// SAR64rCL
+    4465478U,	// SAR64ri
+    3457862U,	// SAR8m1
+    3195718U,	// SAR8mCL
+    312134U,	// SAR8mi
+    3416902U,	// SAR8r1
+    3154758U,	// SAR8rCL
+    4465478U,	// SAR8ri
+    881075367U,	// SARX32rm
+    348398759U,	// SARX32rr
+    889463975U,	// SARX64rm
+    348398759U,	// SARX64rr
+    9559U,	// SBB16i16
+    278605U,	// SBB16mi
+    278605U,	// SBB16mi8
+    278605U,	// SBB16mr
+    548941U,	// SBB16ri
+    548941U,	// SBB16ri8
+    811085U,	// SBB16rm
+    548941U,	// SBB16rr
+    4464717U,	// SBB16rr_REV
+    9693U,	// SBB32i32
+    294989U,	// SBB32mi
+    294989U,	// SBB32mi8
+    294989U,	// SBB32mr
+    548941U,	// SBB32ri
+    548941U,	// SBB32ri8
+    1073229U,	// SBB32rm
+    548941U,	// SBB32rr
+    4464717U,	// SBB32rr_REV
+    9841U,	// SBB64i32
+    303181U,	// SBB64mi32
+    303181U,	// SBB64mi8
+    303181U,	// SBB64mr
+    548941U,	// SBB64ri32
+    548941U,	// SBB64ri8
+    1335373U,	// SBB64rm
+    548941U,	// SBB64rr
+    4464717U,	// SBB64rr_REV
+    9435U,	// SBB8i8
+    311373U,	// SBB8mi
+    311373U,	// SBB8mr
+    548941U,	// SBB8ri
+    1597517U,	// SBB8rm
+    548941U,	// SBB8rr
+    4464717U,	// SBB8rr_REV
+    116167U,	// SCAS16
+    124431U,	// SCAS32
+    239288U,	// SCAS64
+    132324U,	// SCAS8
+    3978U,	// SEG_ALLOCA_32
+    3978U,	// SEG_ALLOCA_64
+    49446U,	// SETAEm
+    8486U,	// SETAEr
+    49193U,	// SETAm
+    8233U,	// SETAr
+    49466U,	// SETBEm
+    8506U,	// SETBEr
+    0U,	// SETB_C16r
+    0U,	// SETB_C32r
+    0U,	// SETB_C64r
+    0U,	// SETB_C8r
+    49265U,	// SETBm
+    8305U,	// SETBr
+    49600U,	// SETEm
+    8640U,	// SETEr
+    49486U,	// SETGEm
+    8526U,	// SETGEr
+    49666U,	// SETGm
+    8706U,	// SETGr
+    49510U,	// SETLEm
+    8550U,	// SETLEr
+    49781U,	// SETLm
+    8821U,	// SETLr
+    49538U,	// SETNEm
+    8578U,	// SETNEr
+    49827U,	// SETNOm
+    8867U,	// SETNOr
+    49888U,	// SETNPm
+    8928U,	// SETNPr
+    50112U,	// SETNSm
+    9152U,	// SETNSr
+    49842U,	// SETOm
+    8882U,	// SETOr
+    49919U,	// SETPm
+    8959U,	// SETPr
+    50137U,	// SETSm
+    9177U,	// SETSr
+    107504U,	// SGDT16m
+    107504U,	// SGDT32m
+    107504U,	// SGDT64m
+    3424835U,	// SHL16m1
+    3162691U,	// SHL16mCL
+    279107U,	// SHL16mi
+    3416643U,	// SHL16r1
+    3154499U,	// SHL16rCL
+    4465219U,	// SHL16ri
+    3441219U,	// SHL32m1
+    3179075U,	// SHL32mCL
+    295491U,	// SHL32mi
+    3416643U,	// SHL32r1
+    3154499U,	// SHL32rCL
+    4465219U,	// SHL32ri
+    3449411U,	// SHL64m1
+    3187267U,	// SHL64mCL
+    303683U,	// SHL64mi
+    3416643U,	// SHL64r1
+    3154499U,	// SHL64rCL
+    4465219U,	// SHL64ri
+    3457603U,	// SHL8m1
+    3195459U,	// SHL8mCL
+    311875U,	// SHL8mi
+    3416643U,	// SHL8r1
+    3154499U,	// SHL8rCL
+    4465219U,	// SHL8ri
+    201605338U,	// SHLD16mrCL
+    872693978U,	// SHLD16mri8
+    205791450U,	// SHLD16rrCL
+    1145315546U,	// SHLD16rri8
+    201621722U,	// SHLD32mrCL
+    872710362U,	// SHLD32mri8
+    205791450U,	// SHLD32rrCL
+    1145315546U,	// SHLD32rri8
+    201629914U,	// SHLD64mrCL
+    872718554U,	// SHLD64mri8
+    205791450U,	// SHLD64rrCL
+    1145315546U,	// SHLD64rri8
+    881075349U,	// SHLX32rm
+    348398741U,	// SHLX32rr
+    889463957U,	// SHLX64rm
+    348398741U,	// SHLX64rr
+    3425111U,	// SHR16m1
+    3162967U,	// SHR16mCL
+    279383U,	// SHR16mi
+    3416919U,	// SHR16r1
+    3154775U,	// SHR16rCL
+    4465495U,	// SHR16ri
+    3441495U,	// SHR32m1
+    3179351U,	// SHR32mCL
+    295767U,	// SHR32mi
+    3416919U,	// SHR32r1
+    3154775U,	// SHR32rCL
+    4465495U,	// SHR32ri
+    3449687U,	// SHR64m1
+    3187543U,	// SHR64mCL
+    303959U,	// SHR64mi
+    3416919U,	// SHR64r1
+    3154775U,	// SHR64rCL
+    4465495U,	// SHR64ri
+    3457879U,	// SHR8m1
+    3195735U,	// SHR8mCL
+    312151U,	// SHR8mi
+    3416919U,	// SHR8r1
+    3154775U,	// SHR8rCL
+    4465495U,	// SHR8ri
+    201605368U,	// SHRD16mrCL
+    872694008U,	// SHRD16mri8
+    205791480U,	// SHRD16rrCL
+    1145315576U,	// SHRD16rri8
+    201621752U,	// SHRD32mrCL
+    872710392U,	// SHRD32mri8
+    205791480U,	// SHRD32rrCL
+    1145315576U,	// SHRD32rri8
+    201629944U,	// SHRD64mrCL
+    872718584U,	// SHRD64mri8
+    205791480U,	// SHRD64rrCL
+    1145315576U,	// SHRD64rri8
+    881075373U,	// SHRX32rm
+    348398765U,	// SHRX32rr
+    889463981U,	// SHRX64rm
+    348398765U,	// SHRX64rr
+    107516U,	// SIDT16m
+    107516U,	// SIDT32m
+    107516U,	// SIDT64m
+    4161U,	// SKINIT
+    17416U,	// SLDT16m
+    9224U,	// SLDT16r
+    9224U,	// SLDT32r
+    17416U,	// SLDT64m
+    9224U,	// SLDT64r
+    17518U,	// SMSW16m
+    9326U,	// SMSW16r
+    9326U,	// SMSW32r
+    9326U,	// SMSW64r
+    4028U,	// SS_PREFIX
+    3458U,	// STAC
+    3512U,	// STC
+    3565U,	// STD
+    3665U,	// STGI
+    3674U,	// STI
+    3014748U,	// STOSB
+    2482436U,	// STOSL
+    2859811U,	// STOSQ
+    2212986U,	// STOSW
+    9097U,	// STR16r
+    9097U,	// STR32r
+    9097U,	// STR64r
+    17289U,	// STRm
+    9568U,	// SUB16i16
+    278647U,	// SUB16mi
+    278647U,	// SUB16mi8
+    278647U,	// SUB16mr
+    548983U,	// SUB16ri
+    548983U,	// SUB16ri8
+    811127U,	// SUB16rm
+    548983U,	// SUB16rr
+    4464759U,	// SUB16rr_REV
+    9703U,	// SUB32i32
+    295031U,	// SUB32mi
+    295031U,	// SUB32mi8
+    295031U,	// SUB32mr
+    548983U,	// SUB32ri
+    548983U,	// SUB32ri8
+    1073271U,	// SUB32rm
+    548983U,	// SUB32rr
+    4464759U,	// SUB32rr_REV
+    9851U,	// SUB64i32
+    303223U,	// SUB64mi32
+    303223U,	// SUB64mi8
+    303223U,	// SUB64mr
+    548983U,	// SUB64ri32
+    548983U,	// SUB64ri8
+    1335415U,	// SUB64rm
+    548983U,	// SUB64rr
+    4464759U,	// SUB64rr_REV
+    9466U,	// SUB8i8
+    311415U,	// SUB8mi
+    311415U,	// SUB8mr
+    548983U,	// SUB8ri
+    1597559U,	// SUB8rm
+    548983U,	// SUB8rr
+    4464759U,	// SUB8rr_REV
+    3971U,	// SWAPGS
+    3737U,	// SYSCALL
+    3864U,	// SYSENTER
+    4055U,	// SYSEXIT
+    4055U,	// SYSEXIT64
+    4048U,	// SYSRET
+    4048U,	// SYSRET64
+    8659099U,	// T1MSKC32rm
+    12853403U,	// T1MSKC32rr
+    17047707U,	// T1MSKC64rm
+    12853403U,	// T1MSKC64rr
+    3728086U,	// TAILJMPd
+    3728086U,	// TAILJMPd64
+    3703510U,	// TAILJMPm
+    3711702U,	// TAILJMPm64
+    0U,	// TAILJMPr
+    3678934U,	// TAILJMPr64
+    0U,	// TCRETURNdi
+    0U,	// TCRETURNdi64
+    0U,	// TCRETURNmi
+    0U,	// TCRETURNmi64
+    0U,	// TCRETURNri
+    0U,	// TCRETURNri64
+    9652U,	// TEST16i16
+    279613U,	// TEST16mi
+    12854333U,	// TEST16ri
+    21242941U,	// TEST16rm
+    12854333U,	// TEST16rr
+    9820U,	// TEST32i32
+    295997U,	// TEST32mi
+    12854333U,	// TEST32ri
+    8660029U,	// TEST32rm
+    12854333U,	// TEST32rr
+    9959U,	// TEST64i32
+    304189U,	// TEST64mi32
+    12854333U,	// TEST64ri32
+    17048637U,	// TEST64rm
+    12854333U,	// TEST64rr
+    9540U,	// TEST8i8
+    312381U,	// TEST8mi
+    12854333U,	// TEST8ri
+    0U,	// TEST8ri_NOREX
+    38020157U,	// TEST8rm
+    12854333U,	// TEST8rr
+    3138U,	// TLSCall_32
+    3228U,	// TLSCall_64
+    3151U,	// TLS_addr32
+    3241U,	// TLS_addr64
+    3164U,	// TLS_base_addr32
+    3254U,	// TLS_base_addr64
+    3182U,	// TRAP
+    21242906U,	// TZCNT16rm
+    12854298U,	// TZCNT16rr
+    8659994U,	// TZCNT32rm
+    12854298U,	// TZCNT32rr
+    17048602U,	// TZCNT64rm
+    12854298U,	// TZCNT64rr
+    8659511U,	// TZMSK32rm
+    12853815U,	// TZMSK32rr
+    17048119U,	// TZMSK64rm
+    12853815U,	// TZMSK64rr
+    3392U,	// UD2B
+    3057919763U,	// VAARG_64
+    348399413U,	// VASTART_SAVE_XMM_REGS
+    17262U,	// VERRm
+    9070U,	// VERRr
+    17506U,	// VERWm
+    9314U,	// VERWr
+    3730U,	// VMCALL
+    41784U,	// VMCLEARm
+    3499U,	// VMFUNC
+    3651U,	// VMLAUNCH
+    4129U,	// VMLOAD32
+    4184U,	// VMLOAD64
+    3722U,	// VMMCALL
+    41184U,	// VMPTRLDm
+    42051U,	// VMPTRSTm
+    295090U,	// VMREAD32rm
+    12853426U,	// VMREAD32rr
+    303282U,	// VMREAD64rm
+    12853426U,	// VMREAD64rr
+    3585U,	// VMRESUME
+    4151U,	// VMRUN32
+    4206U,	// VMRUN64
+    4140U,	// VMSAVE32
+    4195U,	// VMSAVE64
+    8659398U,	// VMWRITE32rm
+    12853702U,	// VMWRITE32rr
+    17048006U,	// VMWRITE64rm
+    12853702U,	// VMWRITE64rr
+    3618U,	// VMXOFF
+    41619U,	// VMXON
+    57933U,	// W64ALLOCA
+    3569U,	// WBINVD
+    3764U,	// WIN_ALLOCA
+    3678U,	// WIN_FTOL_32
+    3678U,	// WIN_FTOL_64
+    8610U,	// WRFSBASE
+    8610U,	// WRFSBASE64
+    8630U,	// WRGSBASE
+    8630U,	// WRGSBASE64
+    3879U,	// WRMSR
+    278714U,	// XADD16rm
+    12853434U,	// XADD16rr
+    295098U,	// XADD32rm
+    12853434U,	// XADD32rr
+    303290U,	// XADD64rm
+    12853434U,	// XADD64rr
+    311482U,	// XADD8rm
+    12853434U,	// XADD8rr
+    9604U,	// XCHG16ar
+    172528U,	// XCHG16rm
+    246256U,	// XCHG16rr
+    9767U,	// XCHG32ar
+    9767U,	// XCHG32ar64
+    180720U,	// XCHG32rm
+    246256U,	// XCHG32rr
+    9891U,	// XCHG64ar
+    188912U,	// XCHG64rm
+    246256U,	// XCHG64rr
+    197104U,	// XCHG8rm
+    246256U,	// XCHG8rr
+    3463U,	// XCRYPTCBC
+    3407U,	// XCRYPTCFB
+    3885U,	// XCRYPTCTR
+    3397U,	// XCRYPTECB
+    3417U,	// XCRYPTOFB
+    4067U,	// XGETBV
+    3447U,	// XLAT
+    9631U,	// XOR16i16
+    279401U,	// XOR16mi
+    279401U,	// XOR16mi8
+    279401U,	// XOR16mr
+    549737U,	// XOR16ri
+    549737U,	// XOR16ri8
+    811881U,	// XOR16rm
+    549737U,	// XOR16rr
+    4465513U,	// XOR16rr_REV
+    9797U,	// XOR32i32
+    295785U,	// XOR32mi
+    295785U,	// XOR32mi8
+    295785U,	// XOR32mr
+    549737U,	// XOR32ri
+    549737U,	// XOR32ri8
+    1074025U,	// XOR32rm
+    549737U,	// XOR32rr
+    4465513U,	// XOR32rr_REV
+    9936U,	// XOR64i32
+    303977U,	// XOR64mi32
+    303977U,	// XOR64mi8
+    303977U,	// XOR64mr
+    549737U,	// XOR64ri32
+    549737U,	// XOR64ri8
+    1336169U,	// XOR64rm
+    549737U,	// XOR64rr
+    4465513U,	// XOR64rr_REV
+    9519U,	// XOR8i8
+    312169U,	// XOR8mi
+    312169U,	// XOR8mr
+    549737U,	// XOR8ri
+    1598313U,	// XOR8rm
+    549737U,	// XOR8rr
+    4465513U,	// XOR8rr_REV
+    107361U,	// XRSTOR
+    106506U,	// XRSTOR64
+    106959U,	// XSAVE
+    106497U,	// XSAVE64
+    107571U,	// XSAVEOPT
+    106516U,	// XSAVEOPT64
+    4074U,	// XSETBV
+    3090U,	// XSHA1
+    3285U,	// XSHA256
+    3605U,	// XSTORE
+    0U
+  };
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 'x', 's', 'a', 'v', 'e', '6', '4', 9, 0,
+  /* 9 */ 'x', 'r', 's', 't', 'o', 'r', '6', '4', 9, 0,
+  /* 19 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', '6', '4', 9, 0,
+  /* 31 */ 'l', 'e', 'a', 9, 0,
+  /* 36 */ 'j', 'a', 9, 0,
+  /* 40 */ 's', 'e', 't', 'a', 9, 0,
+  /* 46 */ 'c', 'm', 'o', 'v', 'a', 9, 0,
+  /* 53 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '1', '6', 'b', 9, 0,
+  /* 65 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '8', 'b', 9, 0,
+  /* 76 */ 's', 'b', 'b', 9, 0,
+  /* 81 */ 'j', 'b', 9, 0,
+  /* 85 */ 'i', 'n', 's', 'b', 9, 0,
+  /* 91 */ 's', 't', 'o', 's', 'b', 9, 0,
+  /* 98 */ 'c', 'm', 'p', 's', 'b', 9, 0,
+  /* 105 */ 'm', 'o', 'v', 's', 'b', 9, 0,
+  /* 112 */ 's', 'e', 't', 'b', 9, 0,
+  /* 118 */ 's', 'u', 'b', 9, 0,
+  /* 123 */ 'c', 'm', 'o', 'v', 'b', 9, 0,
+  /* 130 */ 'a', 'd', 'c', 9, 0,
+  /* 135 */ 'd', 'e', 'c', 9, 0,
+  /* 140 */ 'b', 'l', 'c', 'i', 'c', 9, 0,
+  /* 147 */ 'b', 'l', 's', 'i', 'c', 9, 0,
+  /* 154 */ 't', '1', 'm', 's', 'k', 'c', 9, 0,
+  /* 162 */ 'i', 'n', 'c', 9, 0,
+  /* 167 */ 'b', 't', 'c', 9, 0,
+  /* 172 */ 'a', 'a', 'd', 9, 0,
+  /* 177 */ 'v', 'm', 'r', 'e', 'a', 'd', 9, 0,
+  /* 185 */ 'x', 'a', 'd', 'd', 9, 0,
+  /* 191 */ 'r', 'd', 's', 'e', 'e', 'd', 9, 0,
+  /* 199 */ 'i', 'n', 'v', 'p', 'c', 'i', 'd', 9, 0,
+  /* 208 */ 'i', 'n', 'v', 'v', 'p', 'i', 'd', 9, 0,
+  /* 217 */ 's', 'h', 'l', 'd', 9, 0,
+  /* 223 */ 'v', 'm', 'p', 't', 'r', 'l', 'd', 9, 0,
+  /* 232 */ 'r', 'd', 'r', 'a', 'n', 'd', 9, 0,
+  /* 240 */ 'b', 'o', 'u', 'n', 'd', 9, 0,
+  /* 247 */ 's', 'h', 'r', 'd', 9, 0,
+  /* 253 */ 'i', 'n', 's', 'd', 9, 0,
+  /* 259 */ 's', 't', 'o', 's', 'd', 9, 0,
+  /* 266 */ 'c', 'm', 'p', 's', 'd', 9, 0,
+  /* 273 */ 'm', 'o', 'v', 's', 'd', 9, 0,
+  /* 280 */ 'm', 'o', 'v', 's', 'x', 'd', 9, 0,
+  /* 288 */ 'j', 'a', 'e', 9, 0,
+  /* 293 */ 's', 'e', 't', 'a', 'e', 9, 0,
+  /* 300 */ 'c', 'm', 'o', 'v', 'a', 'e', 9, 0,
+  /* 308 */ 'j', 'b', 'e', 9, 0,
+  /* 313 */ 's', 'e', 't', 'b', 'e', 9, 0,
+  /* 320 */ 'c', 'm', 'o', 'v', 'b', 'e', 9, 0,
+  /* 328 */ 'j', 'g', 'e', 9, 0,
+  /* 333 */ 's', 'e', 't', 'g', 'e', 9, 0,
+  /* 340 */ 'c', 'm', 'o', 'v', 'g', 'e', 9, 0,
+  /* 348 */ 'j', 'e', 9, 0,
+  /* 352 */ 'j', 'l', 'e', 9, 0,
+  /* 357 */ 's', 'e', 't', 'l', 'e', 9, 0,
+  /* 364 */ 'c', 'm', 'o', 'v', 'l', 'e', 9, 0,
+  /* 372 */ 'j', 'n', 'e', 9, 0,
+  /* 377 */ 'l', 'o', 'o', 'p', 'n', 'e', 9, 0,
+  /* 385 */ 's', 'e', 't', 'n', 'e', 9, 0,
+  /* 392 */ 'c', 'm', 'o', 'v', 'n', 'e', 9, 0,
+  /* 400 */ 'l', 'o', 'o', 'p', 'e', 9, 0,
+  /* 407 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 9, 0,
+  /* 417 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 9, 0,
+  /* 427 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 9, 0,
+  /* 437 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 9, 0,
+  /* 447 */ 's', 'e', 't', 'e', 9, 0,
+  /* 453 */ 'v', 'm', 'w', 'r', 'i', 't', 'e', 9, 0,
+  /* 462 */ 'x', 's', 'a', 'v', 'e', 9, 0,
+  /* 469 */ 'c', 'm', 'o', 'v', 'e', 9, 0,
+  /* 476 */ 'b', 's', 'f', 9, 0,
+  /* 481 */ 'r', 'e', 't', 'f', 9, 0,
+  /* 487 */ 'n', 'e', 'g', 9, 0,
+  /* 492 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 9, 0,
+  /* 501 */ 'j', 'g', 9, 0,
+  /* 505 */ 'i', 'n', 'v', 'l', 'p', 'g', 9, 0,
+  /* 513 */ 's', 'e', 't', 'g', 9, 0,
+  /* 519 */ 'c', 'm', 'o', 'v', 'g', 9, 0,
+  /* 526 */ 'p', 'u', 's', 'h', 9, 0,
+  /* 532 */ 'b', 'l', 'c', 'i', 9, 0,
+  /* 538 */ 'b', 'z', 'h', 'i', 9, 0,
+  /* 544 */ 'b', 'l', 's', 'i', 9, 0,
+  /* 550 */ 'b', 'l', 'c', 'm', 's', 'k', 9, 0,
+  /* 558 */ 'b', 'l', 's', 'm', 's', 'k', 9, 0,
+  /* 566 */ 't', 'z', 'm', 's', 'k', 9, 0,
+  /* 573 */ 'r', 'c', 'l', 9, 0,
+  /* 578 */ 's', 'h', 'l', 9, 0,
+  /* 583 */ 'j', 'l', 9, 0,
+  /* 587 */ 'l', 'c', 'a', 'l', 'l', 9, 0,
+  /* 594 */ 'b', 'l', 'c', 'f', 'i', 'l', 'l', 9, 0,
+  /* 603 */ 'b', 'l', 's', 'f', 'i', 'l', 'l', 9, 0,
+  /* 612 */ 'r', 'o', 'l', 9, 0,
+  /* 617 */ 'a', 'r', 'p', 'l', 9, 0,
+  /* 623 */ 'l', 's', 'l', 9, 0,
+  /* 628 */ 's', 'e', 't', 'l', 9, 0,
+  /* 634 */ 'i', 'm', 'u', 'l', 9, 0,
+  /* 640 */ 'c', 'm', 'o', 'v', 'l', 9, 0,
+  /* 647 */ 'a', 'a', 'm', 9, 0,
+  /* 652 */ 'a', 'n', 'd', 'n', 9, 0,
+  /* 658 */ 'v', 'm', 'x', 'o', 'n', 9, 0,
+  /* 665 */ 'j', 'o', 9, 0,
+  /* 669 */ 'j', 'n', 'o', 9, 0,
+  /* 674 */ 's', 'e', 't', 'n', 'o', 9, 0,
+  /* 681 */ 'c', 'm', 'o', 'v', 'n', 'o', 9, 0,
+  /* 689 */ 's', 'e', 't', 'o', 9, 0,
+  /* 695 */ 'c', 'm', 'o', 'v', 'o', 9, 0,
+  /* 702 */ 'b', 's', 'w', 'a', 'p', 9, 0,
+  /* 709 */ 'p', 'd', 'e', 'p', 9, 0,
+  /* 715 */ 'j', 'p', 9, 0,
+  /* 719 */ 'c', 'm', 'p', 9, 0,
+  /* 724 */ 'l', 'j', 'm', 'p', 9, 0,
+  /* 730 */ 'j', 'n', 'p', 9, 0,
+  /* 735 */ 's', 'e', 't', 'n', 'p', 9, 0,
+  /* 742 */ 'c', 'm', 'o', 'v', 'n', 'p', 9, 0,
+  /* 750 */ 'n', 'o', 'p', 9, 0,
+  /* 755 */ 'l', 'o', 'o', 'p', 9, 0,
+  /* 761 */ 'p', 'o', 'p', 9, 0,
+  /* 766 */ 's', 'e', 't', 'p', 9, 0,
+  /* 772 */ '#', 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'u', 'p', 9, 0,
+  /* 788 */ 'c', 'm', 'o', 'v', 'p', 9, 0,
+  /* 795 */ 'r', 'e', 't', 'f', 'q', 9, 0,
+  /* 802 */ 's', 't', 'o', 's', 'q', 9, 0,
+  /* 809 */ 'c', 'm', 'p', 's', 'q', 9, 0,
+  /* 816 */ 'm', 'o', 'v', 's', 'q', 9, 0,
+  /* 823 */ 'v', 'm', 'c', 'l', 'e', 'a', 'r', 9, 0,
+  /* 832 */ 'l', 'a', 'r', 9, 0,
+  /* 837 */ 's', 'a', 'r', 9, 0,
+  /* 842 */ 'r', 'c', 'r', 9, 0,
+  /* 847 */ 'e', 'n', 't', 'e', 'r', 9, 0,
+  /* 854 */ 's', 'h', 'r', 9, 0,
+  /* 859 */ 'r', 'o', 'r', 9, 0,
+  /* 864 */ 'x', 'r', 's', 't', 'o', 'r', 9, 0,
+  /* 872 */ 'x', 'o', 'r', 9, 0,
+  /* 877 */ 'v', 'e', 'r', 'r', 9, 0,
+  /* 883 */ 'b', 's', 'r', 9, 0,
+  /* 888 */ 'b', 'l', 's', 'r', 9, 0,
+  /* 894 */ 'b', 't', 'r', 9, 0,
+  /* 899 */ 'l', 't', 'r', 9, 0,
+  /* 904 */ 's', 't', 'r', 9, 0,
+  /* 909 */ 'b', 'e', 'x', 't', 'r', 9, 0,
+  /* 916 */ 'm', 'o', 'v', 'a', 'b', 's', 9, 0,
+  /* 924 */ 'b', 'l', 'c', 's', 9, 0,
+  /* 930 */ 'l', 'd', 's', 9, 0,
+  /* 935 */ 'l', 'e', 's', 9, 0,
+  /* 940 */ 'l', 'f', 's', 9, 0,
+  /* 945 */ 'l', 'g', 's', 9, 0,
+  /* 950 */ 'j', 's', 9, 0,
+  /* 954 */ 'j', 'n', 's', 9, 0,
+  /* 959 */ 's', 'e', 't', 'n', 's', 9, 0,
+  /* 966 */ 'c', 'm', 'o', 'v', 'n', 's', 9, 0,
+  /* 974 */ 'l', 's', 's', 9, 0,
+  /* 979 */ 'b', 't', 's', 9, 0,
+  /* 984 */ 's', 'e', 't', 's', 9, 0,
+  /* 990 */ 'c', 'm', 'o', 'v', 's', 9, 0,
+  /* 997 */ 'b', 't', 9, 0,
+  /* 1001 */ 'l', 'g', 'd', 't', 9, 0,
+  /* 1007 */ 's', 'g', 'd', 't', 9, 0,
+  /* 1013 */ 'l', 'i', 'd', 't', 9, 0,
+  /* 1019 */ 's', 'i', 'd', 't', 9, 0,
+  /* 1025 */ 'l', 'l', 'd', 't', 9, 0,
+  /* 1031 */ 's', 'l', 'd', 't', 9, 0,
+  /* 1037 */ 'r', 'e', 't', 9, 0,
+  /* 1042 */ 'l', 'z', 'c', 'n', 't', 9, 0,
+  /* 1049 */ 't', 'z', 'c', 'n', 't', 9, 0,
+  /* 1056 */ 'i', 'n', 't', 9, 0,
+  /* 1061 */ 'n', 'o', 't', 9, 0,
+  /* 1066 */ 'i', 'n', 'v', 'e', 'p', 't', 9, 0,
+  /* 1074 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', 9, 0,
+  /* 1084 */ 't', 'e', 's', 't', 9, 0,
+  /* 1090 */ 'v', 'm', 'p', 't', 'r', 's', 't', 9, 0,
+  /* 1099 */ 'o', 'u', 't', 9, 0,
+  /* 1104 */ 'p', 'e', 'x', 't', 9, 0,
+  /* 1110 */ 'i', 'd', 'i', 'v', 9, 0,
+  /* 1116 */ 'm', 'o', 'v', 9, 0,
+  /* 1121 */ 'v', 'e', 'r', 'w', 9, 0,
+  /* 1127 */ 'l', 'm', 's', 'w', 9, 0,
+  /* 1133 */ 's', 'm', 's', 'w', 9, 0,
+  /* 1139 */ 'i', 'n', 's', 'w', 9, 0,
+  /* 1145 */ 's', 't', 'o', 's', 'w', 9, 0,
+  /* 1152 */ 'c', 'm', 'p', 's', 'w', 9, 0,
+  /* 1159 */ 'm', 'o', 'v', 's', 'w', 9, 0,
+  /* 1166 */ 'a', 'd', 'c', 'x', 9, 0,
+  /* 1172 */ 's', 'h', 'l', 'x', 9, 0,
+  /* 1178 */ 'm', 'u', 'l', 'x', 9, 0,
+  /* 1184 */ 'a', 'd', 'o', 'x', 9, 0,
+  /* 1190 */ 's', 'a', 'r', 'x', 9, 0,
+  /* 1196 */ 's', 'h', 'r', 'x', 9, 0,
+  /* 1202 */ 'r', 'o', 'r', 'x', 9, 0,
+  /* 1208 */ 'm', 'o', 'v', 's', 'x', 9, 0,
+  /* 1215 */ 'm', 'o', 'v', 'z', 'x', 9, 0,
+  /* 1222 */ 'j', 'e', 'c', 'x', 'z', 9, 0,
+  /* 1229 */ 'j', 'c', 'x', 'z', 9, 0,
+  /* 1235 */ 'j', 'r', 'c', 'x', 'z', 9, 0,
+  /* 1242 */ 's', 'b', 'b', 9, 'a', 'l', ',', 32, 0,
+  /* 1251 */ 's', 'c', 'a', 's', 'b', 9, 'a', 'l', ',', 32, 0,
+  /* 1262 */ 'l', 'o', 'd', 's', 'b', 9, 'a', 'l', ',', 32, 0,
+  /* 1273 */ 's', 'u', 'b', 9, 'a', 'l', ',', 32, 0,
+  /* 1282 */ 'a', 'd', 'c', 9, 'a', 'l', ',', 32, 0,
+  /* 1291 */ 'a', 'd', 'd', 9, 'a', 'l', ',', 32, 0,
+  /* 1300 */ 'a', 'n', 'd', 9, 'a', 'l', ',', 32, 0,
+  /* 1309 */ 'i', 'n', 9, 'a', 'l', ',', 32, 0,
+  /* 1317 */ 'c', 'm', 'p', 9, 'a', 'l', ',', 32, 0,
+  /* 1326 */ 'x', 'o', 'r', 9, 'a', 'l', ',', 32, 0,
+  /* 1335 */ 'm', 'o', 'v', 'a', 'b', 's', 9, 'a', 'l', ',', 32, 0,
+  /* 1347 */ 't', 'e', 's', 't', 9, 'a', 'l', ',', 32, 0,
+  /* 1357 */ 'm', 'o', 'v', 9, 'a', 'l', ',', 32, 0,
+  /* 1366 */ 's', 'b', 'b', 9, 'a', 'x', ',', 32, 0,
+  /* 1375 */ 's', 'u', 'b', 9, 'a', 'x', ',', 32, 0,
+  /* 1384 */ 'a', 'd', 'c', 9, 'a', 'x', ',', 32, 0,
+  /* 1393 */ 'a', 'd', 'd', 9, 'a', 'x', ',', 32, 0,
+  /* 1402 */ 'a', 'n', 'd', 9, 'a', 'x', ',', 32, 0,
+  /* 1411 */ 'x', 'c', 'h', 'g', 9, 'a', 'x', ',', 32, 0,
+  /* 1421 */ 'i', 'n', 9, 'a', 'x', ',', 32, 0,
+  /* 1429 */ 'c', 'm', 'p', 9, 'a', 'x', ',', 32, 0,
+  /* 1438 */ 'x', 'o', 'r', 9, 'a', 'x', ',', 32, 0,
+  /* 1447 */ 'm', 'o', 'v', 'a', 'b', 's', 9, 'a', 'x', ',', 32, 0,
+  /* 1459 */ 't', 'e', 's', 't', 9, 'a', 'x', ',', 32, 0,
+  /* 1469 */ 'm', 'o', 'v', 9, 'a', 'x', ',', 32, 0,
+  /* 1478 */ 's', 'c', 'a', 's', 'w', 9, 'a', 'x', ',', 32, 0,
+  /* 1489 */ 'l', 'o', 'd', 's', 'w', 9, 'a', 'x', ',', 32, 0,
+  /* 1500 */ 's', 'b', 'b', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1510 */ 's', 'u', 'b', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1520 */ 'a', 'd', 'c', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1530 */ 'a', 'd', 'd', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1540 */ 'a', 'n', 'd', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1550 */ 's', 'c', 'a', 's', 'd', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1562 */ 'l', 'o', 'd', 's', 'd', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1574 */ 'x', 'c', 'h', 'g', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1585 */ 'i', 'n', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1594 */ 'c', 'm', 'p', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1604 */ 'x', 'o', 'r', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1614 */ 'm', 'o', 'v', 'a', 'b', 's', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1627 */ 't', 'e', 's', 't', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1638 */ 'm', 'o', 'v', 9, 'e', 'a', 'x', ',', 32, 0,
+  /* 1648 */ 's', 'b', 'b', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1658 */ 's', 'u', 'b', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1668 */ 'a', 'd', 'c', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1678 */ 'a', 'd', 'd', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1688 */ 'a', 'n', 'd', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1698 */ 'x', 'c', 'h', 'g', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1709 */ 'c', 'm', 'p', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1719 */ 's', 'c', 'a', 's', 'q', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1731 */ 'l', 'o', 'd', 's', 'q', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1743 */ 'x', 'o', 'r', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1753 */ 'm', 'o', 'v', 'a', 'b', 's', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1766 */ 't', 'e', 's', 't', 9, 'r', 'a', 'x', ',', 32, 0,
+  /* 1777 */ 'o', 'u', 't', 's', 'b', 9, 'd', 'x', ',', 32, 0,
+  /* 1788 */ 'o', 'u', 't', 's', 'd', 9, 'd', 'x', ',', 32, 0,
+  /* 1799 */ 'o', 'u', 't', 's', 'w', 9, 'd', 'x', ',', 32, 0,
+  /* 1810 */ '#', 'V', 'A', 'A', 'R', 'G', '_', '6', '4', 32, 0,
+  /* 1821 */ 'r', 'e', 't', 9, '#', 'e', 'h', '_', 'r', 'e', 't', 'u', 'r', 'n', ',', 32, 'a', 'd', 'd', 'r', ':', 32, 0,
+  /* 1844 */ '#', 'V', 'A', 'S', 'T', 'A', 'R', 'T', '_', 'S', 'A', 'V', 'E', '_', 'X', 'M', 'M', '_', 'R', 'E', 'G', 'S', 32, 0,
+  /* 1868 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '3', '2', '*', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 1888 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '1', '6', '*', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 1908 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '8', '0', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 1928 */ '#', 'A', 'T', 'O', 'M', 'S', 'U', 'B', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 1949 */ '#', 'A', 'T', 'O', 'M', 'A', 'D', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 1970 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 1991 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2013 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2034 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2056 */ '#', 'A', 'T', 'O', 'M', 'S', 'W', 'A', 'P', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2078 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2098 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2119 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2140 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2162 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2181 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2201 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2221 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '1', '6', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2242 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2262 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2281 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2301 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2321 */ '#', 'C', 'M', 'O', 'V', '_', 'F', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2340 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2358 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2377 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2396 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2416 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2435 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2455 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '2', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2475 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2495 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2515 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '2', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2535 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2555 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2575 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2594 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2614 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2634 */ '#', 'C', 'M', 'O', 'V', '_', 'F', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2653 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2671 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2690 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2709 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2729 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2748 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2768 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2787 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2807 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2825 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2844 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2863 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2883 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2901 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2920 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2938 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2957 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2975 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 2992 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3010 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3028 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3047 */ '#', 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3068 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3089 */ 'x', 's', 'h', 'a', '1', 0,
+  /* 3095 */ 'i', 'n', 't', '1', 0,
+  /* 3100 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '3', '2', 0,
+  /* 3119 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '3', '2', 0,
+  /* 3137 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '3', '2', 0,
+  /* 3150 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '3', '2', 0,
+  /* 3163 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '3', '2', 0,
+  /* 3181 */ 'u', 'd', '2', 0,
+  /* 3185 */ 'i', 'n', 't', '3', 0,
+  /* 3190 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '6', '4', 0,
+  /* 3209 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '6', '4', 0,
+  /* 3227 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '6', '4', 0,
+  /* 3240 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '6', '4', 0,
+  /* 3253 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '6', '4', 0,
+  /* 3271 */ 'r', 'e', 'x', '6', '4', 0,
+  /* 3277 */ 'd', 'a', 't', 'a', '1', '6', 0,
+  /* 3284 */ 'x', 's', 'h', 'a', '2', '5', '6', 0,
+  /* 3292 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
+  /* 3305 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
+  /* 3312 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
+  /* 3322 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 0,
+  /* 3340 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 0,
+  /* 3356 */ '#', 'M', 'E', 'M', 'B', 'A', 'R', 'R', 'I', 'E', 'R', 0,
+  /* 3368 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
+  /* 3383 */ 'a', 'a', 'a', 0,
+  /* 3387 */ 'd', 'a', 'a', 0,
+  /* 3391 */ 'u', 'd', '2', 'b', 0,
+  /* 3396 */ 'x', 'c', 'r', 'y', 'p', 't', 'e', 'c', 'b', 0,
+  /* 3406 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'f', 'b', 0,
+  /* 3416 */ 'x', 'c', 'r', 'y', 'p', 't', 'o', 'f', 'b', 0,
+  /* 3426 */ 'r', 'e', 'p', 32, 's', 't', 'o', 's', 'b', 0,
+  /* 3436 */ 'r', 'e', 'p', 32, 'm', 'o', 'v', 's', 'b', 0,
+  /* 3446 */ 'x', 'l', 'a', 't', 'b', 0,
+  /* 3452 */ 'c', 'l', 'a', 'c', 0,
+  /* 3457 */ 's', 't', 'a', 'c', 0,
+  /* 3462 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'b', 'c', 0,
+  /* 3472 */ 'g', 'e', 't', 's', 'e', 'c', 0,
+  /* 3479 */ 's', 'a', 'l', 'c', 0,
+  /* 3484 */ 'c', 'l', 'c', 0,
+  /* 3488 */ 'c', 'm', 'c', 0,
+  /* 3492 */ 'r', 'd', 'p', 'm', 'c', 0,
+  /* 3498 */ 'v', 'm', 'f', 'u', 'n', 'c', 0,
+  /* 3505 */ 'r', 'd', 't', 's', 'c', 0,
+  /* 3511 */ 's', 't', 'c', 0,
+  /* 3515 */ 'p', 'u', 's', 'h', 'f', 'd', 0,
+  /* 3522 */ 'p', 'o', 'p', 'f', 'd', 0,
+  /* 3528 */ 'c', 'p', 'u', 'i', 'd', 0,
+  /* 3534 */ 'c', 'l', 'd', 0,
+  /* 3538 */ 'r', 'e', 'p', 32, 's', 't', 'o', 's', 'd', 0,
+  /* 3548 */ 'r', 'e', 'p', 32, 'm', 'o', 'v', 's', 'd', 0,
+  /* 3558 */ 'i', 'r', 'e', 't', 'd', 0,
+  /* 3564 */ 's', 't', 'd', 0,
+  /* 3568 */ 'w', 'b', 'i', 'n', 'v', 'd', 0,
+  /* 3575 */ 'c', 'w', 'd', 0,
+  /* 3579 */ 'c', 'w', 'd', 'e', 0,
+  /* 3584 */ 'v', 'm', 'r', 'e', 's', 'u', 'm', 'e', 0,
+  /* 3593 */ 'r', 'e', 'p', 'n', 'e', 0,
+  /* 3599 */ 'c', 'd', 'q', 'e', 0,
+  /* 3604 */ 'x', 's', 't', 'o', 'r', 'e', 0,
+  /* 3611 */ 'l', 'e', 'a', 'v', 'e', 0,
+  /* 3617 */ 'v', 'm', 'x', 'o', 'f', 'f', 0,
+  /* 3624 */ 'l', 'a', 'h', 'f', 0,
+  /* 3629 */ 's', 'a', 'h', 'f', 0,
+  /* 3634 */ 'p', 'u', 's', 'h', 'f', 0,
+  /* 3640 */ 'p', 'o', 'p', 'f', 0,
+  /* 3645 */ 'r', 'e', 't', 'f', 0,
+  /* 3650 */ 'v', 'm', 'l', 'a', 'u', 'n', 'c', 'h', 0,
+  /* 3659 */ 'c', 'l', 'g', 'i', 0,
+  /* 3664 */ 's', 't', 'g', 'i', 0,
+  /* 3669 */ 'c', 'l', 'i', 0,
+  /* 3673 */ 's', 't', 'i', 0,
+  /* 3677 */ '#', 32, 'w', 'i', 'n', '3', '2', 32, 'f', 'p', 't', 'o', 'u', 'i', 0,
+  /* 3692 */ 'l', 'o', 'c', 'k', 0,
+  /* 3697 */ 'o', 'u', 't', 9, 'd', 'x', ',', 32, 'a', 'l', 0,
+  /* 3708 */ 'p', 'u', 's', 'h', 'a', 'l', 0,
+  /* 3715 */ 'p', 'o', 'p', 'a', 'l', 0,
+  /* 3721 */ 'v', 'm', 'm', 'c', 'a', 'l', 'l', 0,
+  /* 3729 */ 'v', 'm', 'c', 'a', 'l', 'l', 0,
+  /* 3736 */ 's', 'y', 's', 'c', 'a', 'l', 'l', 0,
+  /* 3744 */ 'm', 'o', 'n', 't', 'm', 'u', 'l', 0,
+  /* 3752 */ 'f', 's', 'e', 't', 'p', 'm', 0,
+  /* 3759 */ 'r', 's', 'm', 0,
+  /* 3763 */ '#', 32, 'd', 'y', 'n', 'a', 'm', 'i', 'c', 32, 's', 't', 'a', 'c', 'k', 32, 'a', 'l', 'l', 'o', 'c', 'a', 't', 'i', 'o', 'n', 0,
+  /* 3790 */ 'c', 'q', 'o', 0,
+  /* 3794 */ 'i', 'n', 't', 'o', 0,
+  /* 3799 */ 'r', 'd', 't', 's', 'c', 'p', 0,
+  /* 3806 */ 'r', 'e', 'p', 0,
+  /* 3810 */ 'n', 'o', 'p', 0,
+  /* 3814 */ 'c', 'd', 'q', 0,
+  /* 3818 */ 'p', 'u', 's', 'h', 'f', 'q', 0,
+  /* 3825 */ 'p', 'o', 'p', 'f', 'q', 0,
+  /* 3831 */ 'r', 'e', 't', 'f', 'q', 0,
+  /* 3837 */ 'r', 'e', 'p', 32, 's', 't', 'o', 's', 'q', 0,
+  /* 3847 */ 'r', 'e', 'p', 32, 'm', 'o', 'v', 's', 'q', 0,
+  /* 3857 */ 'i', 'r', 'e', 't', 'q', 0,
+  /* 3863 */ 's', 'y', 's', 'e', 'n', 't', 'e', 'r', 0,
+  /* 3872 */ 'r', 'd', 'm', 's', 'r', 0,
+  /* 3878 */ 'w', 'r', 'm', 's', 'r', 0,
+  /* 3884 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 't', 'r', 0,
+  /* 3894 */ 'a', 'a', 's', 0,
+  /* 3898 */ 'd', 'a', 's', 0,
+  /* 3902 */ 'p', 'u', 's', 'h', 9, 'c', 's', 0,
+  /* 3910 */ 'p', 'u', 's', 'h', 9, 'd', 's', 0,
+  /* 3918 */ 'p', 'o', 'p', 9, 'd', 's', 0,
+  /* 3925 */ 'p', 'u', 's', 'h', 9, 'e', 's', 0,
+  /* 3933 */ 'p', 'o', 'p', 9, 'e', 's', 0,
+  /* 3940 */ 'p', 'u', 's', 'h', 9, 'f', 's', 0,
+  /* 3948 */ 'p', 'o', 'p', 9, 'f', 's', 0,
+  /* 3955 */ 'p', 'u', 's', 'h', 9, 'g', 's', 0,
+  /* 3963 */ 'p', 'o', 'p', 9, 'g', 's', 0,
+  /* 3970 */ 's', 'w', 'a', 'p', 'g', 's', 0,
+  /* 3977 */ '#', 32, 'v', 'a', 'r', 'i', 'a', 'b', 'l', 'e', 32, 's', 'i', 'z', 'e', 'd', 32, 'a', 'l', 'l', 'o', 'c', 'a', 32, 'f', 'o', 'r', 32, 's', 'e', 'g', 'm', 'e', 'n', 't', 'e', 'd', 32, 's', 't', 'a', 'c', 'k', 's', 0,
+  /* 4022 */ 'p', 'u', 's', 'h', 9, 's', 's', 0,
+  /* 4030 */ 'p', 'o', 'p', 9, 's', 's', 0,
+  /* 4037 */ 'c', 'l', 't', 's', 0,
+  /* 4042 */ 'i', 'r', 'e', 't', 0,
+  /* 4047 */ 's', 'y', 's', 'r', 'e', 't', 0,
+  /* 4054 */ 's', 'y', 's', 'e', 'x', 'i', 't', 0,
+  /* 4062 */ 'h', 'l', 't', 0,
+  /* 4066 */ 'x', 'g', 'e', 't', 'b', 'v', 0,
+  /* 4073 */ 'x', 's', 'e', 't', 'b', 'v', 0,
+  /* 4080 */ 'p', 'u', 's', 'h', 'a', 'w', 0,
+  /* 4087 */ 'p', 'o', 'p', 'a', 'w', 0,
+  /* 4093 */ 'c', 'b', 'w', 0,
+  /* 4097 */ 'r', 'e', 'p', 32, 's', 't', 'o', 's', 'w', 0,
+  /* 4107 */ 'r', 'e', 'p', 32, 'm', 'o', 'v', 's', 'w', 0,
+  /* 4117 */ 'o', 'u', 't', 9, 'd', 'x', ',', 32, 'a', 'x', 0,
+  /* 4128 */ 'v', 'm', 'l', 'o', 'a', 'd', 9, 'e', 'a', 'x', 0,
+  /* 4139 */ 'v', 'm', 's', 'a', 'v', 'e', 9, 'e', 'a', 'x', 0,
+  /* 4150 */ 'v', 'm', 'r', 'u', 'n', 9, 'e', 'a', 'x', 0,
+  /* 4160 */ 's', 'k', 'i', 'n', 'i', 't', 9, 'e', 'a', 'x', 0,
+  /* 4171 */ 'o', 'u', 't', 9, 'd', 'x', ',', 32, 'e', 'a', 'x', 0,
+  /* 4183 */ 'v', 'm', 'l', 'o', 'a', 'd', 9, 'r', 'a', 'x', 0,
+  /* 4194 */ 'v', 'm', 's', 'a', 'v', 'e', 9, 'r', 'a', 'x', 0,
+  /* 4205 */ 'v', 'm', 'r', 'u', 'n', 9, 'r', 'a', 'x', 0,
+  /* 4215 */ 'i', 'n', 'v', 'l', 'p', 'g', 'a', 9, 'e', 'a', 'x', ',', 32, 'e', 'c', 'x', 0,
+  /* 4232 */ 'i', 'n', 'v', 'l', 'p', 'g', 'a', 9, 'r', 'a', 'x', ',', 32, 'e', 'c', 'x', 0,
+  /* 4249 */ 'i', 'n', 9, 'a', 'l', ',', 32, 'd', 'x', 0,
+  /* 4259 */ 'i', 'n', 9, 'a', 'x', ',', 32, 'd', 'x', 0,
+  /* 4269 */ 'i', 'n', 9, 'e', 'a', 'x', ',', 32, 'd', 'x', 0,
+  };
+#endif
+
+  // Emit the opcode for the instruction.
+  uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
+  // assert(Bits != 0 && "Cannot print this instruction.");
+#ifndef CAPSTONE_DIET
+  SStream_concat(O, "%s", AsmStrs+(Bits & 8191)-1);
+#endif
+
+
+  // Fragment 0 encoded into 5 bits for 31 unique commands.
+  //printf("Frag-0: %"PRIu64"\n", (Bits >> 13) & 31);
+  switch ((Bits >> 13) & 31) {
+  default:   // unreachable.
+  case 0:
+    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, AAA, AAS, ACQUIRE_MOV...
+    return;
+    break;
+  case 1:
+    // AAD8i8, AAM8i8, ADC16i16, ADC16rr_REV, ADC32i32, ADC32rr_REV, ADC64i32...
+    printOperand(MI, 0, O); 
+    break;
+  case 2:
+    // ADC16mi, ADC16mi8, ADC16mr, ADD16mi, ADD16mi8, ADD16mr, AND16mi, AND16...
+    printi16mem(MI, 0, O); 
+    break;
+  case 3:
+    // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC32ri, ADC32ri8, ADC32rm, ADC32...
+    printOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 4:
+    // ADC32mi, ADC32mi8, ADC32mr, ADD32mi, ADD32mi8, ADD32mr, AND32mi, AND32...
+    printi32mem(MI, 0, O); 
+    break;
+  case 5:
+    // ADC64mi32, ADC64mi8, ADC64mr, ADD64mi32, ADD64mi8, ADD64mr, AND64mi32,...
+    printi64mem(MI, 0, O); 
+    break;
+  case 6:
+    // ADC8mi, ADC8mr, ADD8mi, ADD8mr, AND8mi, AND8mr, CMP8mi, CMP8mr, CMPXCH...
+    printi8mem(MI, 0, O); 
+    break;
+  case 7:
+    // CALL64pcrel32, CALLpcrel16, CALLpcrel32, EH_SjLj_Setup, JAE_1, JAE_2, ...
+    printPCRelImm(MI, 0, O); 
+    break;
+  case 8:
+    // CMPS16
+    printSrcIdx16(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx16(MI, 0, O); 
+    return;
+    break;
+  case 9:
+    // CMPS32
+    printSrcIdx32(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx32(MI, 0, O); 
+    return;
+    break;
+  case 10:
+    // CMPS64
+    printSrcIdx64(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx64(MI, 0, O); 
+    return;
+    break;
+  case 11:
+    // CMPS8
+    printSrcIdx8(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx8(MI, 0, O); 
+    return;
+    break;
+  case 12:
+    // CMPXCHG16B, LCMPXCHG16B
+    printi128mem(MI, 0, O); 
+    return;
+    break;
+  case 13:
+    // FARCALL16m, FARCALL32m, FARCALL64, FARJMP16m, FARJMP32m, FARJMP64, LGD...
+    printopaquemem(MI, 0, O); 
+    return;
+    break;
+  case 14:
+    // IN16, MOVSW, SCAS16, STOSW
+    printDstIdx16(MI, 0, O); 
+    break;
+  case 15:
+    // IN32, MOVSL, SCAS32, STOSL
+    printDstIdx32(MI, 0, O); 
+    break;
+  case 16:
+    // IN8, MOVSB, SCAS8, STOSB
+    printDstIdx8(MI, 0, O); 
+    break;
+  case 17:
+    // LODSB, OUTSB
+    printSrcIdx8(MI, 0, O); 
+    return;
+    break;
+  case 18:
+    // LODSL, OUTSL
+    printSrcIdx32(MI, 0, O); 
+    return;
+    break;
+  case 19:
+    // LODSQ
+    printSrcIdx64(MI, 0, O); 
+    return;
+    break;
+  case 20:
+    // LODSW, OUTSW
+    printSrcIdx16(MI, 0, O); 
+    return;
+    break;
+  case 21:
+    // LXADD16, XCHG16rm
+    printi16mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 22:
+    // LXADD32, XCHG32rm
+    printi32mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 23:
+    // LXADD64, XCHG64rm
+    printi64mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 24:
+    // LXADD8, XCHG8rm
+    printi8mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 25:
+    // MOV16ao16, MOV16ao16_16, MOV16o16a, MOV16o16a_16, MOV64ao16, MOV64o16a
+    printMemOffs16(MI, 0, O); 
+    break;
+  case 26:
+    // MOV32ao32, MOV32ao32_16, MOV32o32a, MOV32o32a_16, MOV64ao32, MOV64o32a
+    printMemOffs32(MI, 0, O); 
+    break;
+  case 27:
+    // MOV64ao64, MOV64o64a
+    printMemOffs64(MI, 0, O); 
+    break;
+  case 28:
+    // MOV64ao8, MOV64o8a, MOV8ao8, MOV8ao8_16, MOV8o8a, MOV8o8a_16
+    printMemOffs8(MI, 0, O); 
+    break;
+  case 29:
+    // MOVSQ, SCAS64, STOSQ
+    printDstIdx64(MI, 0, O); 
+    break;
+  case 30:
+    // XCHG16rr, XCHG32rr, XCHG64rr, XCHG8rr
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 1 encoded into 4 bits for 15 unique commands.
+  //printf("Frag-1: %"PRIu64"\n", (Bits >> 18) & 15);
+  switch ((Bits >> 18) & 15) {
+  default:   // unreachable.
+  case 0:
+    // AAD8i8, AAM8i8, ADC16i16, ADC32i32, ADC64i32, ADC8i8, ADD16i16, ADD32i...
+    return;
+    break;
+  case 1:
+    // ADC16mi, ADC16mi8, ADC16mr, ADC16rr_REV, ADC32mi, ADC32mi8, ADC32mr, A...
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 2:
+    // ADC16ri, ADC16ri8, ADC16rr, ADC32ri, ADC32ri8, ADC32rr, ADC64ri32, ADC...
+    printOperand(MI, 2, O); 
+    return;
+    break;
+  case 3:
+    // ADC16rm, ADD16rm, AND16rm, OR16rm, SBB16rm, SUB16rm, XOR16rm
+    printi16mem(MI, 2, O); 
+    return;
+    break;
+  case 4:
+    // ADC32rm, ADD32rm, AND32rm, OR32rm, SBB32rm, SUB32rm, XOR32rm
+    printi32mem(MI, 2, O); 
+    return;
+    break;
+  case 5:
+    // ADC64rm, ADD64rm, AND64rm, OR64rm, SBB64rm, SUB64rm, XOR64rm
+    printi64mem(MI, 2, O); 
+    return;
+    break;
+  case 6:
+    // ADC8rm, ADD8rm, AND8rm, OR8rm, SBB8rm, SUB8rm, XOR8rm
+    printi8mem(MI, 2, O); 
+    return;
+    break;
+  case 7:
+    // IN16, IN32, IN8
+    SStream_concat(O, "%s", ", dx"); 
+    return;
+    break;
+  case 8:
+    // MOV16ao16, MOV16ao16_16, MOV64ao16, OUT16ir, STOSW
+    SStream_concat(O, "%s", ", ax"); 
+    return;
+    break;
+  case 9:
+    // MOV32ao32, MOV32ao32_16, MOV64ao32, OUT32ir, STOSL
+    SStream_concat(O, "%s", ", eax"); 
+    return;
+    break;
+  case 10:
+    // MOV64ao64, STOSQ
+    SStream_concat(O, "%s", ", rax"); 
+    return;
+    break;
+  case 11:
+    // MOV64ao8, MOV8ao8, MOV8ao8_16, OUT8ir, STOSB
+    SStream_concat(O, "%s", ", al"); 
+    return;
+    break;
+  case 12:
+    // RCL16mCL, RCL16rCL, RCL32mCL, RCL32rCL, RCL64mCL, RCL64rCL, RCL8mCL, R...
+    SStream_concat(O, "%s", ", cl"); 
+    return;
+    break;
+  case 13:
+    // ROL16m1, ROL16r1, ROL32m1, ROL32r1, ROL64m1, ROL64r1, ROL8m1, ROL8r1, ...
+    SStream_concat(O, "%s", ", 1"); 
+    return;
+    break;
+  case 14:
+    // TAILJMPd, TAILJMPd64, TAILJMPm, TAILJMPm64, TAILJMPr64
+    SStream_concat(O, "%s", "  # TAILCALL"); 
+    return;
+    break;
+  }
+
+
+  // Fragment 2 encoded into 4 bits for 16 unique commands.
+  //printf("Frag-2: %"PRIu64"\n", (Bits >> 22) & 15);
+  switch ((Bits >> 22) & 15) {
+  default:   // unreachable.
+  case 0:
+    // ADC16mi, ADC16mi8, ADC16mr, ADC32mi, ADC32mi8, ADC32mr, ADC64mi32, ADC...
+    printOperand(MI, 5, O); 
+    break;
+  case 1:
+    // ADC16rr_REV, ADC32rr_REV, ADC64rr_REV, ADC8rr_REV, ADD16rr_REV, ADD32r...
+    printOperand(MI, 2, O); 
+    break;
+  case 2:
+    // ADCX32rm, ADOX32rm, BEXTR32rm, BEXTRI32mi, BLCFILL32rm, BLCI32rm, BLCI...
+    printi32mem(MI, 1, O); 
+    break;
+  case 3:
+    // ADCX32rr, ADCX64rr, ADOX32rr, ADOX64rr, ANDN32rm, ANDN32rr, ANDN64rm, ...
+    printOperand(MI, 1, O); 
+    break;
+  case 4:
+    // ADCX64rm, ADOX64rm, BEXTR64rm, BEXTRI64mi, BLCFILL64rm, BLCI64rm, BLCI...
+    printi64mem(MI, 1, O); 
+    break;
+  case 5:
+    // BOUNDS16rm, BSF16rm, BSR16rm, CMP16rm, IMUL16rmi, IMUL16rmi8, LAR16rm,...
+    printi16mem(MI, 1, O); 
+    break;
+  case 6:
+    // CMOVA16rm, CMOVAE16rm, CMOVB16rm, CMOVBE16rm, CMOVE16rm, CMOVG16rm, CM...
+    printi16mem(MI, 2, O); 
+    return;
+    break;
+  case 7:
+    // CMOVA32rm, CMOVAE32rm, CMOVB32rm, CMOVBE32rm, CMOVE32rm, CMOVG32rm, CM...
+    printi32mem(MI, 2, O); 
+    return;
+    break;
+  case 8:
+    // CMOVA64rm, CMOVAE64rm, CMOVB64rm, CMOVBE64rm, CMOVE64rm, CMOVG64rm, CM...
+    printi64mem(MI, 2, O); 
+    return;
+    break;
+  case 9:
+    // CMP8rm, MOV8rm, MOV8rm_NOREX, MOVSX16rm8, MOVSX32rm8, MOVSX64rm8, MOVZ...
+    printi8mem(MI, 1, O); 
+    break;
+  case 10:
+    // INVEPT32, INVEPT64, INVPCID32, INVPCID64, INVVPID32, INVVPID64
+    printi128mem(MI, 1, O); 
+    return;
+    break;
+  case 11:
+    // LDS16rm, LDS32rm, LES16rm, LES32rm, LFS16rm, LFS32rm, LFS64rm, LGS16rm...
+    printopaquemem(MI, 1, O); 
+    return;
+    break;
+  case 12:
+    // MOVSB
+    printSrcIdx8(MI, 1, O); 
+    return;
+    break;
+  case 13:
+    // MOVSL
+    printSrcIdx32(MI, 1, O); 
+    return;
+    break;
+  case 14:
+    // MOVSQ
+    printSrcIdx64(MI, 1, O); 
+    return;
+    break;
+  case 15:
+    // MOVSW
+    printSrcIdx16(MI, 1, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 3 encoded into 2 bits for 4 unique commands.
+  //printf("Frag-3: %"PRIu64"\n", (Bits >> 26) & 3);
+  switch ((Bits >> 26) & 3) {
+  default:   // unreachable.
+  case 0:
+    // ADC16mi, ADC16mi8, ADC16mr, ADC16rr_REV, ADC32mi, ADC32mi8, ADC32mr, A...
+    return;
+    break;
+  case 1:
+    // ANDN32rm, ANDN32rr, ANDN64rm, ANDN64rr, BEXTR32rm, BEXTR32rr, BEXTR64r...
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 2:
+    // MOV8mr_NOREX, MOV8rm_NOREX, MOV8rr_NOREX
+    SStream_concat(O, "%s", "  # NOREX"); 
+    return;
+    break;
+  case 3:
+    // SHLD16mrCL, SHLD16rrCL, SHLD32mrCL, SHLD32rrCL, SHLD64mrCL, SHLD64rrCL...
+    SStream_concat(O, "%s", ", cl"); 
+    return;
+    break;
+  }
+
+
+  // Fragment 4 encoded into 3 bits for 5 unique commands.
+  //printf("Frag-4: %"PRIu64"\n", (Bits >> 28) & 7);
+  switch ((Bits >> 28) & 7) {
+  default:   // unreachable.
+  case 0:
+    // ANDN32rm, MULX32rm, PDEP32rm, PEXT32rm
+    printi32mem(MI, 2, O); 
+    return;
+    break;
+  case 1:
+    // ANDN32rr, ANDN64rr, BEXTR32rr, BEXTR64rr, BEXTRI32ri, BEXTRI64ri, BZHI...
+    printOperand(MI, 2, O); 
+    return;
+    break;
+  case 2:
+    // ANDN64rm, MULX64rm, PDEP64rm, PEXT64rm
+    printi64mem(MI, 2, O); 
+    return;
+    break;
+  case 3:
+    // BEXTR32rm, BEXTR64rm, BEXTRI32mi, BEXTRI64mi, BZHI32rm, BZHI64rm, IMUL...
+    printOperand(MI, 6, O); 
+    break;
+  case 4:
+    // SHLD16rri8, SHLD32rri8, SHLD64rri8, SHRD16rri8, SHRD32rri8, SHRD64rri8
+    printOperand(MI, 3, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 5 encoded into 1 bits for 2 unique commands.
+  //printf("Frag-5: %"PRIu64"\n", (Bits >> 31) & 1);
+  if ((Bits >> 31) & 1) {
+    // VAARG_64
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 7, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 8, O); 
+    return;
+  } else {
+    // BEXTR32rm, BEXTR64rm, BEXTRI32mi, BEXTRI64mi, BZHI32rm, BZHI64rm, IMUL...
+    return;
+  }
+}
+
+
+/// getRegisterName - This method is automatically generated by tblgen
+/// from the register set description.  This returns the assembler name
+/// for the specified register.
+static char *getRegisterName(unsigned RegNo)
+{
+  // assert(RegNo && RegNo < 233 && "Invalid register number!");
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 's', 't', '(', '0', ')', 0,
+  /* 6 */ 's', 't', '(', '1', ')', 0,
+  /* 12 */ 's', 't', '(', '2', ')', 0,
+  /* 18 */ 's', 't', '(', '3', ')', 0,
+  /* 24 */ 's', 't', '(', '4', ')', 0,
+  /* 30 */ 's', 't', '(', '5', ')', 0,
+  /* 36 */ 's', 't', '(', '6', ')', 0,
+  /* 42 */ 's', 't', '(', '7', ')', 0,
+  /* 48 */ 'x', 'm', 'm', '1', '0', 0,
+  /* 54 */ 'y', 'm', 'm', '1', '0', 0,
+  /* 60 */ 'z', 'm', 'm', '1', '0', 0,
+  /* 66 */ 'c', 'r', '1', '0', 0,
+  /* 71 */ 'x', 'm', 'm', '2', '0', 0,
+  /* 77 */ 'y', 'm', 'm', '2', '0', 0,
+  /* 83 */ 'z', 'm', 'm', '2', '0', 0,
+  /* 89 */ 'x', 'm', 'm', '3', '0', 0,
+  /* 95 */ 'y', 'm', 'm', '3', '0', 0,
+  /* 101 */ 'z', 'm', 'm', '3', '0', 0,
+  /* 107 */ 'k', '0', 0,
+  /* 110 */ 'x', 'm', 'm', '0', 0,
+  /* 115 */ 'y', 'm', 'm', '0', 0,
+  /* 120 */ 'z', 'm', 'm', '0', 0,
+  /* 125 */ 'f', 'p', '0', 0,
+  /* 129 */ 'c', 'r', '0', 0,
+  /* 133 */ 'd', 'r', '0', 0,
+  /* 137 */ 'x', 'm', 'm', '1', '1', 0,
+  /* 143 */ 'y', 'm', 'm', '1', '1', 0,
+  /* 149 */ 'z', 'm', 'm', '1', '1', 0,
+  /* 155 */ 'c', 'r', '1', '1', 0,
+  /* 160 */ 'x', 'm', 'm', '2', '1', 0,
+  /* 166 */ 'y', 'm', 'm', '2', '1', 0,
+  /* 172 */ 'z', 'm', 'm', '2', '1', 0,
+  /* 178 */ 'x', 'm', 'm', '3', '1', 0,
+  /* 184 */ 'y', 'm', 'm', '3', '1', 0,
+  /* 190 */ 'z', 'm', 'm', '3', '1', 0,
+  /* 196 */ 'k', '1', 0,
+  /* 199 */ 'x', 'm', 'm', '1', 0,
+  /* 204 */ 'y', 'm', 'm', '1', 0,
+  /* 209 */ 'z', 'm', 'm', '1', 0,
+  /* 214 */ 'f', 'p', '1', 0,
+  /* 218 */ 'c', 'r', '1', 0,
+  /* 222 */ 'd', 'r', '1', 0,
+  /* 226 */ 'x', 'm', 'm', '1', '2', 0,
+  /* 232 */ 'y', 'm', 'm', '1', '2', 0,
+  /* 238 */ 'z', 'm', 'm', '1', '2', 0,
+  /* 244 */ 'c', 'r', '1', '2', 0,
+  /* 249 */ 'x', 'm', 'm', '2', '2', 0,
+  /* 255 */ 'y', 'm', 'm', '2', '2', 0,
+  /* 261 */ 'z', 'm', 'm', '2', '2', 0,
+  /* 267 */ 'k', '2', 0,
+  /* 270 */ 'x', 'm', 'm', '2', 0,
+  /* 275 */ 'y', 'm', 'm', '2', 0,
+  /* 280 */ 'z', 'm', 'm', '2', 0,
+  /* 285 */ 'f', 'p', '2', 0,
+  /* 289 */ 'c', 'r', '2', 0,
+  /* 293 */ 'd', 'r', '2', 0,
+  /* 297 */ 'x', 'm', 'm', '1', '3', 0,
+  /* 303 */ 'y', 'm', 'm', '1', '3', 0,
+  /* 309 */ 'z', 'm', 'm', '1', '3', 0,
+  /* 315 */ 'c', 'r', '1', '3', 0,
+  /* 320 */ 'x', 'm', 'm', '2', '3', 0,
+  /* 326 */ 'y', 'm', 'm', '2', '3', 0,
+  /* 332 */ 'z', 'm', 'm', '2', '3', 0,
+  /* 338 */ 'k', '3', 0,
+  /* 341 */ 'x', 'm', 'm', '3', 0,
+  /* 346 */ 'y', 'm', 'm', '3', 0,
+  /* 351 */ 'z', 'm', 'm', '3', 0,
+  /* 356 */ 'f', 'p', '3', 0,
+  /* 360 */ 'c', 'r', '3', 0,
+  /* 364 */ 'd', 'r', '3', 0,
+  /* 368 */ 'x', 'm', 'm', '1', '4', 0,
+  /* 374 */ 'y', 'm', 'm', '1', '4', 0,
+  /* 380 */ 'z', 'm', 'm', '1', '4', 0,
+  /* 386 */ 'c', 'r', '1', '4', 0,
+  /* 391 */ 'x', 'm', 'm', '2', '4', 0,
+  /* 397 */ 'y', 'm', 'm', '2', '4', 0,
+  /* 403 */ 'z', 'm', 'm', '2', '4', 0,
+  /* 409 */ 'k', '4', 0,
+  /* 412 */ 'x', 'm', 'm', '4', 0,
+  /* 417 */ 'y', 'm', 'm', '4', 0,
+  /* 422 */ 'z', 'm', 'm', '4', 0,
+  /* 427 */ 'f', 'p', '4', 0,
+  /* 431 */ 'c', 'r', '4', 0,
+  /* 435 */ 'd', 'r', '4', 0,
+  /* 439 */ 'x', 'm', 'm', '1', '5', 0,
+  /* 445 */ 'y', 'm', 'm', '1', '5', 0,
+  /* 451 */ 'z', 'm', 'm', '1', '5', 0,
+  /* 457 */ 'c', 'r', '1', '5', 0,
+  /* 462 */ 'x', 'm', 'm', '2', '5', 0,
+  /* 468 */ 'y', 'm', 'm', '2', '5', 0,
+  /* 474 */ 'z', 'm', 'm', '2', '5', 0,
+  /* 480 */ 'k', '5', 0,
+  /* 483 */ 'x', 'm', 'm', '5', 0,
+  /* 488 */ 'y', 'm', 'm', '5', 0,
+  /* 493 */ 'z', 'm', 'm', '5', 0,
+  /* 498 */ 'f', 'p', '5', 0,
+  /* 502 */ 'c', 'r', '5', 0,
+  /* 506 */ 'd', 'r', '5', 0,
+  /* 510 */ 'x', 'm', 'm', '1', '6', 0,
+  /* 516 */ 'y', 'm', 'm', '1', '6', 0,
+  /* 522 */ 'z', 'm', 'm', '1', '6', 0,
+  /* 528 */ 'x', 'm', 'm', '2', '6', 0,
+  /* 534 */ 'y', 'm', 'm', '2', '6', 0,
+  /* 540 */ 'z', 'm', 'm', '2', '6', 0,
+  /* 546 */ 'k', '6', 0,
+  /* 549 */ 'x', 'm', 'm', '6', 0,
+  /* 554 */ 'y', 'm', 'm', '6', 0,
+  /* 559 */ 'z', 'm', 'm', '6', 0,
+  /* 564 */ 'f', 'p', '6', 0,
+  /* 568 */ 'c', 'r', '6', 0,
+  /* 572 */ 'd', 'r', '6', 0,
+  /* 576 */ 'x', 'm', 'm', '1', '7', 0,
+  /* 582 */ 'y', 'm', 'm', '1', '7', 0,
+  /* 588 */ 'z', 'm', 'm', '1', '7', 0,
+  /* 594 */ 'x', 'm', 'm', '2', '7', 0,
+  /* 600 */ 'y', 'm', 'm', '2', '7', 0,
+  /* 606 */ 'z', 'm', 'm', '2', '7', 0,
+  /* 612 */ 'k', '7', 0,
+  /* 615 */ 'x', 'm', 'm', '7', 0,
+  /* 620 */ 'y', 'm', 'm', '7', 0,
+  /* 625 */ 'z', 'm', 'm', '7', 0,
+  /* 630 */ 'c', 'r', '7', 0,
+  /* 634 */ 'd', 'r', '7', 0,
+  /* 638 */ 'x', 'm', 'm', '1', '8', 0,
+  /* 644 */ 'y', 'm', 'm', '1', '8', 0,
+  /* 650 */ 'z', 'm', 'm', '1', '8', 0,
+  /* 656 */ 'x', 'm', 'm', '2', '8', 0,
+  /* 662 */ 'y', 'm', 'm', '2', '8', 0,
+  /* 668 */ 'z', 'm', 'm', '2', '8', 0,
+  /* 674 */ 'x', 'm', 'm', '8', 0,
+  /* 679 */ 'y', 'm', 'm', '8', 0,
+  /* 684 */ 'z', 'm', 'm', '8', 0,
+  /* 689 */ 'c', 'r', '8', 0,
+  /* 693 */ 'x', 'm', 'm', '1', '9', 0,
+  /* 699 */ 'y', 'm', 'm', '1', '9', 0,
+  /* 705 */ 'z', 'm', 'm', '1', '9', 0,
+  /* 711 */ 'x', 'm', 'm', '2', '9', 0,
+  /* 717 */ 'y', 'm', 'm', '2', '9', 0,
+  /* 723 */ 'z', 'm', 'm', '2', '9', 0,
+  /* 729 */ 'x', 'm', 'm', '9', 0,
+  /* 734 */ 'y', 'm', 'm', '9', 0,
+  /* 739 */ 'z', 'm', 'm', '9', 0,
+  /* 744 */ 'c', 'r', '9', 0,
+  /* 748 */ 'r', '1', '0', 'b', 0,
+  /* 753 */ 'r', '1', '1', 'b', 0,
+  /* 758 */ 'r', '1', '2', 'b', 0,
+  /* 763 */ 'r', '1', '3', 'b', 0,
+  /* 768 */ 'r', '1', '4', 'b', 0,
+  /* 773 */ 'r', '1', '5', 'b', 0,
+  /* 778 */ 'r', '8', 'b', 0,
+  /* 782 */ 'r', '9', 'b', 0,
+  /* 786 */ 'r', '1', '0', 'd', 0,
+  /* 791 */ 'r', '1', '1', 'd', 0,
+  /* 796 */ 'r', '1', '2', 'd', 0,
+  /* 801 */ 'r', '1', '3', 'd', 0,
+  /* 806 */ 'r', '1', '4', 'd', 0,
+  /* 811 */ 'r', '1', '5', 'd', 0,
+  /* 816 */ 'r', '8', 'd', 0,
+  /* 820 */ 'r', '9', 'd', 0,
+  /* 824 */ 'a', 'h', 0,
+  /* 827 */ 'b', 'h', 0,
+  /* 830 */ 'c', 'h', 0,
+  /* 833 */ 'd', 'h', 0,
+  /* 836 */ 'e', 'd', 'i', 0,
+  /* 840 */ 'r', 'd', 'i', 0,
+  /* 844 */ 'e', 's', 'i', 0,
+  /* 848 */ 'r', 's', 'i', 0,
+  /* 852 */ 'a', 'l', 0,
+  /* 855 */ 'b', 'l', 0,
+  /* 858 */ 'c', 'l', 0,
+  /* 861 */ 'd', 'l', 0,
+  /* 864 */ 'd', 'i', 'l', 0,
+  /* 868 */ 's', 'i', 'l', 0,
+  /* 872 */ 'b', 'p', 'l', 0,
+  /* 876 */ 's', 'p', 'l', 0,
+  /* 880 */ 'e', 'b', 'p', 0,
+  /* 884 */ 'r', 'b', 'p', 0,
+  /* 888 */ 'e', 'i', 'p', 0,
+  /* 892 */ 'r', 'i', 'p', 0,
+  /* 896 */ 'e', 's', 'p', 0,
+  /* 900 */ 'r', 's', 'p', 0,
+  /* 904 */ 'c', 's', 0,
+  /* 907 */ 'd', 's', 0,
+  /* 910 */ 'e', 's', 0,
+  /* 913 */ 'f', 's', 0,
+  /* 916 */ 'f', 'l', 'a', 'g', 's', 0,
+  /* 922 */ 's', 's', 0,
+  /* 925 */ 'r', '1', '0', 'w', 0,
+  /* 930 */ 'r', '1', '1', 'w', 0,
+  /* 935 */ 'r', '1', '2', 'w', 0,
+  /* 940 */ 'r', '1', '3', 'w', 0,
+  /* 945 */ 'r', '1', '4', 'w', 0,
+  /* 950 */ 'r', '1', '5', 'w', 0,
+  /* 955 */ 'r', '8', 'w', 0,
+  /* 959 */ 'r', '9', 'w', 0,
+  /* 963 */ 'f', 'p', 's', 'w', 0,
+  /* 968 */ 'e', 'a', 'x', 0,
+  /* 972 */ 'r', 'a', 'x', 0,
+  /* 976 */ 'e', 'b', 'x', 0,
+  /* 980 */ 'r', 'b', 'x', 0,
+  /* 984 */ 'e', 'c', 'x', 0,
+  /* 988 */ 'r', 'c', 'x', 0,
+  /* 992 */ 'e', 'd', 'x', 0,
+  /* 996 */ 'r', 'd', 'x', 0,
+  /* 1000 */ 'e', 'i', 'z', 0,
+  /* 1004 */ 'r', 'i', 'z', 0,
+  };
+
+  static const uint32_t RegAsmOffset[] = {
+    824, 852, 969, 827, 855, 881, 872, 977, 830, 858, 904, 985, 833, 837, 
+    864, 861, 907, 993, 968, 880, 976, 984, 836, 992, 916, 888, 1000, 910, 
+    844, 896, 963, 913, 919, 889, 972, 884, 980, 988, 840, 996, 892, 1004, 
+    848, 900, 845, 868, 897, 876, 922, 129, 218, 289, 360, 431, 502, 568, 
+    630, 689, 744, 66, 155, 244, 315, 386, 457, 133, 222, 293, 364, 435, 
+    506, 572, 634, 125, 214, 285, 356, 427, 498, 564, 107, 196, 267, 338, 
+    409, 480, 546, 612, 111, 200, 271, 342, 413, 484, 550, 616, 690, 745, 
+    67, 156, 245, 316, 387, 458, 0, 6, 12, 18, 24, 30, 36, 42, 
+    110, 199, 270, 341, 412, 483, 549, 615, 674, 729, 48, 137, 226, 297, 
+    368, 439, 510, 576, 638, 693, 71, 160, 249, 320, 391, 462, 528, 594, 
+    656, 711, 89, 178, 115, 204, 275, 346, 417, 488, 554, 620, 679, 734, 
+    54, 143, 232, 303, 374, 445, 516, 582, 644, 699, 77, 166, 255, 326, 
+    397, 468, 534, 600, 662, 717, 95, 184, 120, 209, 280, 351, 422, 493, 
+    559, 625, 684, 739, 60, 149, 238, 309, 380, 451, 522, 588, 650, 705, 
+    83, 172, 261, 332, 403, 474, 540, 606, 668, 723, 101, 190, 778, 782, 
+    748, 753, 758, 763, 768, 773, 816, 820, 786, 791, 796, 801, 806, 811, 
+    955, 959, 925, 930, 935, 940, 945, 950, 
+  };
+
+  //int i;
+  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
+  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
+  //printf("*************************\n");
+  return AsmStrs+RegAsmOffset[RegNo-1];
+#else
+  return NULL;
+#endif
+}
+
+#ifdef PRINT_ALIAS_INSTR
+#undef PRINT_ALIAS_INSTR
+
+static char *printAliasInstr(MCInst *MI, SStream *OS, void *info)
+{
+  #define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg)))
+  const char *AsmString;
+  // MCRegisterInfo *MRI = (MCRegisterInfo *)info;
+  switch (MCInst_getOpcode(MI)) {
+  default: return 0;
+  case X86_AAD8i8:
+    if (MCInst_getNumOperands(MI) == 1 &&
+        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
+        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) {
+      // (AAD8i8 10)
+      AsmString = "aad";
+      break;
+    }
+    return 0;
+  case X86_AAM8i8:
+    if (MCInst_getNumOperands(MI) == 1 &&
+        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
+        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) {
+      // (AAM8i8 10)
+      AsmString = "aam";
+      break;
+    }
+    return 0;
+  case X86_XSTORE:
+    if (MCInst_getNumOperands(MI) == 0) {
+      // (XSTORE)
+      AsmString = "xstorerng";
+      break;
+    }
+    return 0;
+  }
+
+  char *tmp = cs_strdup(AsmString), *AsmMnem, *AsmOps;
+  AsmMnem = tmp;
+  AsmOps = strchr(tmp, ' ');
+  if (AsmOps) {
+    *AsmOps = '\0';
+    AsmOps += 1;
+  }
+  SStream_concat(OS, "%s", AsmMnem);
+  if (AsmOps) {
+    SStream_concat(OS, "\t");
+    char *c;
+    for (c = AsmOps; *c; c++) {
+      if (*c == '$') {
+        c += 1;
+        printOperand(MI, *c - 1, OS);
+      } else {
+        SStream_concat(OS, "%c", *c);
+      }
+    }
+  }
+  return tmp;
+}
+
+#endif // PRINT_ALIAS_INSTR
diff --git a/arch/X86/X86GenAsmWriter_reduce.inc b/arch/X86/X86GenAsmWriter_reduce.inc
new file mode 100644
index 0000000..9ebf68b
--- /dev/null
+++ b/arch/X86/X86GenAsmWriter_reduce.inc
@@ -0,0 +1,3082 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Assembly Writer Source Fragment                                             *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine, http://www.capstone-engine.org */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
+
+/// printInstruction - This method is automatically generated by tablegen
+/// from the instruction set description.
+static void printInstruction(MCInst *MI, SStream *O, MCRegisterInfo *MRI)
+{
+  static const uint32_t OpInfo[] = {
+    0U,	// PHI
+    0U,	// INLINEASM
+    0U,	// PROLOG_LABEL
+    0U,	// EH_LABEL
+    0U,	// GC_LABEL
+    0U,	// KILL
+    0U,	// EXTRACT_SUBREG
+    0U,	// INSERT_SUBREG
+    0U,	// IMPLICIT_DEF
+    0U,	// SUBREG_TO_REG
+    0U,	// COPY_TO_REGCLASS
+    4883U,	// DBG_VALUE
+    0U,	// REG_SEQUENCE
+    0U,	// COPY
+    4876U,	// BUNDLE
+    4939U,	// LIFETIME_START
+    4863U,	// LIFETIME_END
+    0U,	// STACKMAP
+    0U,	// PATCHPOINT
+    4954U,	// AAA
+    8453U,	// AAD8i8
+    9406U,	// AAM8i8
+    5494U,	// AAS
+    4567U,	// ACQUIRE_MOV16rm
+    4567U,	// ACQUIRE_MOV32rm
+    4567U,	// ACQUIRE_MOV64rm
+    4567U,	// ACQUIRE_MOV8rm
+    534671U,	// ADC16i16
+    1067151U,	// ADC16mi
+    1067151U,	// ADC16mi8
+    1067151U,	// ADC16mr
+    1599631U,	// ADC16ri
+    1599631U,	// ADC16ri8
+    1607823U,	// ADC16rm
+    1599631U,	// ADC16rr
+    2123919U,	// ADC16rr_REV
+    2630113U,	// ADC32i32
+    3162593U,	// ADC32mi
+    3162593U,	// ADC32mi8
+    3162593U,	// ADC32mr
+    1597921U,	// ADC32ri
+    1597921U,	// ADC32ri8
+    1614305U,	// ADC32rm
+    1597921U,	// ADC32rr
+    2122209U,	// ADC32rr_REV
+    3679555U,	// ADC64i32
+    4212035U,	// ADC64mi32
+    4212035U,	// ADC64mi8
+    4212035U,	// ADC64mr
+    1598787U,	// ADC64ri32
+    1598787U,	// ADC64ri8
+    1623363U,	// ADC64rm
+    1598787U,	// ADC64rr
+    2123075U,	// ADC64rr_REV
+    4726830U,	// ADC8i8
+    5259310U,	// ADC8mi
+    5259310U,	// ADC8mr
+    1597486U,	// ADC8ri
+    57390U,	// ADC8rm
+    1597486U,	// ADC8rr
+    2121774U,	// ADC8rr_REV
+    66701U,	// ADCX32rm
+    2172045U,	// ADCX32rr
+    83915U,	// ADCX64rm
+    2172875U,	// ADCX64rr
+    534696U,	// ADD16i16
+    1067176U,	// ADD16mi
+    1067176U,	// ADD16mi8
+    1067176U,	// ADD16mr
+    1599656U,	// ADD16ri
+    1599656U,	// ADD16ri8
+    0U,	// ADD16ri8_DB
+    0U,	// ADD16ri_DB
+    1607848U,	// ADD16rm
+    1599656U,	// ADD16rr
+    0U,	// ADD16rr_DB
+    2123944U,	// ADD16rr_REV
+    2630147U,	// ADD32i32
+    3162627U,	// ADD32mi
+    3162627U,	// ADD32mi8
+    3162627U,	// ADD32mr
+    1597955U,	// ADD32ri
+    1597955U,	// ADD32ri8
+    0U,	// ADD32ri8_DB
+    0U,	// ADD32ri_DB
+    1614339U,	// ADD32rm
+    1597955U,	// ADD32rr
+    0U,	// ADD32rr_DB
+    2122243U,	// ADD32rr_REV
+    3679589U,	// ADD64i32
+    4212069U,	// ADD64mi32
+    4212069U,	// ADD64mi8
+    4212069U,	// ADD64mr
+    1598821U,	// ADD64ri32
+    0U,	// ADD64ri32_DB
+    1598821U,	// ADD64ri8
+    0U,	// ADD64ri8_DB
+    1623397U,	// ADD64rm
+    1598821U,	// ADD64rr
+    0U,	// ADD64rr_DB
+    2123109U,	// ADD64rr_REV
+    4726849U,	// ADD8i8
+    5259329U,	// ADD8mi
+    5259329U,	// ADD8mr
+    1597505U,	// ADD8ri
+    57409U,	// ADD8rm
+    1597505U,	// ADD8rr
+    2121793U,	// ADD8rr_REV
+    4893U,	// ADJCALLSTACKDOWN32
+    4893U,	// ADJCALLSTACKDOWN64
+    4911U,	// ADJCALLSTACKUP32
+    4911U,	// ADJCALLSTACKUP64
+    66722U,	// ADOX32rm
+    2172066U,	// ADOX32rr
+    83936U,	// ADOX64rm
+    2172896U,	// ADOX64rr
+    534721U,	// AND16i16
+    1067201U,	// AND16mi
+    1067201U,	// AND16mi8
+    1067201U,	// AND16mr
+    1599681U,	// AND16ri
+    1599681U,	// AND16ri8
+    1607873U,	// AND16rm
+    1599681U,	// AND16rr
+    2123969U,	// AND16rr_REV
+    2630172U,	// AND32i32
+    3162652U,	// AND32mi
+    3162652U,	// AND32mi8
+    3162652U,	// AND32mr
+    1597980U,	// AND32ri
+    1597980U,	// AND32ri8
+    1614364U,	// AND32rm
+    1597980U,	// AND32rr
+    2122268U,	// AND32rr_REV
+    3679614U,	// AND64i32
+    4212094U,	// AND64mi32
+    4212094U,	// AND64mi8
+    4212094U,	// AND64mr
+    1598846U,	// AND64ri32
+    1598846U,	// AND64ri8
+    1623422U,	// AND64rm
+    1598846U,	// AND64rr
+    2123134U,	// AND64rr_REV
+    4726855U,	// AND8i8
+    5259335U,	// AND8mi
+    5259335U,	// AND8mr
+    1597511U,	// AND8ri
+    57415U,	// AND8rm
+    1597511U,	// AND8rr
+    2121799U,	// AND8rr_REV
+    18391829U,	// ANDN32rm
+    18375445U,	// ANDN32rr
+    18400880U,	// ANDN64rm
+    18376304U,	// ANDN64rr
+    1065827U,	// ARPL16mr
+    2171747U,	// ARPL16rr
+    3469U,	// ATOMADD6432
+    4249U,	// ATOMAND16
+    3682U,	// ATOMAND32
+    3936U,	// ATOMAND64
+    3490U,	// ATOMAND6432
+    4403U,	// ATOMAND8
+    4364U,	// ATOMMAX16
+    3897U,	// ATOMMAX32
+    4210U,	// ATOMMAX64
+    3639U,	// ATOMMAX6432
+    4530U,	// ATOMMAX8
+    4288U,	// ATOMMIN16
+    3782U,	// ATOMMIN32
+    4095U,	// ATOMMIN64
+    3533U,	// ATOMMIN6432
+    4440U,	// ATOMMIN8
+    4268U,	// ATOMNAND16
+    3701U,	// ATOMNAND32
+    3955U,	// ATOMNAND64
+    3511U,	// ATOMNAND6432
+    4421U,	// ATOMNAND8
+    4327U,	// ATOMOR16
+    3860U,	// ATOMOR32
+    4173U,	// ATOMOR64
+    3598U,	// ATOMOR6432
+    4495U,	// ATOMOR8
+    3448U,	// ATOMSUB6432
+    3576U,	// ATOMSWAP6432
+    4383U,	// ATOMUMAX16
+    3916U,	// ATOMUMAX32
+    4229U,	// ATOMUMAX64
+    3660U,	// ATOMUMAX6432
+    4548U,	// ATOMUMAX8
+    4307U,	// ATOMUMIN16
+    3801U,	// ATOMUMIN32
+    4114U,	// ATOMUMIN64
+    3554U,	// ATOMUMIN6432
+    4458U,	// ATOMUMIN8
+    4345U,	// ATOMXOR16
+    3878U,	// ATOMXOR32
+    4191U,	// ATOMXOR64
+    3618U,	// ATOMXOR6432
+    4512U,	// ATOMXOR8
+    5858222U,	// BEXTR32rm
+    18375598U,	// BEXTR32rr
+    6383354U,	// BEXTR64rm
+    18376442U,	// BEXTR64rr
+    5859354U,	// BEXTRI32mi
+    18376730U,	// BEXTRI32ri
+    6383642U,	// BEXTRI64mi
+    18376730U,	// BEXTRI64ri
+    66272U,	// BLCFILL32rm
+    2171616U,	// BLCFILL32rr
+    82656U,	// BLCFILL64rm
+    2171616U,	// BLCFILL64rr
+    65946U,	// BLCI32rm
+    2171290U,	// BLCI32rr
+    82330U,	// BLCI64rm
+    2171290U,	// BLCI64rr
+    65775U,	// BLCIC32rm
+    2171119U,	// BLCIC32rr
+    82159U,	// BLCIC64rm
+    2171119U,	// BLCIC64rr
+    65952U,	// BLCMSK32rm
+    2171296U,	// BLCMSK32rr
+    82336U,	// BLCMSK64rm
+    2171296U,	// BLCMSK64rr
+    67617U,	// BLCS32rm
+    2172961U,	// BLCS32rr
+    84001U,	// BLCS64rm
+    2172961U,	// BLCS64rr
+    66281U,	// BLSFILL32rm
+    2171625U,	// BLSFILL32rr
+    82665U,	// BLSFILL64rm
+    2171625U,	// BLSFILL64rr
+    66240U,	// BLSI32rm
+    2171584U,	// BLSI32rr
+    83498U,	// BLSI64rm
+    2172458U,	// BLSI64rr
+    65782U,	// BLSIC32rm
+    2171126U,	// BLSIC32rr
+    82166U,	// BLSIC64rm
+    2171126U,	// BLSIC64rr
+    66251U,	// BLSMSK32rm
+    2171595U,	// BLSMSK32rr
+    83505U,	// BLSMSK64rm
+    2172465U,	// BLSMSK64rr
+    66459U,	// BLSR32rm
+    2171803U,	// BLSR32rr
+    83687U,	// BLSR64rm
+    2172647U,	// BLSR64rr
+    98597U,	// BOUNDS16rm
+    65829U,	// BOUNDS32rm
+    100611U,	// BSF16rm
+    2173187U,	// BSF16rr
+    66196U,	// BSF32rm
+    2171540U,	// BSF32rr
+    83454U,	// BSF64rm
+    2172414U,	// BSF64rr
+    100801U,	// BSR16rm
+    2173377U,	// BSR16rr
+    66453U,	// BSR32rm
+    2171797U,	// BSR32rr
+    83681U,	// BSR64rm
+    2172641U,	// BSR64rr
+    9010U,	// BSWAP32r
+    9864U,	// BSWAP64r
+    1067571U,	// BT16mi8
+    1067571U,	// BT16mr
+    2173491U,	// BT16ri8
+    2173491U,	// BT16rr
+    3163152U,	// BT32mi8
+    3163152U,	// BT32mr
+    2171920U,	// BT32ri8
+    2171920U,	// BT32rr
+    4212553U,	// BT64mi8
+    4212553U,	// BT64mr
+    2172745U,	// BT64ri8
+    2172745U,	// BT64rr
+    1067169U,	// BTC16mi8
+    1067169U,	// BTC16mr
+    2173089U,	// BTC16ri8
+    2173089U,	// BTC16rr
+    3162611U,	// BTC32mi8
+    3162611U,	// BTC32mr
+    2171379U,	// BTC32ri8
+    2171379U,	// BTC32rr
+    4212053U,	// BTC64mi8
+    4212053U,	// BTC64mr
+    2172245U,	// BTC64ri8
+    2172245U,	// BTC64rr
+    1067463U,	// BTR16mi8
+    1067463U,	// BTR16mr
+    2173383U,	// BTR16ri8
+    2173383U,	// BTR16rr
+    3163042U,	// BTR32mi8
+    3163042U,	// BTR32mr
+    2171810U,	// BTR32ri8
+    2171810U,	// BTR32rr
+    4212462U,	// BTR64mi8
+    4212462U,	// BTR64mr
+    2172654U,	// BTR64ri8
+    2172654U,	// BTR64rr
+    1067550U,	// BTS16mi8
+    1067550U,	// BTS16mr
+    2173470U,	// BTS16ri8
+    2173470U,	// BTS16rr
+    3163131U,	// BTS32mi8
+    3163131U,	// BTS32mr
+    2171899U,	// BTS32ri8
+    2171899U,	// BTS32rr
+    4212539U,	// BTS64mi8
+    4212539U,	// BTS64mr
+    2172731U,	// BTS64ri8
+    2172731U,	// BTS64rr
+    5857977U,	// BZHI32rm
+    18375353U,	// BZHI32rr
+    6383139U,	// BZHI64rm
+    18376227U,	// BZHI64rr
+    111140U,	// CALL16m
+    12836U,	// CALL16r
+    119298U,	// CALL32m
+    12802U,	// CALL32r
+    127507U,	// CALL64m
+    132678U,	// CALL64pcrel32
+    12819U,	// CALL64r
+    133429U,	// CALLpcrel16
+    131827U,	// CALLpcrel32
+    5871U,	// CBW
+    5096U,	// CDQ
+    5458U,	// CDQE
+    5023U,	// CLAC
+    5055U,	// CLC
+    5092U,	// CLD
+    5171U,	// CLGI
+    5181U,	// CLI
+    5802U,	// CLTS
+    5059U,	// CMC
+    2132067U,	// CMOVA16rm
+    2123875U,	// CMOVA16rr
+    2138549U,	// CMOVA32rm
+    2122165U,	// CMOVA32rr
+    2147607U,	// CMOVA64rm
+    2123031U,	// CMOVA64rr
+    2132174U,	// CMOVAE16rm
+    2123982U,	// CMOVAE16rr
+    2138665U,	// CMOVAE32rm
+    2122281U,	// CMOVAE32rr
+    2147723U,	// CMOVAE64rm
+    2123147U,	// CMOVAE64rr
+    2132095U,	// CMOVB16rm
+    2123903U,	// CMOVB16rr
+    2138577U,	// CMOVB32rm
+    2122193U,	// CMOVB32rr
+    2147635U,	// CMOVB64rm
+    2123059U,	// CMOVB64rr
+    2132183U,	// CMOVBE16rm
+    2123991U,	// CMOVBE16rr
+    2138674U,	// CMOVBE32rm
+    2122290U,	// CMOVBE32rr
+    2147732U,	// CMOVBE64rm
+    2123156U,	// CMOVBE64rr
+    2132219U,	// CMOVE16rm
+    2124027U,	// CMOVE16rr
+    2138764U,	// CMOVE32rm
+    2122380U,	// CMOVE32rr
+    2147830U,	// CMOVE64rm
+    2123254U,	// CMOVE64rr
+    2132249U,	// CMOVG16rm
+    2124057U,	// CMOVG16rr
+    2138794U,	// CMOVG32rm
+    2122410U,	// CMOVG32rr
+    2147860U,	// CMOVG64rm
+    2123284U,	// CMOVG64rr
+    2132192U,	// CMOVGE16rm
+    2124000U,	// CMOVGE16rr
+    2138683U,	// CMOVGE32rm
+    2122299U,	// CMOVGE32rr
+    2147741U,	// CMOVGE64rm
+    2123165U,	// CMOVGE64rr
+    2132303U,	// CMOVL16rm
+    2124111U,	// CMOVL16rr
+    2138893U,	// CMOVL32rm
+    2122509U,	// CMOVL32rr
+    2147944U,	// CMOVL64rm
+    2123368U,	// CMOVL64rr
+    2132201U,	// CMOVLE16rm
+    2124009U,	// CMOVLE16rr
+    2138692U,	// CMOVLE32rm
+    2122308U,	// CMOVLE32rr
+    2147750U,	// CMOVLE64rm
+    2123174U,	// CMOVLE64rr
+    2132210U,	// CMOVNE16rm
+    2124018U,	// CMOVNE16rr
+    2138701U,	// CMOVNE32rm
+    2122317U,	// CMOVNE32rr
+    2147759U,	// CMOVNE64rm
+    2123183U,	// CMOVNE64rr
+    2132316U,	// CMOVNO16rm
+    2124124U,	// CMOVNO16rr
+    2138913U,	// CMOVNO32rm
+    2122529U,	// CMOVNO32rr
+    2147959U,	// CMOVNO64rm
+    2123383U,	// CMOVNO64rr
+    2132346U,	// CMOVNP16rm
+    2124154U,	// CMOVNP16rr
+    2138958U,	// CMOVNP32rm
+    2122574U,	// CMOVNP32rr
+    2147997U,	// CMOVNP64rm
+    2123421U,	// CMOVNP64rr
+    2132488U,	// CMOVNS16rm
+    2124296U,	// CMOVNS16rr
+    2139109U,	// CMOVNS32rm
+    2122725U,	// CMOVNS32rr
+    2148133U,	// CMOVNS64rm
+    2123557U,	// CMOVNS64rr
+    2132325U,	// CMOVO16rm
+    2124133U,	// CMOVO16rr
+    2138922U,	// CMOVO32rm
+    2122538U,	// CMOVO32rr
+    2147968U,	// CMOVO64rm
+    2123392U,	// CMOVO64rr
+    2132367U,	// CMOVP16rm
+    2124175U,	// CMOVP16rr
+    2138985U,	// CMOVP32rm
+    2122601U,	// CMOVP32rr
+    2148012U,	// CMOVP64rm
+    2123436U,	// CMOVP64rr
+    2132523U,	// CMOVS16rm
+    2124331U,	// CMOVS16rr
+    2139144U,	// CMOVS32rm
+    2122760U,	// CMOVS32rr
+    2148161U,	// CMOVS64rm
+    2123585U,	// CMOVS64rr
+    3841U,	// CMOV_FR32
+    4154U,	// CMOV_FR64
+    3408U,	// CMOV_GR16
+    3388U,	// CMOV_GR32
+    4477U,	// CMOV_GR8
+    3821U,	// CMOV_RFP32
+    4134U,	// CMOV_RFP64
+    3428U,	// CMOV_RFP80
+    3741U,	// CMOV_V16F32
+    3975U,	// CMOV_V2F64
+    4035U,	// CMOV_V2I64
+    3721U,	// CMOV_V4F32
+    3995U,	// CMOV_V4F64
+    4055U,	// CMOV_V4I64
+    3762U,	// CMOV_V8F32
+    4015U,	// CMOV_V8F64
+    4075U,	// CMOV_V8I64
+    534893U,	// CMP16i16
+    1067373U,	// CMP16mi
+    1067373U,	// CMP16mi8
+    1067373U,	// CMP16mr
+    2173293U,	// CMP16ri
+    2173293U,	// CMP16ri8
+    100717U,	// CMP16rm
+    2173293U,	// CMP16rr
+    2173293U,	// CMP16rr_REV
+    2630465U,	// CMP32i32
+    3162945U,	// CMP32mi
+    3162945U,	// CMP32mi8
+    3162945U,	// CMP32mr
+    2171713U,	// CMP32ri
+    2171713U,	// CMP32ri8
+    66369U,	// CMP32rm
+    2171713U,	// CMP32rr
+    2171713U,	// CMP32rr_REV
+    3679895U,	// CMP64i32
+    4212375U,	// CMP64mi32
+    4212375U,	// CMP64mi8
+    4212375U,	// CMP64mr
+    2172567U,	// CMP64ri32
+    2172567U,	// CMP64ri8
+    83607U,	// CMP64rm
+    2172567U,	// CMP64rr
+    2172567U,	// CMP64rr_REV
+    4726911U,	// CMP8i8
+    5259391U,	// CMP8mi
+    5259391U,	// CMP8mr
+    2171007U,	// CMP8ri
+    139391U,	// CMP8rm
+    2171007U,	// CMP8rr
+    2171007U,	// CMP8rr_REV
+    40520209U,	// CMPS16
+    57304046U,	// CMPS32
+    74090286U,	// CMPS64
+    90874042U,	// CMPS8
+    180235U,	// CMPXCHG16B
+    1067279U,	// CMPXCHG16rm
+    2173199U,	// CMPXCHG16rr
+    3162784U,	// CMPXCHG32rm
+    2171552U,	// CMPXCHG32rr
+    4212234U,	// CMPXCHG64rm
+    2172426U,	// CMPXCHG64rr
+    122903U,	// CMPXCHG8B
+    5259347U,	// CMPXCHG8rm
+    2170963U,	// CMPXCHG8rr
+    5086U,	// CPUID32
+    5086U,	// CPUID64
+    5376U,	// CQO
+    5509U,	// CS_PREFIX
+    5105U,	// CWD
+    5320U,	// CWDE
+    4958U,	// DAA
+    5498U,	// DAS
+    4848U,	// DATA16_PREFIX
+    108693U,	// DEC16m
+    10389U,	// DEC16r
+    10389U,	// DEC32_16r
+    8679U,	// DEC32_32r
+    115175U,	// DEC32m
+    8679U,	// DEC32r
+    108693U,	// DEC64_16m
+    10389U,	// DEC64_16r
+    115175U,	// DEC64_32m
+    8679U,	// DEC64_32r
+    124233U,	// DEC64m
+    9545U,	// DEC64r
+    188468U,	// DEC8m
+    8244U,	// DEC8r
+    109191U,	// DIV16m
+    10887U,	// DIV16r
+    115818U,	// DIV32m
+    9322U,	// DIV32r
+    124840U,	// DIV64m
+    10152U,	// DIV64r
+    188643U,	// DIV8m
+    8419U,	// DIV8r
+    5529U,	// DS_PREFIX
+    11533U,	// EH_RETURN
+    11533U,	// EH_RETURN64
+    4671U,	// EH_SjLj_LongJmp32
+    4761U,	// EH_SjLj_LongJmp64
+    4690U,	// EH_SjLj_SetJmp32
+    4780U,	// EH_SjLj_SetJmp64
+    132353U,	// EH_SjLj_Setup
+    107489285U,	// ENTER
+    5567U,	// ES_PREFIX
+    2173236U,	// FARCALL16i
+    201251U,	// FARCALL16m
+    2171634U,	// FARCALL32i
+    201217U,	// FARCALL32m
+    201234U,	// FARCALL64
+    2173299U,	// FARJMP16i
+    201260U,	// FARJMP16m
+    2171719U,	// FARJMP32i
+    201226U,	// FARJMP32m
+    201243U,	// FARJMP64
+    5333U,	// FSETPM
+    5605U,	// FS_PREFIX
+    5043U,	// GETSEC
+    5662U,	// GS_PREFIX
+    5807U,	// HLT
+    109190U,	// IDIV16m
+    10886U,	// IDIV16r
+    115817U,	// IDIV32m
+    9321U,	// IDIV32r
+    124839U,	// IDIV64m
+    10151U,	// IDIV64r
+    188642U,	// IDIV8m
+    8418U,	// IDIV8r
+    108872U,	// IMUL16m
+    10568U,	// IMUL16r
+    2132296U,	// IMUL16rm
+    7432520U,	// IMUL16rmi
+    7432520U,	// IMUL16rmi8
+    2124104U,	// IMUL16rr
+    18377032U,	// IMUL16rri
+    18377032U,	// IMUL16rri8
+    115462U,	// IMUL32m
+    8966U,	// IMUL32r
+    2138886U,	// IMUL32rm
+    5858054U,	// IMUL32rmi
+    5858054U,	// IMUL32rmi8
+    2122502U,	// IMUL32rr
+    18375430U,	// IMUL32rri
+    18375430U,	// IMUL32rri8
+    124513U,	// IMUL64m
+    9825U,	// IMUL64r
+    2147937U,	// IMUL64rm
+    6383201U,	// IMUL64rmi32
+    6383201U,	// IMUL64rmi8
+    2123361U,	// IMUL64rr
+    18376289U,	// IMUL64rri32
+    18376289U,	// IMUL64rri8
+    188531U,	// IMUL8m
+    8307U,	// IMUL8r
+    150775U,	// IN16
+    534871U,	// IN16ri
+    5888U,	// IN16rr
+    158956U,	// IN32
+    2630428U,	// IN32ri
+    5967U,	// IN32rr
+    175329U,	// IN8
+    4726906U,	// IN8ri
+    5209U,	// IN8rr
+    108699U,	// INC16m
+    10395U,	// INC16r
+    10395U,	// INC32_16r
+    8685U,	// INC32_32r
+    115181U,	// INC32m
+    8685U,	// INC32r
+    108699U,	// INC64_16m
+    10395U,	// INC64_16r
+    115181U,	// INC64_32m
+    8685U,	// INC64_32r
+    124239U,	// INC64m
+    9551U,	// INC64r
+    188474U,	// INC8m
+    8250U,	// INC8r
+    10301U,	// INT
+    4666U,	// INT1
+    4756U,	// INT3
+    5371U,	// INTO
+    5112U,	// INVD
+    206914U,	// INVEPT32
+    206914U,	// INVEPT64
+    188812U,	// INVLPG
+    5948U,	// INVLPGA32
+    6016U,	// INVLPGA64
+    205066U,	// INVPCID32
+    205066U,	// INVPCID64
+    205075U,	// INVVPID32
+    205075U,	// INVVPID64
+    5876U,	// IRET16
+    5291U,	// IRET32
+    5429U,	// IRET64
+    4927U,	// Int_MemBarrier
+    131372U,	// JAE_1
+    131372U,	// JAE_2
+    131372U,	// JAE_4
+    131073U,	// JA_1
+    131073U,	// JA_2
+    131073U,	// JA_4
+    131384U,	// JBE_1
+    131384U,	// JBE_2
+    131384U,	// JBE_4
+    131165U,	// JB_1
+    131165U,	// JB_2
+    131165U,	// JB_4
+    133800U,	// JCXZ
+    133793U,	// JECXZ_32
+    133793U,	// JECXZ_64
+    131408U,	// JE_1
+    131408U,	// JE_2
+    131408U,	// JE_4
+    131396U,	// JGE_1
+    131396U,	// JGE_2
+    131396U,	// JGE_4
+    131464U,	// JG_1
+    131464U,	// JG_2
+    131464U,	// JG_4
+    131412U,	// JLE_1
+    131412U,	// JLE_2
+    131412U,	// JLE_4
+    131783U,	// JL_1
+    131783U,	// JL_2
+    131783U,	// JL_4
+    111149U,	// JMP16m
+    12845U,	// JMP16r
+    119307U,	// JMP32m
+    12811U,	// JMP32r
+    127516U,	// JMP64m
+    12828U,	// JMP64r
+    132324U,	// JMP_1
+    132324U,	// JMP_2
+    132324U,	// JMP_4
+    131424U,	// JNE_1
+    131424U,	// JNE_2
+    131424U,	// JNE_4
+    132302U,	// JNO_1
+    132302U,	// JNO_2
+    132302U,	// JNO_4
+    132329U,	// JNP_1
+    132329U,	// JNP_2
+    132329U,	// JNP_4
+    133163U,	// JNS_1
+    133163U,	// JNS_2
+    133163U,	// JNS_4
+    132298U,	// JO_1
+    132298U,	// JO_2
+    132298U,	// JO_4
+    132320U,	// JP_1
+    132320U,	// JP_2
+    132320U,	// JP_4
+    133806U,	// JRCXZ
+    133159U,	// JS_1
+    133159U,	// JS_2
+    133159U,	// JS_4
+    5152U,	// LAHF
+    100759U,	// LAR16rm
+    2173335U,	// LAR16rr
+    99185U,	// LAR32rm
+    2171761U,	// LAR32rr
+    100020U,	// LAR64rm
+    2172596U,	// LAR64rr
+    1067279U,	// LCMPXCHG16
+    180235U,	// LCMPXCHG16B
+    3162784U,	// LCMPXCHG32
+    4212234U,	// LCMPXCHG64
+    5259347U,	// LCMPXCHG8
+    122903U,	// LCMPXCHG8B
+    215529U,	// LDS16rm
+    213958U,	// LDS32rm
+    67677U,	// LEA16r
+    65967U,	// LEA32r
+    65967U,	// LEA64_32r
+    83217U,	// LEA64r
+    5139U,	// LEAVE
+    5139U,	// LEAVE64
+    215542U,	// LES16rm
+    213971U,	// LES32rm
+    215548U,	// LFS16rm
+    213977U,	// LFS32rm
+    214809U,	// LFS64rm
+    199224U,	// LGDT16m
+    197653U,	// LGDT32m
+    198478U,	// LGDT64m
+    215554U,	// LGS16rm
+    213983U,	// LGS32rm
+    214815U,	// LGS64rm
+    199238U,	// LIDT16m
+    197667U,	// LIDT32m
+    198492U,	// LIDT64m
+    109140U,	// LLDT16m
+    10836U,	// LLDT16r
+    109203U,	// LMSW16m
+    10899U,	// LMSW16r
+    1067176U,	// LOCK_ADD16mi
+    1067176U,	// LOCK_ADD16mi8
+    1067176U,	// LOCK_ADD16mr
+    3162627U,	// LOCK_ADD32mi
+    3162627U,	// LOCK_ADD32mi8
+    3162627U,	// LOCK_ADD32mr
+    4212069U,	// LOCK_ADD64mi32
+    4212069U,	// LOCK_ADD64mi8
+    4212069U,	// LOCK_ADD64mr
+    5259329U,	// LOCK_ADD8mi
+    5259329U,	// LOCK_ADD8mr
+    1067201U,	// LOCK_AND16mi
+    1067201U,	// LOCK_AND16mi8
+    1067201U,	// LOCK_AND16mr
+    3162652U,	// LOCK_AND32mi
+    3162652U,	// LOCK_AND32mi8
+    3162652U,	// LOCK_AND32mr
+    4212094U,	// LOCK_AND64mi32
+    4212094U,	// LOCK_AND64mi8
+    4212094U,	// LOCK_AND64mr
+    5259335U,	// LOCK_AND8mi
+    5259335U,	// LOCK_AND8mr
+    108693U,	// LOCK_DEC16m
+    115175U,	// LOCK_DEC32m
+    124233U,	// LOCK_DEC64m
+    188468U,	// LOCK_DEC8m
+    108699U,	// LOCK_INC16m
+    115181U,	// LOCK_INC32m
+    124239U,	// LOCK_INC64m
+    188474U,	// LOCK_INC8m
+    1067446U,	// LOCK_OR16mi
+    1067446U,	// LOCK_OR16mi8
+    1067446U,	// LOCK_OR16mr
+    3163018U,	// LOCK_OR32mi
+    3163018U,	// LOCK_OR32mi8
+    3163018U,	// LOCK_OR32mr
+    4212429U,	// LOCK_OR64mi32
+    4212429U,	// LOCK_OR64mi8
+    4212429U,	// LOCK_OR64mr
+    5259416U,	// LOCK_OR8mi
+    5259416U,	// LOCK_OR8mr
+    5204U,	// LOCK_PREFIX
+    1067129U,	// LOCK_SUB16mi
+    1067129U,	// LOCK_SUB16mi8
+    1067129U,	// LOCK_SUB16mr
+    3162571U,	// LOCK_SUB32mi
+    3162571U,	// LOCK_SUB32mi8
+    3162571U,	// LOCK_SUB32mr
+    4212013U,	// LOCK_SUB64mi32
+    4212013U,	// LOCK_SUB64mi8
+    4212013U,	// LOCK_SUB64mr
+    5259304U,	// LOCK_SUB8mi
+    5259304U,	// LOCK_SUB8mr
+    1067451U,	// LOCK_XOR16mi
+    1067451U,	// LOCK_XOR16mi8
+    1067451U,	// LOCK_XOR16mr
+    3163023U,	// LOCK_XOR32mi
+    3163023U,	// LOCK_XOR32mi8
+    3163023U,	// LOCK_XOR32mr
+    4212443U,	// LOCK_XOR64mi32
+    4212443U,	// LOCK_XOR64mi8
+    4212443U,	// LOCK_XOR64mr
+    5259421U,	// LOCK_XOR8mi
+    5259421U,	// LOCK_XOR8mr
+    4939955U,	// LODSB
+    2851788U,	// LODSL
+    239378U,	// LODSQ
+    772591U,	// LODSW
+    132341U,	// LOOP
+    131444U,	// LOOPE
+    131429U,	// LOOPNE
+    9272U,	// LRETIL
+    10097U,	// LRETIQ
+    10850U,	// LRETIW
+    5297U,	// LRETL
+    5435U,	// LRETQ
+    5882U,	// LRETW
+    100674U,	// LSL16rm
+    2173250U,	// LSL16rr
+    66304U,	// LSL32rm
+    2171648U,	// LSL32rr
+    83539U,	// LSL64rm
+    2172499U,	// LSL64rr
+    215576U,	// LSS16rm
+    214005U,	// LSS32rm
+    214837U,	// LSS64rm
+    109005U,	// LTRm
+    10701U,	// LTRr
+    7940263U,	// LXADD16
+    8462850U,	// LXADD32
+    8988004U,	// LXADD64
+    9510976U,	// LXADD8
+    100969U,	// LZCNT16rm
+    2173545U,	// LZCNT16rr
+    66629U,	// LZCNT32rm
+    2171973U,	// LZCNT32rr
+    83832U,	// LZCNT64rm
+    2172792U,	// LZCNT64rr
+    5325U,	// MONTMUL
+    0U,	// MORESTACK_RET
+    0U,	// MORESTACK_RET_RESTORE_R10
+    257158U,	// MOV16ao16
+    257158U,	// MOV16ao16_16
+    1067661U,	// MOV16mi
+    1067661U,	// MOV16mr
+    1067661U,	// MOV16ms
+    780941U,	// MOV16o16a
+    780941U,	// MOV16o16a_16
+    2173581U,	// MOV16ri
+    2173581U,	// MOV16ri_alt
+    101005U,	// MOV16rm
+    2173581U,	// MOV16rr
+    2173581U,	// MOV16rr_REV
+    2173581U,	// MOV16rs
+    101005U,	// MOV16sm
+    2173581U,	// MOV16sr
+    265401U,	// MOV32ao32
+    265401U,	// MOV32ao32_16
+    2172016U,	// MOV32cr
+    2172016U,	// MOV32dr
+    3163248U,	// MOV32mi
+    3163248U,	// MOV32mr
+    3163248U,	// MOV32ms
+    2884720U,	// MOV32o32a
+    2884720U,	// MOV32o32a_16
+    0U,	// MOV32r0
+    2172016U,	// MOV32rc
+    2172016U,	// MOV32rd
+    2172016U,	// MOV32ri
+    0U,	// MOV32ri64
+    2172016U,	// MOV32ri_alt
+    66672U,	// MOV32rm
+    2172016U,	// MOV32rr
+    2172016U,	// MOV32rr_REV
+    2172016U,	// MOV32rs
+    66672U,	// MOV32sm
+    2172016U,	// MOV32sr
+    257121U,	// MOV64ao16
+    265361U,	// MOV64ao32
+    273605U,	// MOV64ao64
+    281269U,	// MOV64ao8
+    2172846U,	// MOV64cr
+    2172846U,	// MOV64dr
+    4212654U,	// MOV64mi32
+    4212654U,	// MOV64mr
+    4212654U,	// MOV64ms
+    780768U,	// MOV64o16a
+    2884541U,	// MOV64o32a
+    3942153U,	// MOV64o64a
+    4997290U,	// MOV64o8a
+    2172846U,	// MOV64rc
+    2172846U,	// MOV64rd
+    2172681U,	// MOV64ri
+    2172846U,	// MOV64ri32
+    83886U,	// MOV64rm
+    2172846U,	// MOV64rr
+    2172846U,	// MOV64rr_REV
+    2172846U,	// MOV64rs
+    83886U,	// MOV64sm
+    2172846U,	// MOV64sr
+    281306U,	// MOV8ao8
+    281306U,	// MOV8ao8_16
+    5259497U,	// MOV8mi
+    5259497U,	// MOV8mr
+    122700009U,	// MOV8mr_NOREX
+    4997353U,	// MOV8o8a
+    4997353U,	// MOV8o8a_16
+    2171113U,	// MOV8ri
+    2171113U,	// MOV8ri_alt
+    139497U,	// MOV8rm
+    10100969U,	// MOV8rm_NOREX
+    2171113U,	// MOV8rr
+    119611625U,	// MOV8rr_NOREX
+    2171113U,	// MOV8rr_REV
+    1067224U,	// MOVBE16mr
+    100568U,	// MOVBE16rm
+    3162675U,	// MOVBE32mr
+    66099U,	// MOVBE32rm
+    4212117U,	// MOVBE64mr
+    83349U,	// MOVBE64rm
+    0U,	// MOVPC32r
+    286920U,	// MOVSB
+    295945U,	// MOVSL
+    304962U,	// MOVSQ
+    313900U,	// MOVSW
+    141425U,	// MOVSX16rm8
+    2173041U,	// MOVSX16rr8
+    99453U,	// MOVSX32rm16
+    139715U,	// MOVSX32rm8
+    2172029U,	// MOVSX32rr16
+    2171331U,	// MOVSX32rr8
+    100283U,	// MOVSX64rm16
+    67161U,	// MOVSX64rm32
+    140581U,	// MOVSX64rm8
+    2172859U,	// MOVSX64rr16
+    2172505U,	// MOVSX64rr32
+    2172197U,	// MOVSX64rr8
+    141447U,	// MOVZX16rm8
+    2173063U,	// MOVZX16rr8
+    139737U,	// MOVZX32_NOREXrm8
+    2171353U,	// MOVZX32_NOREXrr8
+    99461U,	// MOVZX32rm16
+    139737U,	// MOVZX32rm8
+    2172037U,	// MOVZX32rr16
+    2171353U,	// MOVZX32rr8
+    100291U,	// MOVZX64rm16_Q
+    140603U,	// MOVZX64rm8_Q
+    2172867U,	// MOVZX64rr16_Q
+    2172219U,	// MOVZX64rr8_Q
+    108873U,	// MUL16m
+    10569U,	// MUL16r
+    115463U,	// MUL32m
+    8967U,	// MUL32r
+    124514U,	// MUL64m
+    9826U,	// MUL64r
+    188532U,	// MUL8m
+    8308U,	// MUL8r
+    18392219U,	// MULX32rm
+    18375835U,	// MULX32rr
+    18401241U,	// MULX64rm
+    18376665U,	// MULX64rr
+    108809U,	// NEG16m
+    10505U,	// NEG16r
+    115354U,	// NEG32m
+    8858U,	// NEG32r
+    124420U,	// NEG64m
+    9732U,	// NEG64r
+    188493U,	// NEG8m
+    8269U,	// NEG8r
+    5392U,	// NOOP
+    115543U,	// NOOPL
+    108931U,	// NOOPW
+    109177U,	// NOT16m
+    10873U,	// NOT16r
+    115797U,	// NOT32m
+    9301U,	// NOT32r
+    124808U,	// NOT64m
+    10120U,	// NOT64r
+    188629U,	// NOT8m
+    8405U,	// NOT8r
+    534966U,	// OR16i16
+    1067446U,	// OR16mi
+    1067446U,	// OR16mi8
+    1067446U,	// OR16mr
+    1599926U,	// OR16ri
+    1599926U,	// OR16ri8
+    1608118U,	// OR16rm
+    1599926U,	// OR16rr
+    2124214U,	// OR16rr_REV
+    2630538U,	// OR32i32
+    3163018U,	// OR32mi
+    3163018U,	// OR32mi8
+    3163018U,	// OR32mr
+    3163018U,	// OR32mrLocked
+    1598346U,	// OR32ri
+    1598346U,	// OR32ri8
+    1614730U,	// OR32rm
+    1598346U,	// OR32rr
+    2122634U,	// OR32rr_REV
+    3679949U,	// OR64i32
+    4212429U,	// OR64mi32
+    4212429U,	// OR64mi8
+    4212429U,	// OR64mr
+    1599181U,	// OR64ri32
+    1599181U,	// OR64ri8
+    1623757U,	// OR64rm
+    1599181U,	// OR64rr
+    2123469U,	// OR64rr_REV
+    4726936U,	// OR8i8
+    5259416U,	// OR8mi
+    5259416U,	// OR8mr
+    1597592U,	// OR8ri
+    57496U,	// OR8rm
+    1597592U,	// OR8rr
+    2121880U,	// OR8rr_REV
+    11387U,	// OUT16ir
+    6049U,	// OUT16rr
+    11437U,	// OUT32ir
+    6063U,	// OUT32rr
+    10959U,	// OUT8ir
+    6035U,	// OUT8rr
+    10707137U,	// OUTSB
+    10716161U,	// OUTSL
+    10734116U,	// OUTSW
+    18391866U,	// PDEP32rm
+    18375482U,	// PDEP32rr
+    18400912U,	// PDEP64rm
+    18376336U,	// PDEP64rr
+    18392162U,	// PEXT32rm
+    18375778U,	// PEXT32rr
+    18401184U,	// PEXT64rm
+    18376608U,	// PEXT64rr
+    10633U,	// POP16r
+    108937U,	// POP16rmm
+    10633U,	// POP16rmr
+    9053U,	// POP32r
+    115549U,	// POP32rmm
+    9053U,	// POP32rmr
+    9894U,	// POP64r
+    124582U,	// POP64rmm
+    9894U,	// POP64rmr
+    5832U,	// POPA16
+    5229U,	// POPA32
+    5551U,	// POPDS16
+    5532U,	// POPDS32
+    5589U,	// POPES16
+    5570U,	// POPES32
+    5845U,	// POPF16
+    5242U,	// POPF32
+    5403U,	// POPF64
+    5646U,	// POPFS16
+    5608U,	// POPFS32
+    5627U,	// POPFS64
+    5703U,	// POPGS16
+    5665U,	// POPGS32
+    5684U,	// POPGS64
+    5793U,	// POPSS16
+    5774U,	// POPSS32
+    10529U,	// PUSH16i8
+    10529U,	// PUSH16r
+    108833U,	// PUSH16rmm
+    10529U,	// PUSH16rmr
+    8882U,	// PUSH32i8
+    8882U,	// PUSH32r
+    115378U,	// PUSH32rmm
+    8882U,	// PUSH32rmr
+    10529U,	// PUSH64i16
+    9756U,	// PUSH64i32
+    9756U,	// PUSH64i8
+    9756U,	// PUSH64r
+    124444U,	// PUSH64rmm
+    9756U,	// PUSH64rmr
+    5825U,	// PUSHA16
+    5222U,	// PUSHA32
+    5512U,	// PUSHCS16
+    5502U,	// PUSHCS32
+    5541U,	// PUSHDS16
+    5522U,	// PUSHDS32
+    5579U,	// PUSHES16
+    5560U,	// PUSHES32
+    5838U,	// PUSHF16
+    5235U,	// PUSHF32
+    5396U,	// PUSHF64
+    5636U,	// PUSHFS16
+    5598U,	// PUSHFS32
+    5617U,	// PUSHFS64
+    5693U,	// PUSHGS16
+    5655U,	// PUSHGS32
+    5674U,	// PUSHGS64
+    5783U,	// PUSHSS16
+    5764U,	// PUSHSS32
+    10529U,	// PUSHi16
+    8882U,	// PUSHi32
+    108840U,	// RCL16m1
+    109588U,	// RCL16mCL
+    1067304U,	// RCL16mi
+    10536U,	// RCL16r1
+    11284U,	// RCL16rCL
+    2124072U,	// RCL16ri
+    115412U,	// RCL32m1
+    117578U,	// RCL32mCL
+    3162836U,	// RCL32mi
+    8916U,	// RCL32r1
+    11082U,	// RCL32rCL
+    2122452U,	// RCL32ri
+    124474U,	// RCL64m1
+    125871U,	// RCL64mCL
+    4212282U,	// RCL64mi
+    9786U,	// RCL64r1
+    11183U,	// RCL64rCL
+    2123322U,	// RCL64ri
+    188513U,	// RCL8m1
+    191205U,	// RCL8mCL
+    5259361U,	// RCL8mi
+    8289U,	// RCL8r1
+    10981U,	// RCL8rCL
+    2121825U,	// RCL8ri
+    108963U,	// RCR16m1
+    109632U,	// RCR16mCL
+    1067427U,	// RCR16mi
+    10659U,	// RCR16r1
+    11328U,	// RCR16rCL
+    2124195U,	// RCR16ri
+    115581U,	// RCR32m1
+    117622U,	// RCR32mCL
+    3163005U,	// RCR32mi
+    9085U,	// RCR32r1
+    11126U,	// RCR32rCL
+    2122621U,	// RCR32ri
+    124608U,	// RCR64m1
+    125915U,	// RCR64mCL
+    4212416U,	// RCR64mi
+    9920U,	// RCR64r1
+    11227U,	// RCR64rCL
+    2123456U,	// RCR64ri
+    188555U,	// RCR8m1
+    191249U,	// RCR8mCL
+    5259403U,	// RCR8mi
+    8331U,	// RCR8r1
+    11025U,	// RCR8rCL
+    2121867U,	// RCR8ri
+    8790U,	// RDFSBASE
+    9656U,	// RDFSBASE64
+    8812U,	// RDGSBASE
+    9678U,	// RDGSBASE64
+    5472U,	// RDMSR
+    5063U,	// RDPMC
+    10430U,	// RDRAND16r
+    8729U,	// RDRAND32r
+    9595U,	// RDRAND64r
+    10414U,	// RDSEED16r
+    8713U,	// RDSEED32r
+    9579U,	// RDSEED64r
+    5076U,	// RDTSC
+    5381U,	// RDTSCP
+    4588U,	// RELEASE_MOV16mr
+    4588U,	// RELEASE_MOV32mr
+    4588U,	// RELEASE_MOV64mr
+    4588U,	// RELEASE_MOV8mr
+    5126U,	// REPNE_PREFIX
+    5007U,	// REP_MOVSB_32
+    5007U,	// REP_MOVSB_64
+    5281U,	// REP_MOVSD_32
+    5281U,	// REP_MOVSD_64
+    5419U,	// REP_MOVSQ_64
+    5861U,	// REP_MOVSW_32
+    5861U,	// REP_MOVSW_64
+    5388U,	// REP_PREFIX
+    4997U,	// REP_STOSB_32
+    4997U,	// REP_STOSB_64
+    5271U,	// REP_STOSD_32
+    5271U,	// REP_STOSD_64
+    5409U,	// REP_STOSQ_64
+    5851U,	// REP_STOSW_32
+    5851U,	// REP_STOSW_64
+    9273U,	// RETIL
+    10098U,	// RETIQ
+    10851U,	// RETIW
+    5292U,	// RETL
+    5430U,	// RETQ
+    5877U,	// RETW
+    4842U,	// REX64_PREFIX
+    108860U,	// ROL16m1
+    109610U,	// ROL16mCL
+    1067324U,	// ROL16mi
+    10556U,	// ROL16r1
+    11306U,	// ROL16rCL
+    2124092U,	// ROL16ri
+    115450U,	// ROL32m1
+    117600U,	// ROL32mCL
+    3162874U,	// ROL32mi
+    8954U,	// ROL32r1
+    11104U,	// ROL32rCL
+    2122490U,	// ROL32ri
+    124493U,	// ROL64m1
+    125893U,	// ROL64mCL
+    4212301U,	// ROL64mi
+    9805U,	// ROL64r1
+    11205U,	// ROL64rCL
+    2123341U,	// ROL64ri
+    188525U,	// ROL8m1
+    191227U,	// ROL8mCL
+    5259373U,	// ROL8mi
+    8301U,	// ROL8r1
+    11003U,	// ROL8rCL
+    2121837U,	// ROL8ri
+    108981U,	// ROR16m1
+    109654U,	// ROR16mCL
+    1067445U,	// ROR16mi
+    10677U,	// ROR16r1
+    11350U,	// ROR16rCL
+    2124213U,	// ROR16ri
+    115593U,	// ROR32m1
+    117644U,	// ROR32mCL
+    3163017U,	// ROR32mi
+    9097U,	// ROR32r1
+    11148U,	// ROR32rCL
+    2122633U,	// ROR32ri
+    124620U,	// ROR64m1
+    125937U,	// ROR64mCL
+    4212428U,	// ROR64mi
+    9932U,	// ROR64r1
+    11249U,	// ROR64rCL
+    2123468U,	// ROR64ri
+    188567U,	// ROR8m1
+    191271U,	// ROR8mCL
+    5259415U,	// ROR8mi
+    8343U,	// ROR8r1
+    11047U,	// ROR8rCL
+    2121879U,	// ROR8ri
+    5858487U,	// RORX32mi
+    18375863U,	// RORX32ri
+    6383605U,	// RORX64mi
+    18376693U,	// RORX64ri
+    5340U,	// RSM
+    5157U,	// SAHF
+    5050U,	// SALC
+    108957U,	// SAR16m1
+    109621U,	// SAR16mCL
+    1067421U,	// SAR16mi
+    10653U,	// SAR16r1
+    11317U,	// SAR16rCL
+    2124189U,	// SAR16ri
+    115575U,	// SAR32m1
+    117611U,	// SAR32mCL
+    3162999U,	// SAR32mi
+    9079U,	// SAR32r1
+    11115U,	// SAR32rCL
+    2122615U,	// SAR32ri
+    124602U,	// SAR64m1
+    125904U,	// SAR64mCL
+    4212410U,	// SAR64mi
+    9914U,	// SAR64r1
+    11216U,	// SAR64rCL
+    2123450U,	// SAR64ri
+    188549U,	// SAR8m1
+    191238U,	// SAR8mCL
+    5259397U,	// SAR8mi
+    8325U,	// SAR8r1
+    11014U,	// SAR8rCL
+    2121861U,	// SAR8ri
+    5858473U,	// SARX32rm
+    18375849U,	// SARX32rr
+    6383591U,	// SARX64rm
+    18376679U,	// SARX64rr
+    534635U,	// SBB16i16
+    1067115U,	// SBB16mi
+    1067115U,	// SBB16mi8
+    1067115U,	// SBB16mr
+    1599595U,	// SBB16ri
+    1599595U,	// SBB16ri8
+    1607787U,	// SBB16rm
+    1599595U,	// SBB16rr
+    2123883U,	// SBB16rr_REV
+    2630077U,	// SBB32i32
+    3162557U,	// SBB32mi
+    3162557U,	// SBB32mi8
+    3162557U,	// SBB32mr
+    1597885U,	// SBB32ri
+    1597885U,	// SBB32ri8
+    1614269U,	// SBB32rm
+    1597885U,	// SBB32rr
+    2122173U,	// SBB32rr_REV
+    3679519U,	// SBB64i32
+    4211999U,	// SBB64mi32
+    4211999U,	// SBB64mi8
+    4211999U,	// SBB64mr
+    1598751U,	// SBB64ri32
+    1598751U,	// SBB64ri8
+    1623327U,	// SBB64rm
+    1598751U,	// SBB64rr
+    2123039U,	// SBB64rr_REV
+    4726818U,	// SBB8i8
+    5259298U,	// SBB8mi
+    5259298U,	// SBB8mr
+    1597474U,	// SBB8ri
+    57378U,	// SBB8rm
+    1597474U,	// SBB8rr
+    2121762U,	// SBB8rr_REV
+    674265U,	// SCAS16
+    2778038U,	// SCAS32
+    3835650U,	// SCAS64
+    4890787U,	// SCAS8
+    5719U,	// SEG_ALLOCA_32
+    5719U,	// SEG_ALLOCA_64
+    188721U,	// SETAEm
+    8497U,	// SETAEr
+    188421U,	// SETAm
+    8197U,	// SETAr
+    188733U,	// SETBEm
+    8509U,	// SETBEr
+    0U,	// SETB_C16r
+    0U,	// SETB_C32r
+    0U,	// SETB_C64r
+    0U,	// SETB_C8r
+    188623U,	// SETBm
+    8399U,	// SETBr
+    188795U,	// SETEm
+    8571U,	// SETEr
+    188745U,	// SETGEm
+    8521U,	// SETGEr
+    188820U,	// SETGm
+    8596U,	// SETGr
+    188761U,	// SETLEm
+    8537U,	// SETLEr
+    189503U,	// SETLm
+    9279U,	// SETLr
+    188781U,	// SETNEm
+    8557U,	// SETNEr
+    189651U,	// SETNOm
+    9427U,	// SETNOr
+    189678U,	// SETNPm
+    9454U,	// SETNPr
+    190512U,	// SETNSm
+    10288U,	// SETNSr
+    189658U,	// SETOm
+    9434U,	// SETOr
+    189691U,	// SETPm
+    9467U,	// SETPr
+    190519U,	// SETSm
+    10295U,	// SETSr
+    199231U,	// SGDT16m
+    197660U,	// SGDT32m
+    198485U,	// SGDT64m
+    108846U,	// SHL16m1
+    109599U,	// SHL16mCL
+    1067310U,	// SHL16mi
+    10542U,	// SHL16r1
+    11295U,	// SHL16rCL
+    2124078U,	// SHL16ri
+    115418U,	// SHL32m1
+    117589U,	// SHL32mCL
+    3162842U,	// SHL32mi
+    8922U,	// SHL32r1
+    11093U,	// SHL32rCL
+    2122458U,	// SHL32ri
+    124480U,	// SHL64m1
+    125882U,	// SHL64mCL
+    4212288U,	// SHL64mi
+    9792U,	// SHL64r1
+    11194U,	// SHL64rCL
+    2123328U,	// SHL64ri
+    188519U,	// SHL8m1
+    191216U,	// SHL8mCL
+    5259367U,	// SHL8mi
+    8295U,	// SHL8r1
+    10992U,	// SHL8rCL
+    2121831U,	// SHL8ri
+    1068028U,	// SHLD16mrCL
+    145320119U,	// SHLD16mri8
+    2124796U,	// SHLD16rrCL
+    321719U,	// SHLD16rri8
+    3164978U,	// SHLD32mrCL
+    162095634U,	// SHLD32mri8
+    2124594U,	// SHLD32rrCL
+    320018U,	// SHLD32rri8
+    4213655U,	// SHLD64mrCL
+    178873716U,	// SHLD64mri8
+    2124695U,	// SHLD64rrCL
+    320884U,	// SHLD64rri8
+    5858452U,	// SHLX32rm
+    18375828U,	// SHLX32rr
+    6383570U,	// SHLX64rm
+    18376658U,	// SHLX64rr
+    108975U,	// SHR16m1
+    109643U,	// SHR16mCL
+    1067439U,	// SHR16mi
+    10671U,	// SHR16r1
+    11339U,	// SHR16rCL
+    2124207U,	// SHR16ri
+    115587U,	// SHR32m1
+    117633U,	// SHR32mCL
+    3163011U,	// SHR32mi
+    9091U,	// SHR32r1
+    11137U,	// SHR32rCL
+    2122627U,	// SHR32ri
+    124614U,	// SHR64m1
+    125926U,	// SHR64mCL
+    4212422U,	// SHR64mi
+    9926U,	// SHR64r1
+    11238U,	// SHR64rCL
+    2123462U,	// SHR64ri
+    188561U,	// SHR8m1
+    191260U,	// SHR8mCL
+    5259409U,	// SHR8mi
+    8337U,	// SHR8r1
+    11036U,	// SHR8rCL
+    2121873U,	// SHR8ri
+    1068040U,	// SHRD16mrCL
+    145320135U,	// SHRD16mri8
+    2124808U,	// SHRD16rrCL
+    321735U,	// SHRD16rri8
+    3164990U,	// SHRD32mrCL
+    162095650U,	// SHRD32mri8
+    2124606U,	// SHRD32rrCL
+    320034U,	// SHRD32rri8
+    4213667U,	// SHRD64mrCL
+    178873732U,	// SHRD64mri8
+    2124707U,	// SHRD64rrCL
+    320900U,	// SHRD64rri8
+    5858480U,	// SHRX32rm
+    18375856U,	// SHRX32rr
+    6383598U,	// SHRX64rm
+    18376686U,	// SHRX64rr
+    199245U,	// SIDT16m
+    197674U,	// SIDT32m
+    198499U,	// SIDT64m
+    5936U,	// SKINIT
+    109147U,	// SLDT16m
+    10843U,	// SLDT16r
+    9265U,	// SLDT32r
+    108394U,	// SLDT64m
+    10090U,	// SLDT64r
+    109210U,	// SMSW16m
+    10906U,	// SMSW16r
+    9334U,	// SMSW32r
+    10164U,	// SMSW64r
+    5771U,	// SS_PREFIX
+    5028U,	// STAC
+    5082U,	// STC
+    5101U,	// STD
+    5176U,	// STGI
+    5185U,	// STI
+    174787U,	// STOSB
+    158880U,	// STOSL
+    167124U,	// STOSQ
+    150639U,	// STOSW
+    10707U,	// STR16r
+    9128U,	// STR32r
+    9972U,	// STR64r
+    109011U,	// STRm
+    534649U,	// SUB16i16
+    1067129U,	// SUB16mi
+    1067129U,	// SUB16mi8
+    1067129U,	// SUB16mr
+    1599609U,	// SUB16ri
+    1599609U,	// SUB16ri8
+    1607801U,	// SUB16rm
+    1599609U,	// SUB16rr
+    2123897U,	// SUB16rr_REV
+    2630091U,	// SUB32i32
+    3162571U,	// SUB32mi
+    3162571U,	// SUB32mi8
+    3162571U,	// SUB32mr
+    1597899U,	// SUB32ri
+    1597899U,	// SUB32ri8
+    1614283U,	// SUB32rm
+    1597899U,	// SUB32rr
+    2122187U,	// SUB32rr_REV
+    3679533U,	// SUB64i32
+    4212013U,	// SUB64mi32
+    4212013U,	// SUB64mi8
+    4212013U,	// SUB64mr
+    1598765U,	// SUB64ri32
+    1598765U,	// SUB64ri8
+    1623341U,	// SUB64rm
+    1598765U,	// SUB64rr
+    2123053U,	// SUB64rr_REV
+    4726824U,	// SUB8i8
+    5259304U,	// SUB8mi
+    5259304U,	// SUB8mr
+    1597480U,	// SUB8ri
+    57384U,	// SUB8rm
+    1597480U,	// SUB8rr
+    2121768U,	// SUB8rr_REV
+    5712U,	// SWAPGS
+    5263U,	// SYSCALL
+    5463U,	// SYSENTER
+    5311U,	// SYSEXIT
+    5449U,	// SYSEXIT64
+    5303U,	// SYSRET
+    5441U,	// SYSRET64
+    65789U,	// T1MSKC32rm
+    2171133U,	// T1MSKC32rr
+    82173U,	// T1MSKC64rm
+    2171133U,	// T1MSKC64rr
+    11666660U,	// TAILJMPd
+    11666660U,	// TAILJMPd64
+    11653643U,	// TAILJMPm
+    11661852U,	// TAILJMPm64
+    0U,	// TAILJMPr
+    11547164U,	// TAILJMPr64
+    0U,	// TCRETURNdi
+    0U,	// TCRETURNdi64
+    0U,	// TCRETURNmi
+    0U,	// TCRETURNmi64
+    0U,	// TCRETURNri
+    0U,	// TCRETURNri64
+    535167U,	// TEST16i16
+    1067647U,	// TEST16mi
+    2173567U,	// TEST16ri
+    100991U,	// TEST16rm
+    2173567U,	// TEST16rr
+    2630747U,	// TEST32i32
+    3163227U,	// TEST32mi
+    2171995U,	// TEST32ri
+    66651U,	// TEST32rm
+    2171995U,	// TEST32rr
+    3680153U,	// TEST64i32
+    4212633U,	// TEST64mi32
+    2172825U,	// TEST64ri32
+    83865U,	// TEST64rm
+    2172825U,	// TEST64rr
+    4727003U,	// TEST8i8
+    5259483U,	// TEST8mi
+    2171099U,	// TEST8ri
+    0U,	// TEST8ri_NOREX
+    139483U,	// TEST8rm
+    2171099U,	// TEST8rr
+    4708U,	// TLSCall_32
+    4798U,	// TLSCall_64
+    4721U,	// TLS_addr32
+    4811U,	// TLS_addr64
+    4734U,	// TLS_base_addr32
+    4824U,	// TLS_base_addr64
+    4752U,	// TRAP
+    100977U,	// TZCNT16rm
+    2173553U,	// TZCNT16rr
+    66637U,	// TZCNT32rm
+    2171981U,	// TZCNT32rr
+    83840U,	// TZCNT64rm
+    2172800U,	// TZCNT64rr
+    65960U,	// TZMSK32rm
+    2171304U,	// TZMSK32rr
+    82344U,	// TZMSK64rm
+    2171304U,	// TZMSK64rr
+    4962U,	// UD2B
+    191376642U,	// VAARG_64
+    375926052U,	// VASTART_SAVE_XMM_REGS
+    108564U,	// VERRm
+    10260U,	// VERRr
+    108969U,	// VERWm
+    10665U,	// VERWr
+    5256U,	// VMCALL
+    124924U,	// VMCLEARm
+    5069U,	// VMFUNC
+    5162U,	// VMLAUNCH
+    5901U,	// VMLOAD32
+    5981U,	// VMLOAD64
+    5248U,	// VMMCALL
+    123164U,	// VMPTRLDm
+    125012U,	// VMPTRSTm
+    3162617U,	// VMREAD32rm
+    2171385U,	// VMREAD32rr
+    4212059U,	// VMREAD64rm
+    2172251U,	// VMREAD64rr
+    5117U,	// VMRESUME
+    5925U,	// VMRUN32
+    6005U,	// VMRUN64
+    5913U,	// VMSAVE32
+    5993U,	// VMSAVE64
+    66178U,	// VMWRITE32rm
+    2171522U,	// VMWRITE32rr
+    83428U,	// VMWRITE64rm
+    2172388U,	// VMWRITE64rr
+    5145U,	// VMXOFF
+    124099U,	// VMXON
+    132678U,	// W64ALLOCA
+    5110U,	// WBINVD
+    5344U,	// WIN_ALLOCA
+    5189U,	// WIN_FTOL_32
+    5189U,	// WIN_FTOL_64
+    8801U,	// WRFSBASE
+    9667U,	// WRFSBASE64
+    8823U,	// WRGSBASE
+    9689U,	// WRGSBASE64
+    5478U,	// WRMSR
+    1067175U,	// XADD16rm
+    2173095U,	// XADD16rr
+    3162626U,	// XADD32rm
+    2171394U,	// XADD32rr
+    4212068U,	// XADD64rm
+    2172260U,	// XADD64rr
+    5259328U,	// XADD8rm
+    2170944U,	// XADD8rr
+    534802U,	// XCHG16ar
+    7940370U,	// XCHG16rm
+    12134674U,	// XCHG16rr
+    2630307U,	// XCHG32ar
+    2630307U,	// XCHG32ar64
+    8463011U,	// XCHG32rm
+    12133027U,	// XCHG32rr
+    3679757U,	// XCHG64ar
+    8988173U,	// XCHG64rm
+    12133901U,	// XCHG64rr
+    9510998U,	// XCHG8rm
+    12132438U,	// XCHG8rr
+    5033U,	// XCRYPTCBC
+    4977U,	// XCRYPTCFB
+    5484U,	// XCRYPTCTR
+    4967U,	// XCRYPTECB
+    4987U,	// XCRYPTOFB
+    5811U,	// XGETBV
+    5017U,	// XLAT
+    534971U,	// XOR16i16
+    1067451U,	// XOR16mi
+    1067451U,	// XOR16mi8
+    1067451U,	// XOR16mr
+    1599931U,	// XOR16ri
+    1599931U,	// XOR16ri8
+    1608123U,	// XOR16rm
+    1599931U,	// XOR16rr
+    2124219U,	// XOR16rr_REV
+    2630543U,	// XOR32i32
+    3163023U,	// XOR32mi
+    3163023U,	// XOR32mi8
+    3163023U,	// XOR32mr
+    1598351U,	// XOR32ri
+    1598351U,	// XOR32ri8
+    1614735U,	// XOR32rm
+    1598351U,	// XOR32rr
+    2122639U,	// XOR32rr_REV
+    3679963U,	// XOR64i32
+    4212443U,	// XOR64mi32
+    4212443U,	// XOR64mi8
+    4212443U,	// XOR64mr
+    1599195U,	// XOR64ri32
+    1599195U,	// XOR64ri8
+    1623771U,	// XOR64rm
+    1599195U,	// XOR64rr
+    2123483U,	// XOR64rr_REV
+    4726941U,	// XOR8i8
+    5259421U,	// XOR8mi
+    5259421U,	// XOR8mr
+    1597597U,	// XOR8ri
+    57501U,	// XOR8rm
+    1597597U,	// XOR8rr
+    2121885U,	// XOR8rr_REV
+    198668U,	// XRSTOR
+    198354U,	// XRSTOR64
+    196993U,	// XSAVE
+    198126U,	// XSAVE64
+    198730U,	// XSAVEOPT
+    198542U,	// XSAVEOPT64
+    5818U,	// XSETBV
+    4660U,	// XSHA1
+    4855U,	// XSHA256
+    5132U,	// XSTORE
+    0U
+  };
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 'j', 'a', 9, 0,
+  /* 4 */ 's', 'e', 't', 'a', 9, 0,
+  /* 10 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '1', '6', 'b', 9, 0,
+  /* 22 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', '8', 'b', 9, 0,
+  /* 33 */ 's', 'b', 'b', 'b', 9, 0,
+  /* 39 */ 's', 'u', 'b', 'b', 9, 0,
+  /* 45 */ 'a', 'd', 'c', 'b', 9, 0,
+  /* 51 */ 'd', 'e', 'c', 'b', 9, 0,
+  /* 57 */ 'i', 'n', 'c', 'b', 9, 0,
+  /* 63 */ 'x', 'a', 'd', 'd', 'b', 9, 0,
+  /* 70 */ 'a', 'n', 'd', 'b', 9, 0,
+  /* 76 */ 'n', 'e', 'g', 'b', 9, 0,
+  /* 82 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'b', 9, 0,
+  /* 92 */ 'j', 'b', 9, 0,
+  /* 96 */ 'r', 'c', 'l', 'b', 9, 0,
+  /* 102 */ 's', 'h', 'l', 'b', 9, 0,
+  /* 108 */ 'r', 'o', 'l', 'b', 9, 0,
+  /* 114 */ 'i', 'm', 'u', 'l', 'b', 9, 0,
+  /* 121 */ 'i', 'n', 'b', 9, 0,
+  /* 126 */ 'c', 'm', 'p', 'b', 9, 0,
+  /* 132 */ 's', 'a', 'r', 'b', 9, 0,
+  /* 138 */ 'r', 'c', 'r', 'b', 9, 0,
+  /* 144 */ 's', 'h', 'r', 'b', 9, 0,
+  /* 150 */ 'r', 'o', 'r', 'b', 9, 0,
+  /* 156 */ 'x', 'o', 'r', 'b', 9, 0,
+  /* 162 */ 's', 'c', 'a', 's', 'b', 9, 0,
+  /* 169 */ 'm', 'o', 'v', 'a', 'b', 's', 'b', 9, 0,
+  /* 178 */ 'l', 'o', 'd', 's', 'b', 9, 0,
+  /* 185 */ 'c', 'm', 'p', 's', 'b', 9, 0,
+  /* 192 */ 'o', 'u', 't', 's', 'b', 9, 0,
+  /* 199 */ 'm', 'o', 'v', 's', 'b', 9, 0,
+  /* 206 */ 's', 'e', 't', 'b', 9, 0,
+  /* 212 */ 'n', 'o', 't', 'b', 9, 0,
+  /* 218 */ 't', 'e', 's', 't', 'b', 9, 0,
+  /* 225 */ 'i', 'd', 'i', 'v', 'b', 9, 0,
+  /* 232 */ 'm', 'o', 'v', 'b', 9, 0,
+  /* 238 */ 'b', 'l', 'c', 'i', 'c', 9, 0,
+  /* 245 */ 'b', 'l', 's', 'i', 'c', 9, 0,
+  /* 252 */ 't', '1', 'm', 's', 'k', 'c', 9, 0,
+  /* 260 */ 'a', 'a', 'd', 9, 0,
+  /* 265 */ 'i', 'n', 'v', 'p', 'c', 'i', 'd', 9, 0,
+  /* 274 */ 'i', 'n', 'v', 'v', 'p', 'i', 'd', 9, 0,
+  /* 283 */ 'v', 'm', 'p', 't', 'r', 'l', 'd', 9, 0,
+  /* 292 */ 'b', 'o', 'u', 'n', 'd', 9, 0,
+  /* 299 */ 'j', 'a', 'e', 9, 0,
+  /* 304 */ 's', 'e', 't', 'a', 'e', 9, 0,
+  /* 311 */ 'j', 'b', 'e', 9, 0,
+  /* 316 */ 's', 'e', 't', 'b', 'e', 9, 0,
+  /* 323 */ 'j', 'g', 'e', 9, 0,
+  /* 328 */ 's', 'e', 't', 'g', 'e', 9, 0,
+  /* 335 */ 'j', 'e', 9, 0,
+  /* 339 */ 'j', 'l', 'e', 9, 0,
+  /* 344 */ 's', 'e', 't', 'l', 'e', 9, 0,
+  /* 351 */ 'j', 'n', 'e', 9, 0,
+  /* 356 */ 'l', 'o', 'o', 'p', 'n', 'e', 9, 0,
+  /* 364 */ 's', 'e', 't', 'n', 'e', 9, 0,
+  /* 371 */ 'l', 'o', 'o', 'p', 'e', 9, 0,
+  /* 378 */ 's', 'e', 't', 'e', 9, 0,
+  /* 384 */ 'x', 's', 'a', 'v', 'e', 9, 0,
+  /* 391 */ 'j', 'g', 9, 0,
+  /* 395 */ 'i', 'n', 'v', 'l', 'p', 'g', 9, 0,
+  /* 403 */ 's', 'e', 't', 'g', 9, 0,
+  /* 409 */ 'b', 'l', 'c', 'i', 9, 0,
+  /* 415 */ 'b', 'l', 'c', 'm', 's', 'k', 9, 0,
+  /* 423 */ 't', 'z', 'm', 's', 'k', 9, 0,
+  /* 430 */ 'l', 'e', 'a', 'l', 9, 0,
+  /* 436 */ 'c', 'm', 'o', 'v', 'a', 'l', 9, 0,
+  /* 444 */ 's', 'b', 'b', 'l', 9, 0,
+  /* 450 */ 'm', 'o', 'v', 's', 'b', 'l', 9, 0,
+  /* 458 */ 's', 'u', 'b', 'l', 9, 0,
+  /* 464 */ 'c', 'm', 'o', 'v', 'b', 'l', 9, 0,
+  /* 472 */ 'm', 'o', 'v', 'z', 'b', 'l', 9, 0,
+  /* 480 */ 'a', 'd', 'c', 'l', 9, 0,
+  /* 486 */ 'd', 'e', 'c', 'l', 9, 0,
+  /* 492 */ 'i', 'n', 'c', 'l', 9, 0,
+  /* 498 */ 'b', 't', 'c', 'l', 9, 0,
+  /* 504 */ 'v', 'm', 'r', 'e', 'a', 'd', 'l', 9, 0,
+  /* 513 */ 'x', 'a', 'd', 'd', 'l', 9, 0,
+  /* 520 */ 'r', 'd', 's', 'e', 'e', 'd', 'l', 9, 0,
+  /* 529 */ 's', 'h', 'l', 'd', 'l', 9, 0,
+  /* 536 */ 'r', 'd', 'r', 'a', 'n', 'd', 'l', 9, 0,
+  /* 545 */ 's', 'h', 'r', 'd', 'l', 9, 0,
+  /* 552 */ 'c', 'm', 'o', 'v', 'a', 'e', 'l', 9, 0,
+  /* 561 */ 'c', 'm', 'o', 'v', 'b', 'e', 'l', 9, 0,
+  /* 570 */ 'c', 'm', 'o', 'v', 'g', 'e', 'l', 9, 0,
+  /* 579 */ 'c', 'm', 'o', 'v', 'l', 'e', 'l', 9, 0,
+  /* 588 */ 'c', 'm', 'o', 'v', 'n', 'e', 'l', 9, 0,
+  /* 597 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 'l', 9, 0,
+  /* 608 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 'l', 9, 0,
+  /* 619 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 'l', 9, 0,
+  /* 630 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 'l', 9, 0,
+  /* 641 */ 'v', 'm', 'w', 'r', 'i', 't', 'e', 'l', 9, 0,
+  /* 651 */ 'c', 'm', 'o', 'v', 'e', 'l', 9, 0,
+  /* 659 */ 'b', 's', 'f', 'l', 9, 0,
+  /* 665 */ 'n', 'e', 'g', 'l', 9, 0,
+  /* 671 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'l', 9, 0,
+  /* 681 */ 'c', 'm', 'o', 'v', 'g', 'l', 9, 0,
+  /* 689 */ 'p', 'u', 's', 'h', 'l', 9, 0,
+  /* 696 */ 'b', 'z', 'h', 'i', 'l', 9, 0,
+  /* 703 */ 'b', 'l', 's', 'i', 'l', 9, 0,
+  /* 710 */ 'j', 'l', 9, 0,
+  /* 714 */ 'b', 'l', 's', 'm', 's', 'k', 'l', 9, 0,
+  /* 723 */ 'r', 'c', 'l', 'l', 9, 0,
+  /* 729 */ 's', 'h', 'l', 'l', 9, 0,
+  /* 735 */ 'b', 'l', 'c', 'f', 'i', 'l', 'l', 9, 0,
+  /* 744 */ 'b', 'l', 's', 'f', 'i', 'l', 'l', 9, 0,
+  /* 753 */ 'l', 'c', 'a', 'l', 'l', 'l', 9, 0,
+  /* 761 */ 'r', 'o', 'l', 'l', 9, 0,
+  /* 767 */ 'l', 's', 'l', 'l', 9, 0,
+  /* 773 */ 'i', 'm', 'u', 'l', 'l', 9, 0,
+  /* 780 */ 'c', 'm', 'o', 'v', 'l', 'l', 9, 0,
+  /* 788 */ 'a', 'n', 'd', 'n', 'l', 9, 0,
+  /* 795 */ 'i', 'n', 'l', 9, 0,
+  /* 800 */ 'c', 'm', 'o', 'v', 'n', 'o', 'l', 9, 0,
+  /* 809 */ 'c', 'm', 'o', 'v', 'o', 'l', 9, 0,
+  /* 817 */ 'b', 's', 'w', 'a', 'p', 'l', 9, 0,
+  /* 825 */ 'p', 'd', 'e', 'p', 'l', 9, 0,
+  /* 832 */ 'c', 'm', 'p', 'l', 9, 0,
+  /* 838 */ 'l', 'j', 'm', 'p', 'l', 9, 0,
+  /* 845 */ 'c', 'm', 'o', 'v', 'n', 'p', 'l', 9, 0,
+  /* 854 */ 'n', 'o', 'p', 'l', 9, 0,
+  /* 860 */ 'p', 'o', 'p', 'l', 9, 0,
+  /* 866 */ 'a', 'r', 'p', 'l', 9, 0,
+  /* 872 */ 'c', 'm', 'o', 'v', 'p', 'l', 9, 0,
+  /* 880 */ 'l', 'a', 'r', 'l', 9, 0,
+  /* 886 */ 's', 'a', 'r', 'l', 9, 0,
+  /* 892 */ 'r', 'c', 'r', 'l', 9, 0,
+  /* 898 */ 's', 'h', 'r', 'l', 9, 0,
+  /* 904 */ 'r', 'o', 'r', 'l', 9, 0,
+  /* 910 */ 'x', 'o', 'r', 'l', 9, 0,
+  /* 916 */ 'b', 's', 'r', 'l', 9, 0,
+  /* 922 */ 'b', 'l', 's', 'r', 'l', 9, 0,
+  /* 929 */ 'b', 't', 'r', 'l', 9, 0,
+  /* 935 */ 's', 't', 'r', 'l', 9, 0,
+  /* 941 */ 'b', 'e', 'x', 't', 'r', 'l', 9, 0,
+  /* 949 */ 's', 'c', 'a', 's', 'l', 9, 0,
+  /* 956 */ 'm', 'o', 'v', 'a', 'b', 's', 'l', 9, 0,
+  /* 965 */ 'l', 'd', 's', 'l', 9, 0,
+  /* 971 */ 'l', 'o', 'd', 's', 'l', 9, 0,
+  /* 978 */ 'l', 'e', 's', 'l', 9, 0,
+  /* 984 */ 'l', 'f', 's', 'l', 9, 0,
+  /* 990 */ 'l', 'g', 's', 'l', 9, 0,
+  /* 996 */ 'c', 'm', 'o', 'v', 'n', 's', 'l', 9, 0,
+  /* 1005 */ 'c', 'm', 'p', 's', 'l', 9, 0,
+  /* 1012 */ 'l', 's', 's', 'l', 9, 0,
+  /* 1018 */ 'b', 't', 's', 'l', 9, 0,
+  /* 1024 */ 'o', 'u', 't', 's', 'l', 9, 0,
+  /* 1031 */ 'c', 'm', 'o', 'v', 's', 'l', 9, 0,
+  /* 1039 */ 'b', 't', 'l', 9, 0,
+  /* 1044 */ 'l', 'g', 'd', 't', 'l', 9, 0,
+  /* 1051 */ 's', 'g', 'd', 't', 'l', 9, 0,
+  /* 1058 */ 'l', 'i', 'd', 't', 'l', 9, 0,
+  /* 1065 */ 's', 'i', 'd', 't', 'l', 9, 0,
+  /* 1072 */ 's', 'l', 'd', 't', 'l', 9, 0,
+  /* 1079 */ 'l', 'r', 'e', 't', 'l', 9, 0,
+  /* 1086 */ 's', 'e', 't', 'l', 9, 0,
+  /* 1092 */ 'l', 'z', 'c', 'n', 't', 'l', 9, 0,
+  /* 1100 */ 't', 'z', 'c', 'n', 't', 'l', 9, 0,
+  /* 1108 */ 'n', 'o', 't', 'l', 9, 0,
+  /* 1114 */ 't', 'e', 's', 't', 'l', 9, 0,
+  /* 1121 */ 'p', 'e', 'x', 't', 'l', 9, 0,
+  /* 1128 */ 'i', 'd', 'i', 'v', 'l', 9, 0,
+  /* 1135 */ 'm', 'o', 'v', 'l', 9, 0,
+  /* 1141 */ 's', 'm', 's', 'w', 'l', 9, 0,
+  /* 1148 */ 'm', 'o', 'v', 's', 'w', 'l', 9, 0,
+  /* 1156 */ 'm', 'o', 'v', 'z', 'w', 'l', 9, 0,
+  /* 1164 */ 'a', 'd', 'c', 'x', 'l', 9, 0,
+  /* 1171 */ 's', 'h', 'l', 'x', 'l', 9, 0,
+  /* 1178 */ 'm', 'u', 'l', 'x', 'l', 9, 0,
+  /* 1185 */ 'a', 'd', 'o', 'x', 'l', 9, 0,
+  /* 1192 */ 's', 'a', 'r', 'x', 'l', 9, 0,
+  /* 1199 */ 's', 'h', 'r', 'x', 'l', 9, 0,
+  /* 1206 */ 'r', 'o', 'r', 'x', 'l', 9, 0,
+  /* 1213 */ 'a', 'a', 'm', 9, 0,
+  /* 1218 */ 'v', 'm', 'x', 'o', 'n', 9, 0,
+  /* 1225 */ 'j', 'o', 9, 0,
+  /* 1229 */ 'j', 'n', 'o', 9, 0,
+  /* 1234 */ 's', 'e', 't', 'n', 'o', 9, 0,
+  /* 1241 */ 's', 'e', 't', 'o', 9, 0,
+  /* 1247 */ 'j', 'p', 9, 0,
+  /* 1251 */ 'j', 'm', 'p', 9, 0,
+  /* 1256 */ 'j', 'n', 'p', 9, 0,
+  /* 1261 */ 's', 'e', 't', 'n', 'p', 9, 0,
+  /* 1268 */ 'l', 'o', 'o', 'p', 9, 0,
+  /* 1274 */ 's', 'e', 't', 'p', 9, 0,
+  /* 1280 */ '#', 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'u', 'p', 9, 0,
+  /* 1296 */ 'l', 'e', 'a', 'q', 9, 0,
+  /* 1302 */ 'c', 'm', 'o', 'v', 'a', 'q', 9, 0,
+  /* 1310 */ 's', 'b', 'b', 'q', 9, 0,
+  /* 1316 */ 'm', 'o', 'v', 's', 'b', 'q', 9, 0,
+  /* 1324 */ 's', 'u', 'b', 'q', 9, 0,
+  /* 1330 */ 'c', 'm', 'o', 'v', 'b', 'q', 9, 0,
+  /* 1338 */ 'm', 'o', 'v', 'z', 'b', 'q', 9, 0,
+  /* 1346 */ 'a', 'd', 'c', 'q', 9, 0,
+  /* 1352 */ 'd', 'e', 'c', 'q', 9, 0,
+  /* 1358 */ 'i', 'n', 'c', 'q', 9, 0,
+  /* 1364 */ 'b', 't', 'c', 'q', 9, 0,
+  /* 1370 */ 'v', 'm', 'r', 'e', 'a', 'd', 'q', 9, 0,
+  /* 1379 */ 'x', 'a', 'd', 'd', 'q', 9, 0,
+  /* 1386 */ 'r', 'd', 's', 'e', 'e', 'd', 'q', 9, 0,
+  /* 1395 */ 's', 'h', 'l', 'd', 'q', 9, 0,
+  /* 1402 */ 'r', 'd', 'r', 'a', 'n', 'd', 'q', 9, 0,
+  /* 1411 */ 's', 'h', 'r', 'd', 'q', 9, 0,
+  /* 1418 */ 'c', 'm', 'o', 'v', 'a', 'e', 'q', 9, 0,
+  /* 1427 */ 'c', 'm', 'o', 'v', 'b', 'e', 'q', 9, 0,
+  /* 1436 */ 'c', 'm', 'o', 'v', 'g', 'e', 'q', 9, 0,
+  /* 1445 */ 'c', 'm', 'o', 'v', 'l', 'e', 'q', 9, 0,
+  /* 1454 */ 'c', 'm', 'o', 'v', 'n', 'e', 'q', 9, 0,
+  /* 1463 */ 'r', 'd', 'f', 's', 'b', 'a', 's', 'e', 'q', 9, 0,
+  /* 1474 */ 'w', 'r', 'f', 's', 'b', 'a', 's', 'e', 'q', 9, 0,
+  /* 1485 */ 'r', 'd', 'g', 's', 'b', 'a', 's', 'e', 'q', 9, 0,
+  /* 1496 */ 'w', 'r', 'g', 's', 'b', 'a', 's', 'e', 'q', 9, 0,
+  /* 1507 */ 'v', 'm', 'w', 'r', 'i', 't', 'e', 'q', 9, 0,
+  /* 1517 */ 'x', 's', 'a', 'v', 'e', 'q', 9, 0,
+  /* 1525 */ 'c', 'm', 'o', 'v', 'e', 'q', 9, 0,
+  /* 1533 */ 'b', 's', 'f', 'q', 9, 0,
+  /* 1539 */ 'n', 'e', 'g', 'q', 9, 0,
+  /* 1545 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'q', 9, 0,
+  /* 1555 */ 'c', 'm', 'o', 'v', 'g', 'q', 9, 0,
+  /* 1563 */ 'p', 'u', 's', 'h', 'q', 9, 0,
+  /* 1570 */ 'b', 'z', 'h', 'i', 'q', 9, 0,
+  /* 1577 */ 'b', 'l', 's', 'i', 'q', 9, 0,
+  /* 1584 */ 'b', 'l', 's', 'm', 's', 'k', 'q', 9, 0,
+  /* 1593 */ 'r', 'c', 'l', 'q', 9, 0,
+  /* 1599 */ 's', 'h', 'l', 'q', 9, 0,
+  /* 1605 */ 'c', 'a', 'l', 'l', 'q', 9, 0,
+  /* 1612 */ 'r', 'o', 'l', 'q', 9, 0,
+  /* 1618 */ 'l', 's', 'l', 'q', 9, 0,
+  /* 1624 */ 'm', 'o', 'v', 's', 'l', 'q', 9, 0,
+  /* 1632 */ 'i', 'm', 'u', 'l', 'q', 9, 0,
+  /* 1639 */ 'c', 'm', 'o', 'v', 'l', 'q', 9, 0,
+  /* 1647 */ 'a', 'n', 'd', 'n', 'q', 9, 0,
+  /* 1654 */ 'c', 'm', 'o', 'v', 'n', 'o', 'q', 9, 0,
+  /* 1663 */ 'c', 'm', 'o', 'v', 'o', 'q', 9, 0,
+  /* 1671 */ 'b', 's', 'w', 'a', 'p', 'q', 9, 0,
+  /* 1679 */ 'p', 'd', 'e', 'p', 'q', 9, 0,
+  /* 1686 */ 'c', 'm', 'p', 'q', 9, 0,
+  /* 1692 */ 'c', 'm', 'o', 'v', 'n', 'p', 'q', 9, 0,
+  /* 1701 */ 'p', 'o', 'p', 'q', 9, 0,
+  /* 1707 */ 'c', 'm', 'o', 'v', 'p', 'q', 9, 0,
+  /* 1715 */ 'l', 'a', 'r', 'q', 9, 0,
+  /* 1721 */ 's', 'a', 'r', 'q', 9, 0,
+  /* 1727 */ 'r', 'c', 'r', 'q', 9, 0,
+  /* 1733 */ 's', 'h', 'r', 'q', 9, 0,
+  /* 1739 */ 'r', 'o', 'r', 'q', 9, 0,
+  /* 1745 */ 'x', 'r', 's', 't', 'o', 'r', 'q', 9, 0,
+  /* 1754 */ 'x', 'o', 'r', 'q', 9, 0,
+  /* 1760 */ 'b', 's', 'r', 'q', 9, 0,
+  /* 1766 */ 'b', 'l', 's', 'r', 'q', 9, 0,
+  /* 1773 */ 'b', 't', 'r', 'q', 9, 0,
+  /* 1779 */ 's', 't', 'r', 'q', 9, 0,
+  /* 1785 */ 'b', 'e', 'x', 't', 'r', 'q', 9, 0,
+  /* 1793 */ 's', 'c', 'a', 's', 'q', 9, 0,
+  /* 1800 */ 'm', 'o', 'v', 'a', 'b', 's', 'q', 9, 0,
+  /* 1809 */ 'l', 'o', 'd', 's', 'q', 9, 0,
+  /* 1816 */ 'l', 'f', 's', 'q', 9, 0,
+  /* 1822 */ 'l', 'g', 's', 'q', 9, 0,
+  /* 1828 */ 'c', 'm', 'o', 'v', 'n', 's', 'q', 9, 0,
+  /* 1837 */ 'c', 'm', 'p', 's', 'q', 9, 0,
+  /* 1844 */ 'l', 's', 's', 'q', 9, 0,
+  /* 1850 */ 'b', 't', 's', 'q', 9, 0,
+  /* 1856 */ 'c', 'm', 'o', 'v', 's', 'q', 9, 0,
+  /* 1864 */ 'b', 't', 'q', 9, 0,
+  /* 1869 */ 'l', 'g', 'd', 't', 'q', 9, 0,
+  /* 1876 */ 's', 'g', 'd', 't', 'q', 9, 0,
+  /* 1883 */ 'l', 'i', 'd', 't', 'q', 9, 0,
+  /* 1890 */ 's', 'i', 'd', 't', 'q', 9, 0,
+  /* 1897 */ 's', 'l', 'd', 't', 'q', 9, 0,
+  /* 1904 */ 'l', 'r', 'e', 't', 'q', 9, 0,
+  /* 1911 */ 'l', 'z', 'c', 'n', 't', 'q', 9, 0,
+  /* 1919 */ 't', 'z', 'c', 'n', 't', 'q', 9, 0,
+  /* 1927 */ 'n', 'o', 't', 'q', 9, 0,
+  /* 1933 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', 'q', 9, 0,
+  /* 1944 */ 't', 'e', 's', 't', 'q', 9, 0,
+  /* 1951 */ 'p', 'e', 'x', 't', 'q', 9, 0,
+  /* 1958 */ 'i', 'd', 'i', 'v', 'q', 9, 0,
+  /* 1965 */ 'm', 'o', 'v', 'q', 9, 0,
+  /* 1971 */ 's', 'm', 's', 'w', 'q', 9, 0,
+  /* 1978 */ 'm', 'o', 'v', 's', 'w', 'q', 9, 0,
+  /* 1986 */ 'm', 'o', 'v', 'z', 'w', 'q', 9, 0,
+  /* 1994 */ 'a', 'd', 'c', 'x', 'q', 9, 0,
+  /* 2001 */ 's', 'h', 'l', 'x', 'q', 9, 0,
+  /* 2008 */ 'm', 'u', 'l', 'x', 'q', 9, 0,
+  /* 2015 */ 'a', 'd', 'o', 'x', 'q', 9, 0,
+  /* 2022 */ 's', 'a', 'r', 'x', 'q', 9, 0,
+  /* 2029 */ 's', 'h', 'r', 'x', 'q', 9, 0,
+  /* 2036 */ 'r', 'o', 'r', 'x', 'q', 9, 0,
+  /* 2043 */ 'v', 'm', 'c', 'l', 'e', 'a', 'r', 9, 0,
+  /* 2052 */ 'e', 'n', 't', 'e', 'r', 9, 0,
+  /* 2059 */ 'x', 'r', 's', 't', 'o', 'r', 9, 0,
+  /* 2067 */ 'v', 'e', 'r', 'r', 9, 0,
+  /* 2073 */ 'b', 'e', 'x', 't', 'r', 9, 0,
+  /* 2080 */ 'b', 'l', 'c', 's', 9, 0,
+  /* 2086 */ 'j', 's', 9, 0,
+  /* 2090 */ 'j', 'n', 's', 9, 0,
+  /* 2095 */ 's', 'e', 't', 'n', 's', 9, 0,
+  /* 2102 */ 's', 'e', 't', 's', 9, 0,
+  /* 2108 */ 'i', 'n', 't', 9, 0,
+  /* 2113 */ 'i', 'n', 'v', 'e', 'p', 't', 9, 0,
+  /* 2121 */ 'x', 's', 'a', 'v', 'e', 'o', 'p', 't', 9, 0,
+  /* 2131 */ 'v', 'm', 'p', 't', 'r', 's', 't', 9, 0,
+  /* 2140 */ 'l', 'e', 'a', 'w', 9, 0,
+  /* 2146 */ 'c', 'm', 'o', 'v', 'a', 'w', 9, 0,
+  /* 2154 */ 's', 'b', 'b', 'w', 9, 0,
+  /* 2160 */ 'm', 'o', 'v', 's', 'b', 'w', 9, 0,
+  /* 2168 */ 's', 'u', 'b', 'w', 9, 0,
+  /* 2174 */ 'c', 'm', 'o', 'v', 'b', 'w', 9, 0,
+  /* 2182 */ 'm', 'o', 'v', 'z', 'b', 'w', 9, 0,
+  /* 2190 */ 'a', 'd', 'c', 'w', 9, 0,
+  /* 2196 */ 'd', 'e', 'c', 'w', 9, 0,
+  /* 2202 */ 'i', 'n', 'c', 'w', 9, 0,
+  /* 2208 */ 'b', 't', 'c', 'w', 9, 0,
+  /* 2214 */ 'x', 'a', 'd', 'd', 'w', 9, 0,
+  /* 2221 */ 'r', 'd', 's', 'e', 'e', 'd', 'w', 9, 0,
+  /* 2230 */ 's', 'h', 'l', 'd', 'w', 9, 0,
+  /* 2237 */ 'r', 'd', 'r', 'a', 'n', 'd', 'w', 9, 0,
+  /* 2246 */ 's', 'h', 'r', 'd', 'w', 9, 0,
+  /* 2253 */ 'c', 'm', 'o', 'v', 'a', 'e', 'w', 9, 0,
+  /* 2262 */ 'c', 'm', 'o', 'v', 'b', 'e', 'w', 9, 0,
+  /* 2271 */ 'c', 'm', 'o', 'v', 'g', 'e', 'w', 9, 0,
+  /* 2280 */ 'c', 'm', 'o', 'v', 'l', 'e', 'w', 9, 0,
+  /* 2289 */ 'c', 'm', 'o', 'v', 'n', 'e', 'w', 9, 0,
+  /* 2298 */ 'c', 'm', 'o', 'v', 'e', 'w', 9, 0,
+  /* 2306 */ 'b', 's', 'f', 'w', 9, 0,
+  /* 2312 */ 'n', 'e', 'g', 'w', 9, 0,
+  /* 2318 */ 'c', 'm', 'p', 'x', 'c', 'h', 'g', 'w', 9, 0,
+  /* 2328 */ 'c', 'm', 'o', 'v', 'g', 'w', 9, 0,
+  /* 2336 */ 'p', 'u', 's', 'h', 'w', 9, 0,
+  /* 2343 */ 'r', 'c', 'l', 'w', 9, 0,
+  /* 2349 */ 's', 'h', 'l', 'w', 9, 0,
+  /* 2355 */ 'l', 'c', 'a', 'l', 'l', 'w', 9, 0,
+  /* 2363 */ 'r', 'o', 'l', 'w', 9, 0,
+  /* 2369 */ 'l', 's', 'l', 'w', 9, 0,
+  /* 2375 */ 'i', 'm', 'u', 'l', 'w', 9, 0,
+  /* 2382 */ 'c', 'm', 'o', 'v', 'l', 'w', 9, 0,
+  /* 2390 */ 'i', 'n', 'w', 9, 0,
+  /* 2395 */ 'c', 'm', 'o', 'v', 'n', 'o', 'w', 9, 0,
+  /* 2404 */ 'c', 'm', 'o', 'v', 'o', 'w', 9, 0,
+  /* 2412 */ 'c', 'm', 'p', 'w', 9, 0,
+  /* 2418 */ 'l', 'j', 'm', 'p', 'w', 9, 0,
+  /* 2425 */ 'c', 'm', 'o', 'v', 'n', 'p', 'w', 9, 0,
+  /* 2434 */ 'n', 'o', 'p', 'w', 9, 0,
+  /* 2440 */ 'p', 'o', 'p', 'w', 9, 0,
+  /* 2446 */ 'c', 'm', 'o', 'v', 'p', 'w', 9, 0,
+  /* 2454 */ 'l', 'a', 'r', 'w', 9, 0,
+  /* 2460 */ 's', 'a', 'r', 'w', 9, 0,
+  /* 2466 */ 'r', 'c', 'r', 'w', 9, 0,
+  /* 2472 */ 'v', 'e', 'r', 'w', 9, 0,
+  /* 2478 */ 's', 'h', 'r', 'w', 9, 0,
+  /* 2484 */ 'r', 'o', 'r', 'w', 9, 0,
+  /* 2490 */ 'x', 'o', 'r', 'w', 9, 0,
+  /* 2496 */ 'b', 's', 'r', 'w', 9, 0,
+  /* 2502 */ 'b', 't', 'r', 'w', 9, 0,
+  /* 2508 */ 'l', 't', 'r', 'w', 9, 0,
+  /* 2514 */ 's', 't', 'r', 'w', 9, 0,
+  /* 2520 */ 's', 'c', 'a', 's', 'w', 9, 0,
+  /* 2527 */ 'm', 'o', 'v', 'a', 'b', 's', 'w', 9, 0,
+  /* 2536 */ 'l', 'd', 's', 'w', 9, 0,
+  /* 2542 */ 'l', 'o', 'd', 's', 'w', 9, 0,
+  /* 2549 */ 'l', 'e', 's', 'w', 9, 0,
+  /* 2555 */ 'l', 'f', 's', 'w', 9, 0,
+  /* 2561 */ 'l', 'g', 's', 'w', 9, 0,
+  /* 2567 */ 'c', 'm', 'o', 'v', 'n', 's', 'w', 9, 0,
+  /* 2576 */ 'c', 'm', 'p', 's', 'w', 9, 0,
+  /* 2583 */ 'l', 's', 's', 'w', 9, 0,
+  /* 2589 */ 'b', 't', 's', 'w', 9, 0,
+  /* 2595 */ 'o', 'u', 't', 's', 'w', 9, 0,
+  /* 2602 */ 'c', 'm', 'o', 'v', 's', 'w', 9, 0,
+  /* 2610 */ 'b', 't', 'w', 9, 0,
+  /* 2615 */ 'l', 'g', 'd', 't', 'w', 9, 0,
+  /* 2622 */ 's', 'g', 'd', 't', 'w', 9, 0,
+  /* 2629 */ 'l', 'i', 'd', 't', 'w', 9, 0,
+  /* 2636 */ 's', 'i', 'd', 't', 'w', 9, 0,
+  /* 2643 */ 'l', 'l', 'd', 't', 'w', 9, 0,
+  /* 2650 */ 's', 'l', 'd', 't', 'w', 9, 0,
+  /* 2657 */ 'l', 'r', 'e', 't', 'w', 9, 0,
+  /* 2664 */ 'l', 'z', 'c', 'n', 't', 'w', 9, 0,
+  /* 2672 */ 't', 'z', 'c', 'n', 't', 'w', 9, 0,
+  /* 2680 */ 'n', 'o', 't', 'w', 9, 0,
+  /* 2686 */ 't', 'e', 's', 't', 'w', 9, 0,
+  /* 2693 */ 'i', 'd', 'i', 'v', 'w', 9, 0,
+  /* 2700 */ 'm', 'o', 'v', 'w', 9, 0,
+  /* 2706 */ 'l', 'm', 's', 'w', 'w', 9, 0,
+  /* 2713 */ 's', 'm', 's', 'w', 'w', 9, 0,
+  /* 2720 */ 'j', 'e', 'c', 'x', 'z', 9, 0,
+  /* 2727 */ 'j', 'c', 'x', 'z', 9, 0,
+  /* 2733 */ 'j', 'r', 'c', 'x', 'z', 9, 0,
+  /* 2740 */ 'm', 'o', 'v', 'a', 'b', 's', 'b', 9, '%', 'a', 'l', ',', 32, 0,
+  /* 2754 */ 's', 't', 'o', 's', 'b', 9, '%', 'a', 'l', ',', 32, 0,
+  /* 2766 */ 'o', 'u', 't', 'b', 9, '%', 'a', 'l', ',', 32, 0,
+  /* 2777 */ 'm', 'o', 'v', 'b', 9, '%', 'a', 'l', ',', 32, 0,
+  /* 2788 */ 'r', 'c', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2799 */ 's', 'h', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2810 */ 'r', 'o', 'l', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2821 */ 's', 'a', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2832 */ 'r', 'c', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2843 */ 's', 'h', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2854 */ 'r', 'o', 'r', 'b', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2865 */ 's', 'h', 'l', 'd', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2877 */ 's', 'h', 'r', 'd', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2889 */ 'r', 'c', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2900 */ 's', 'h', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2911 */ 'r', 'o', 'l', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2922 */ 's', 'a', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2933 */ 'r', 'c', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2944 */ 's', 'h', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2955 */ 'r', 'o', 'r', 'l', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2966 */ 's', 'h', 'l', 'd', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2978 */ 's', 'h', 'r', 'd', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 2990 */ 'r', 'c', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3001 */ 's', 'h', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3012 */ 'r', 'o', 'l', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3023 */ 's', 'a', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3034 */ 'r', 'c', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3045 */ 's', 'h', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3056 */ 'r', 'o', 'r', 'q', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3067 */ 's', 'h', 'l', 'd', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3079 */ 's', 'h', 'r', 'd', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3091 */ 'r', 'c', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3102 */ 's', 'h', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3113 */ 'r', 'o', 'l', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3124 */ 's', 'a', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3135 */ 'r', 'c', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3146 */ 's', 'h', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3157 */ 'r', 'o', 'r', 'w', 9, '%', 'c', 'l', ',', 32, 0,
+  /* 3168 */ 'm', 'o', 'v', 'a', 'b', 's', 'w', 9, '%', 'a', 'x', ',', 32, 0,
+  /* 3182 */ 's', 't', 'o', 's', 'w', 9, '%', 'a', 'x', ',', 32, 0,
+  /* 3194 */ 'o', 'u', 't', 'w', 9, '%', 'a', 'x', ',', 32, 0,
+  /* 3205 */ 'm', 'o', 'v', 'w', 9, '%', 'a', 'x', ',', 32, 0,
+  /* 3216 */ 'm', 'o', 'v', 'a', 'b', 's', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0,
+  /* 3231 */ 's', 't', 'o', 's', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0,
+  /* 3244 */ 'o', 'u', 't', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0,
+  /* 3256 */ 'm', 'o', 'v', 'l', 9, '%', 'e', 'a', 'x', ',', 32, 0,
+  /* 3268 */ 'm', 'o', 'v', 'a', 'b', 's', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0,
+  /* 3283 */ 's', 't', 'o', 's', 'q', 9, '%', 'r', 'a', 'x', ',', 32, 0,
+  /* 3296 */ 'i', 'n', 's', 'b', 9, '%', 'd', 'x', ',', 32, 0,
+  /* 3307 */ 'i', 'n', 's', 'l', 9, '%', 'd', 'x', ',', 32, 0,
+  /* 3318 */ 'i', 'n', 's', 'w', 9, '%', 'd', 'x', ',', 32, 0,
+  /* 3329 */ '#', 'V', 'A', 'A', 'R', 'G', '_', '6', '4', 32, 0,
+  /* 3340 */ 'r', 'e', 't', 9, '#', 'e', 'h', '_', 'r', 'e', 't', 'u', 'r', 'n', ',', 32, 'a', 'd', 'd', 'r', ':', 32, 0,
+  /* 3363 */ '#', 'V', 'A', 'S', 'T', 'A', 'R', 'T', '_', 'S', 'A', 'V', 'E', '_', 'X', 'M', 'M', '_', 'R', 'E', 'G', 'S', 32, 0,
+  /* 3387 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '3', '2', '*', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3407 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '1', '6', '*', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3427 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '8', '0', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3447 */ '#', 'A', 'T', 'O', 'M', 'S', 'U', 'B', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3468 */ '#', 'A', 'T', 'O', 'M', 'A', 'D', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3489 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3510 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3532 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3553 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3575 */ '#', 'A', 'T', 'O', 'M', 'S', 'W', 'A', 'P', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3597 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3617 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3638 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3659 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3681 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3700 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3720 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3740 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '1', '6', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3761 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3781 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3800 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3820 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3840 */ '#', 'C', 'M', 'O', 'V', '_', 'F', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3859 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3877 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3896 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3915 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '3', '2', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3935 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3954 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3974 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '2', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 3994 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4014 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4034 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '2', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4054 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '4', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4074 */ '#', 'C', 'M', 'O', 'V', '_', 'V', '8', 'I', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4094 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4113 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4133 */ '#', 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4153 */ '#', 'C', 'M', 'O', 'V', '_', 'F', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4172 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4190 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4209 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4228 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4248 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4267 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4287 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4306 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4326 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4344 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4363 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4382 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '1', '6', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4402 */ '#', 'A', 'T', 'O', 'M', 'A', 'N', 'D', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4420 */ '#', 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4439 */ '#', 'A', 'T', 'O', 'M', 'M', 'I', 'N', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4457 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4476 */ '#', 'C', 'M', 'O', 'V', '_', 'G', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4494 */ '#', 'A', 'T', 'O', 'M', 'O', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4511 */ '#', 'A', 'T', 'O', 'M', 'X', 'O', 'R', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4529 */ '#', 'A', 'T', 'O', 'M', 'M', 'A', 'X', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4547 */ '#', 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '8', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4566 */ '#', 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4587 */ '#', 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', 32, 'P', 'S', 'E', 'U', 'D', 'O', '!', 0,
+  /* 4608 */ 'l', 'c', 'a', 'l', 'l', 'l', 9, '*', 0,
+  /* 4617 */ 'l', 'j', 'm', 'p', 'l', 9, '*', 0,
+  /* 4625 */ 'l', 'c', 'a', 'l', 'l', 'q', 9, '*', 0,
+  /* 4634 */ 'l', 'j', 'm', 'p', 'q', 9, '*', 0,
+  /* 4642 */ 'l', 'c', 'a', 'l', 'l', 'w', 9, '*', 0,
+  /* 4651 */ 'l', 'j', 'm', 'p', 'w', 9, '*', 0,
+  /* 4659 */ 'x', 's', 'h', 'a', '1', 0,
+  /* 4665 */ 'i', 'n', 't', '1', 0,
+  /* 4670 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '3', '2', 0,
+  /* 4689 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '3', '2', 0,
+  /* 4707 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '3', '2', 0,
+  /* 4720 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '3', '2', 0,
+  /* 4733 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '3', '2', 0,
+  /* 4751 */ 'u', 'd', '2', 0,
+  /* 4755 */ 'i', 'n', 't', '3', 0,
+  /* 4760 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'L', 'O', 'N', 'G', 'J', 'M', 'P', '6', '4', 0,
+  /* 4779 */ '#', 'E', 'H', '_', 'S', 'J', 'L', 'J', '_', 'S', 'E', 'T', 'J', 'M', 'P', '6', '4', 0,
+  /* 4797 */ '#', 32, 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '6', '4', 0,
+  /* 4810 */ '#', 32, 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '6', '4', 0,
+  /* 4823 */ '#', 32, 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '6', '4', 0,
+  /* 4841 */ 'r', 'e', 'x', '6', '4', 0,
+  /* 4847 */ 'd', 'a', 't', 'a', '1', '6', 0,
+  /* 4854 */ 'x', 's', 'h', 'a', '2', '5', '6', 0,
+  /* 4862 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
+  /* 4875 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
+  /* 4882 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
+  /* 4892 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', 0,
+  /* 4910 */ '#', 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', 0,
+  /* 4926 */ '#', 'M', 'E', 'M', 'B', 'A', 'R', 'R', 'I', 'E', 'R', 0,
+  /* 4938 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
+  /* 4953 */ 'a', 'a', 'a', 0,
+  /* 4957 */ 'd', 'a', 'a', 0,
+  /* 4961 */ 'u', 'd', '2', 'b', 0,
+  /* 4966 */ 'x', 'c', 'r', 'y', 'p', 't', 'e', 'c', 'b', 0,
+  /* 4976 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'f', 'b', 0,
+  /* 4986 */ 'x', 'c', 'r', 'y', 'p', 't', 'o', 'f', 'b', 0,
+  /* 4996 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'b', 0,
+  /* 5006 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'b', 0,
+  /* 5016 */ 'x', 'l', 'a', 't', 'b', 0,
+  /* 5022 */ 'c', 'l', 'a', 'c', 0,
+  /* 5027 */ 's', 't', 'a', 'c', 0,
+  /* 5032 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 'b', 'c', 0,
+  /* 5042 */ 'g', 'e', 't', 's', 'e', 'c', 0,
+  /* 5049 */ 's', 'a', 'l', 'c', 0,
+  /* 5054 */ 'c', 'l', 'c', 0,
+  /* 5058 */ 'c', 'm', 'c', 0,
+  /* 5062 */ 'r', 'd', 'p', 'm', 'c', 0,
+  /* 5068 */ 'v', 'm', 'f', 'u', 'n', 'c', 0,
+  /* 5075 */ 'r', 'd', 't', 's', 'c', 0,
+  /* 5081 */ 's', 't', 'c', 0,
+  /* 5085 */ 'c', 'p', 'u', 'i', 'd', 0,
+  /* 5091 */ 'c', 'l', 'd', 0,
+  /* 5095 */ 'c', 'l', 't', 'd', 0,
+  /* 5100 */ 's', 't', 'd', 0,
+  /* 5104 */ 'c', 'w', 't', 'd', 0,
+  /* 5109 */ 'w', 'b', 'i', 'n', 'v', 'd', 0,
+  /* 5116 */ 'v', 'm', 'r', 'e', 's', 'u', 'm', 'e', 0,
+  /* 5125 */ 'r', 'e', 'p', 'n', 'e', 0,
+  /* 5131 */ 'x', 's', 't', 'o', 'r', 'e', 0,
+  /* 5138 */ 'l', 'e', 'a', 'v', 'e', 0,
+  /* 5144 */ 'v', 'm', 'x', 'o', 'f', 'f', 0,
+  /* 5151 */ 'l', 'a', 'h', 'f', 0,
+  /* 5156 */ 's', 'a', 'h', 'f', 0,
+  /* 5161 */ 'v', 'm', 'l', 'a', 'u', 'n', 'c', 'h', 0,
+  /* 5170 */ 'c', 'l', 'g', 'i', 0,
+  /* 5175 */ 's', 't', 'g', 'i', 0,
+  /* 5180 */ 'c', 'l', 'i', 0,
+  /* 5184 */ 's', 't', 'i', 0,
+  /* 5188 */ '#', 32, 'w', 'i', 'n', '3', '2', 32, 'f', 'p', 't', 'o', 'u', 'i', 0,
+  /* 5203 */ 'l', 'o', 'c', 'k', 0,
+  /* 5208 */ 'i', 'n', 'b', 9, '%', 'd', 'x', ',', 32, '%', 'a', 'l', 0,
+  /* 5221 */ 'p', 'u', 's', 'h', 'a', 'l', 0,
+  /* 5228 */ 'p', 'o', 'p', 'a', 'l', 0,
+  /* 5234 */ 'p', 'u', 's', 'h', 'f', 'l', 0,
+  /* 5241 */ 'p', 'o', 'p', 'f', 'l', 0,
+  /* 5247 */ 'v', 'm', 'm', 'c', 'a', 'l', 'l', 0,
+  /* 5255 */ 'v', 'm', 'c', 'a', 'l', 'l', 0,
+  /* 5262 */ 's', 'y', 's', 'c', 'a', 'l', 'l', 0,
+  /* 5270 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'l', 0,
+  /* 5280 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'l', 0,
+  /* 5290 */ 'i', 'r', 'e', 't', 'l', 0,
+  /* 5296 */ 'l', 'r', 'e', 't', 'l', 0,
+  /* 5302 */ 's', 'y', 's', 'r', 'e', 't', 'l', 0,
+  /* 5310 */ 's', 'y', 's', 'e', 'x', 'i', 't', 'l', 0,
+  /* 5319 */ 'c', 'w', 't', 'l', 0,
+  /* 5324 */ 'm', 'o', 'n', 't', 'm', 'u', 'l', 0,
+  /* 5332 */ 'f', 's', 'e', 't', 'p', 'm', 0,
+  /* 5339 */ 'r', 's', 'm', 0,
+  /* 5343 */ '#', 32, 'd', 'y', 'n', 'a', 'm', 'i', 'c', 32, 's', 't', 'a', 'c', 'k', 32, 'a', 'l', 'l', 'o', 'c', 'a', 't', 'i', 'o', 'n', 0,
+  /* 5370 */ 'i', 'n', 't', 'o', 0,
+  /* 5375 */ 'c', 'q', 't', 'o', 0,
+  /* 5380 */ 'r', 'd', 't', 's', 'c', 'p', 0,
+  /* 5387 */ 'r', 'e', 'p', 0,
+  /* 5391 */ 'n', 'o', 'p', 0,
+  /* 5395 */ 'p', 'u', 's', 'h', 'f', 'q', 0,
+  /* 5402 */ 'p', 'o', 'p', 'f', 'q', 0,
+  /* 5408 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'q', 0,
+  /* 5418 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'q', 0,
+  /* 5428 */ 'i', 'r', 'e', 't', 'q', 0,
+  /* 5434 */ 'l', 'r', 'e', 't', 'q', 0,
+  /* 5440 */ 's', 'y', 's', 'r', 'e', 't', 'q', 0,
+  /* 5448 */ 's', 'y', 's', 'e', 'x', 'i', 't', 'q', 0,
+  /* 5457 */ 'c', 'l', 't', 'q', 0,
+  /* 5462 */ 's', 'y', 's', 'e', 'n', 't', 'e', 'r', 0,
+  /* 5471 */ 'r', 'd', 'm', 's', 'r', 0,
+  /* 5477 */ 'w', 'r', 'm', 's', 'r', 0,
+  /* 5483 */ 'x', 'c', 'r', 'y', 'p', 't', 'c', 't', 'r', 0,
+  /* 5493 */ 'a', 'a', 's', 0,
+  /* 5497 */ 'd', 'a', 's', 0,
+  /* 5501 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'c', 's', 0,
+  /* 5511 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'c', 's', 0,
+  /* 5521 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'd', 's', 0,
+  /* 5531 */ 'p', 'o', 'p', 'l', 9, '%', 'd', 's', 0,
+  /* 5540 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'd', 's', 0,
+  /* 5550 */ 'p', 'o', 'p', 'w', 9, '%', 'd', 's', 0,
+  /* 5559 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'e', 's', 0,
+  /* 5569 */ 'p', 'o', 'p', 'l', 9, '%', 'e', 's', 0,
+  /* 5578 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'e', 's', 0,
+  /* 5588 */ 'p', 'o', 'p', 'w', 9, '%', 'e', 's', 0,
+  /* 5597 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'f', 's', 0,
+  /* 5607 */ 'p', 'o', 'p', 'l', 9, '%', 'f', 's', 0,
+  /* 5616 */ 'p', 'u', 's', 'h', 'q', 9, '%', 'f', 's', 0,
+  /* 5626 */ 'p', 'o', 'p', 'q', 9, '%', 'f', 's', 0,
+  /* 5635 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'f', 's', 0,
+  /* 5645 */ 'p', 'o', 'p', 'w', 9, '%', 'f', 's', 0,
+  /* 5654 */ 'p', 'u', 's', 'h', 'l', 9, '%', 'g', 's', 0,
+  /* 5664 */ 'p', 'o', 'p', 'l', 9, '%', 'g', 's', 0,
+  /* 5673 */ 'p', 'u', 's', 'h', 'q', 9, '%', 'g', 's', 0,
+  /* 5683 */ 'p', 'o', 'p', 'q', 9, '%', 'g', 's', 0,
+  /* 5692 */ 'p', 'u', 's', 'h', 'w', 9, '%', 'g', 's', 0,
+  /* 5702 */ 'p', 'o', 'p', 'w', 9, '%', 'g', 's', 0,
+  /* 5711 */ 's', 'w', 'a', 'p', 'g', 's', 0,
+  /* 5718 */ '#', 32, 'v', 'a', 'r', 'i', 'a', 'b', 'l', 'e', 32, 's', 'i', 'z', 'e', 'd', 32, 'a', 'l', 'l', 'o', 'c', 'a', 32, 'f', 'o', 'r', 32, 's', 'e', 'g', 'm', 'e', 'n', 't', 'e', 'd', 32, 's', 't', 'a', 'c', 'k', 's', 0,
+  /* 5763 */ 'p', 'u', 's', 'h', 'l', 9, '%', 's', 's', 0,
+  /* 5773 */ 'p', 'o', 'p', 'l', 9, '%', 's', 's', 0,
+  /* 5782 */ 'p', 'u', 's', 'h', 'w', 9, '%', 's', 's', 0,
+  /* 5792 */ 'p', 'o', 'p', 'w', 9, '%', 's', 's', 0,
+  /* 5801 */ 'c', 'l', 't', 's', 0,
+  /* 5806 */ 'h', 'l', 't', 0,
+  /* 5810 */ 'x', 'g', 'e', 't', 'b', 'v', 0,
+  /* 5817 */ 'x', 's', 'e', 't', 'b', 'v', 0,
+  /* 5824 */ 'p', 'u', 's', 'h', 'a', 'w', 0,
+  /* 5831 */ 'p', 'o', 'p', 'a', 'w', 0,
+  /* 5837 */ 'p', 'u', 's', 'h', 'f', 'w', 0,
+  /* 5844 */ 'p', 'o', 'p', 'f', 'w', 0,
+  /* 5850 */ 'r', 'e', 'p', ';', 's', 't', 'o', 's', 'w', 0,
+  /* 5860 */ 'r', 'e', 'p', ';', 'm', 'o', 'v', 's', 'w', 0,
+  /* 5870 */ 'c', 'b', 't', 'w', 0,
+  /* 5875 */ 'i', 'r', 'e', 't', 'w', 0,
+  /* 5881 */ 'l', 'r', 'e', 't', 'w', 0,
+  /* 5887 */ 'i', 'n', 'w', 9, '%', 'd', 'x', ',', 32, '%', 'a', 'x', 0,
+  /* 5900 */ 'v', 'm', 'l', 'o', 'a', 'd', 9, '%', 'e', 'a', 'x', 0,
+  /* 5912 */ 'v', 'm', 's', 'a', 'v', 'e', 9, '%', 'e', 'a', 'x', 0,
+  /* 5924 */ 'v', 'm', 'r', 'u', 'n', 9, '%', 'e', 'a', 'x', 0,
+  /* 5935 */ 's', 'k', 'i', 'n', 'i', 't', 9, '%', 'e', 'a', 'x', 0,
+  /* 5947 */ 'i', 'n', 'v', 'l', 'p', 'g', 'a', 9, '%', 'e', 'c', 'x', ',', 32, '%', 'e', 'a', 'x', 0,
+  /* 5966 */ 'i', 'n', 'l', 9, '%', 'd', 'x', ',', 32, '%', 'e', 'a', 'x', 0,
+  /* 5980 */ 'v', 'm', 'l', 'o', 'a', 'd', 9, '%', 'r', 'a', 'x', 0,
+  /* 5992 */ 'v', 'm', 's', 'a', 'v', 'e', 9, '%', 'r', 'a', 'x', 0,
+  /* 6004 */ 'v', 'm', 'r', 'u', 'n', 9, '%', 'r', 'a', 'x', 0,
+  /* 6015 */ 'i', 'n', 'v', 'l', 'p', 'g', 'a', 9, '%', 'e', 'c', 'x', ',', 32, '%', 'r', 'a', 'x', 0,
+  /* 6034 */ 'o', 'u', 't', 'b', 9, '%', 'a', 'l', ',', 32, '%', 'd', 'x', 0,
+  /* 6048 */ 'o', 'u', 't', 'w', 9, '%', 'a', 'x', ',', 32, '%', 'd', 'x', 0,
+  /* 6062 */ 'o', 'u', 't', 'l', 9, '%', 'e', 'a', 'x', ',', 32, '%', 'd', 'x', 0,
+  };
+#endif
+
+  // Emit the opcode for the instruction.
+  uint32_t Bits = OpInfo[MCInst_getOpcode(MI)];
+  // assert(Bits != 0 && "Cannot print this instruction.");
+#ifndef CAPSTONE_DIET
+  SStream_concat(O, "%s", AsmStrs+(Bits & 8191)-1);
+#endif
+
+
+  // Fragment 0 encoded into 6 bits for 40 unique commands.
+  //printf("Frag-0: %"PRIu64"\n", (Bits >> 13) & 63);
+  switch ((Bits >> 13) & 63) {
+  default:   // unreachable.
+  case 0:
+    // DBG_VALUE, BUNDLE, LIFETIME_START, LIFETIME_END, AAA, AAS, ACQUIRE_MOV...
+    return;
+    break;
+  case 1:
+    // AAD8i8, AAM8i8, ADC16i16, ADC32i32, ADC64i32, ADC8i8, ADD16i16, ADD32i...
+    printOperand(MI, 0, O); 
+    break;
+  case 2:
+    // ADC16mi, ADC16mi8, ADC16mr, ADC32mi, ADC32mi8, ADC32mr, ADC64mi32, ADC...
+    printOperand(MI, 5, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 3:
+    // ADC16ri, ADC16ri8, ADC16rr, ADC16rr_REV, ADC32ri, ADC32ri8, ADC32rr, A...
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 4:
+    // ADC16rm, ADD16rm, AND16rm, CMOVA16rm, CMOVAE16rm, CMOVB16rm, CMOVBE16r...
+    printi16mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 5:
+    // ADC32rm, ADD32rm, AND32rm, ANDN32rm, CMOVA32rm, CMOVAE32rm, CMOVB32rm,...
+    printi32mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 6:
+    // ADC64rm, ADD64rm, AND64rm, ANDN64rm, CMOVA64rm, CMOVAE64rm, CMOVB64rm,...
+    printi64mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 7:
+    // ADC8rm, ADD8rm, AND8rm, OR8rm, SBB8rm, SUB8rm, XOR8rm
+    printi8mem(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 1, O); 
+    return;
+    break;
+  case 8:
+    // ADCX32rm, ADOX32rm, BLCFILL32rm, BLCI32rm, BLCIC32rm, BLCMSK32rm, BLCS...
+    printi32mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 9:
+    // ADCX32rr, ADCX64rr, ADOX32rr, ADOX64rr, ARPL16rr, BLCFILL32rr, BLCFILL...
+    printOperand(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 10:
+    // ADCX64rm, ADOX64rm, BLCFILL64rm, BLCI64rm, BLCIC64rm, BLCMSK64rm, BLCS...
+    printi64mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 11:
+    // BEXTR32rm, BEXTR64rm, BEXTRI32mi, BEXTRI64mi, BZHI32rm, BZHI64rm, IMUL...
+    printOperand(MI, 6, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 12:
+    // BOUNDS16rm, BSF16rm, BSR16rm, CMP16rm, LAR16rm, LAR32rm, LAR64rm, LSL1...
+    printi16mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 13:
+    // CALL16m, DEC16m, DEC64_16m, DIV16m, IDIV16m, IMUL16m, INC16m, INC64_16...
+    printi16mem(MI, 0, O); 
+    return;
+    break;
+  case 14:
+    // CALL32m, DEC32m, DEC64_32m, DIV32m, IDIV32m, IMUL32m, INC32m, INC64_32...
+    printi32mem(MI, 0, O); 
+    break;
+  case 15:
+    // CALL64m, CMPXCHG8B, DEC64m, DIV64m, IDIV64m, IMUL64m, INC64m, JMP64m, ...
+    printi64mem(MI, 0, O); 
+    break;
+  case 16:
+    // CALL64pcrel32, CALLpcrel16, CALLpcrel32, EH_SjLj_Setup, JAE_1, JAE_2, ...
+    printPCRelImm(MI, 0, O); 
+    break;
+  case 17:
+    // CMP8rm, MOV8rm, MOV8rm_NOREX, MOVSX16rm8, MOVSX32rm8, MOVSX64rm8, MOVZ...
+    printi8mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    break;
+  case 18:
+    // CMPS16, IN16, SCAS16, STOSW
+    printDstIdx16(MI, 0, O); 
+    break;
+  case 19:
+    // CMPS32, IN32, SCAS32, STOSL
+    printDstIdx32(MI, 0, O); 
+    break;
+  case 20:
+    // CMPS64, SCAS64, STOSQ
+    printDstIdx64(MI, 0, O); 
+    break;
+  case 21:
+    // CMPS8, IN8, SCAS8, STOSB
+    printDstIdx8(MI, 0, O); 
+    break;
+  case 22:
+    // CMPXCHG16B, LCMPXCHG16B
+    printi128mem(MI, 0, O); 
+    return;
+    break;
+  case 23:
+    // DEC8m, DIV8m, IDIV8m, IMUL8m, INC8m, INVLPG, LOCK_DEC8m, LOCK_INC8m, M...
+    printi8mem(MI, 0, O); 
+    return;
+    break;
+  case 24:
+    // FARCALL16m, FARCALL32m, FARCALL64, FARJMP16m, FARJMP32m, FARJMP64, LGD...
+    printopaquemem(MI, 0, O); 
+    return;
+    break;
+  case 25:
+    // INVEPT32, INVEPT64, INVPCID32, INVPCID64, INVVPID32, INVVPID64
+    printi128mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 26:
+    // LDS16rm, LDS32rm, LES16rm, LES32rm, LFS16rm, LFS32rm, LFS64rm, LGS16rm...
+    printopaquemem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 27:
+    // LODSB, OUTSB
+    printSrcIdx8(MI, 0, O); 
+    break;
+  case 28:
+    // LODSL, OUTSL
+    printSrcIdx32(MI, 0, O); 
+    break;
+  case 29:
+    // LODSQ
+    printSrcIdx64(MI, 0, O); 
+    SStream_concat(O, "%s", ", %rax"); 
+    return;
+    break;
+  case 30:
+    // LODSW, OUTSW
+    printSrcIdx16(MI, 0, O); 
+    break;
+  case 31:
+    // MOV16ao16, MOV16ao16_16, MOV16o16a, MOV16o16a_16, MOV64ao16, MOV64o16a
+    printMemOffs16(MI, 0, O); 
+    break;
+  case 32:
+    // MOV32ao32, MOV32ao32_16, MOV32o32a, MOV32o32a_16, MOV64ao32, MOV64o32a
+    printMemOffs32(MI, 0, O); 
+    break;
+  case 33:
+    // MOV64ao64, MOV64o64a
+    printMemOffs64(MI, 0, O); 
+    break;
+  case 34:
+    // MOV64ao8, MOV64o8a, MOV8ao8, MOV8ao8_16, MOV8o8a, MOV8o8a_16
+    printMemOffs8(MI, 0, O); 
+    break;
+  case 35:
+    // MOVSB
+    printSrcIdx8(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx8(MI, 0, O); 
+    return;
+    break;
+  case 36:
+    // MOVSL
+    printSrcIdx32(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx32(MI, 0, O); 
+    return;
+    break;
+  case 37:
+    // MOVSQ
+    printSrcIdx64(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx64(MI, 0, O); 
+    return;
+    break;
+  case 38:
+    // MOVSW
+    printSrcIdx16(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printDstIdx16(MI, 0, O); 
+    return;
+    break;
+  case 39:
+    // SHLD16rri8, SHLD32rri8, SHLD64rri8, SHRD16rri8, SHRD32rri8, SHRD64rri8
+    printOperand(MI, 3, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 2, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 1 encoded into 5 bits for 24 unique commands.
+  //printf("Frag-1: %"PRIu64"\n", (Bits >> 19) & 31);
+  switch ((Bits >> 19) & 31) {
+  default:   // unreachable.
+  case 0:
+    // AAD8i8, AAM8i8, BSWAP32r, BSWAP64r, CALL16r, CALL32m, CALL32r, CALL64m...
+    return;
+    break;
+  case 1:
+    // ADC16i16, ADD16i16, AND16i16, CMP16i16, IN16ri, LODSW, MOV16o16a, MOV1...
+    SStream_concat(O, "%s", ", %ax"); 
+    return;
+    break;
+  case 2:
+    // ADC16mi, ADC16mi8, ADC16mr, ADD16mi, ADD16mi8, ADD16mr, AND16mi, AND16...
+    printi16mem(MI, 0, O); 
+    return;
+    break;
+  case 3:
+    // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC32ri, ADC32ri8, ADC32rm, ADC32...
+    printOperand(MI, 1, O); 
+    break;
+  case 4:
+    // ADC16rr_REV, ADC32rr_REV, ADC64rr_REV, ADC8rr_REV, ADCX32rr, ADCX64rr,...
+    printOperand(MI, 0, O); 
+    break;
+  case 5:
+    // ADC32i32, ADD32i32, AND32i32, CMP32i32, IN32ri, LODSL, MOV32o32a, MOV3...
+    SStream_concat(O, "%s", ", %eax"); 
+    return;
+    break;
+  case 6:
+    // ADC32mi, ADC32mi8, ADC32mr, ADD32mi, ADD32mi8, ADD32mr, AND32mi, AND32...
+    printi32mem(MI, 0, O); 
+    return;
+    break;
+  case 7:
+    // ADC64i32, ADD64i32, AND64i32, CMP64i32, MOV64o64a, OR64i32, SBB64i32, ...
+    SStream_concat(O, "%s", ", %rax"); 
+    return;
+    break;
+  case 8:
+    // ADC64mi32, ADC64mi8, ADC64mr, ADD64mi32, ADD64mi8, ADD64mr, AND64mi32,...
+    printi64mem(MI, 0, O); 
+    return;
+    break;
+  case 9:
+    // ADC8i8, ADD8i8, AND8i8, CMP8i8, IN8ri, LODSB, MOV64o8a, MOV8o8a, MOV8o...
+    SStream_concat(O, "%s", ", %al"); 
+    return;
+    break;
+  case 10:
+    // ADC8mi, ADC8mr, ADD8mi, ADD8mr, AND8mi, AND8mr, CMP8mi, CMP8mr, CMPXCH...
+    printi8mem(MI, 0, O); 
+    break;
+  case 11:
+    // BEXTR32rm, BEXTRI32mi, BZHI32rm, IMUL32rmi, IMUL32rmi8, RORX32mi, SARX...
+    printi32mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 12:
+    // BEXTR64rm, BEXTRI64mi, BZHI64rm, IMUL64rmi32, IMUL64rmi8, RORX64mi, SA...
+    printi64mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 13:
+    // CMPS16, CMPS32, CMPS64, CMPS8, ENTER, VAARG_64, VASTART_SAVE_XMM_REGS
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 14:
+    // IMUL16rmi, IMUL16rmi8
+    printi16mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 15:
+    // LXADD16, XCHG16rm
+    printi16mem(MI, 2, O); 
+    return;
+    break;
+  case 16:
+    // LXADD32, XCHG32rm
+    printi32mem(MI, 2, O); 
+    return;
+    break;
+  case 17:
+    // LXADD64, XCHG64rm
+    printi64mem(MI, 2, O); 
+    return;
+    break;
+  case 18:
+    // LXADD8, XCHG8rm
+    printi8mem(MI, 2, O); 
+    return;
+    break;
+  case 19:
+    // MOV8rm_NOREX
+    SStream_concat(O, "%s", "  # NOREX"); 
+    return;
+    break;
+  case 20:
+    // OUTSB, OUTSL, OUTSW
+    SStream_concat(O, "%s", ", %dx"); 
+    return;
+    break;
+  case 21:
+    // SHLD16mri8, SHLD32mri8, SHLD64mri8, SHRD16mri8, SHRD32mri8, SHRD64mri8
+    printOperand(MI, 5, O); 
+    SStream_concat(O, "%s", ", "); 
+    break;
+  case 22:
+    // TAILJMPd, TAILJMPd64, TAILJMPm, TAILJMPm64, TAILJMPr64
+    SStream_concat(O, "%s", "  # TAILCALL"); 
+    return;
+    break;
+  case 23:
+    // XCHG16rr, XCHG32rr, XCHG64rr, XCHG8rr
+    printOperand(MI, 2, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 2 encoded into 4 bits for 12 unique commands.
+  //printf("Frag-2: %"PRIu64"\n", (Bits >> 24) & 15);
+  switch ((Bits >> 24) & 15) {
+  default:   // unreachable.
+  case 0:
+    // ADC16ri, ADC16ri8, ADC16rm, ADC16rr, ADC16rr_REV, ADC32ri, ADC32ri8, A...
+    return;
+    break;
+  case 1:
+    // ANDN32rm, ANDN32rr, ANDN64rm, ANDN64rr, BEXTR32rr, BEXTR64rr, BEXTRI32...
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 0, O); 
+    return;
+    break;
+  case 2:
+    // CMPS16
+    printSrcIdx16(MI, 1, O); 
+    return;
+    break;
+  case 3:
+    // CMPS32
+    printSrcIdx32(MI, 1, O); 
+    return;
+    break;
+  case 4:
+    // CMPS64
+    printSrcIdx64(MI, 1, O); 
+    return;
+    break;
+  case 5:
+    // CMPS8
+    printSrcIdx8(MI, 1, O); 
+    return;
+    break;
+  case 6:
+    // ENTER, VASTART_SAVE_XMM_REGS
+    printOperand(MI, 1, O); 
+    break;
+  case 7:
+    // MOV8mr_NOREX, MOV8rr_NOREX
+    SStream_concat(O, "%s", "  # NOREX"); 
+    return;
+    break;
+  case 8:
+    // SHLD16mri8, SHRD16mri8
+    printi16mem(MI, 0, O); 
+    return;
+    break;
+  case 9:
+    // SHLD32mri8, SHRD32mri8
+    printi32mem(MI, 0, O); 
+    return;
+    break;
+  case 10:
+    // SHLD64mri8, SHRD64mri8
+    printi64mem(MI, 0, O); 
+    return;
+    break;
+  case 11:
+    // VAARG_64
+    printi8mem(MI, 1, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 6, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 7, O); 
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 8, O); 
+    return;
+    break;
+  }
+
+
+  // Fragment 3 encoded into 1 bits for 2 unique commands.
+  //printf("Frag-3: %"PRIu64"\n", (Bits >> 28) & 1);
+  if ((Bits >> 28) & 1) {
+    // VASTART_SAVE_XMM_REGS
+    SStream_concat(O, "%s", ", "); 
+    printOperand(MI, 2, O); 
+    return;
+  } else {
+    // ENTER
+    return;
+  }
+}
+
+
+/// getRegisterName - This method is automatically generated by tblgen
+/// from the register set description.  This returns the assembler name
+/// for the specified register.
+static char *getRegisterName(unsigned RegNo)
+{
+  // assert(RegNo && RegNo < 233 && "Invalid register number!");
+
+#ifndef CAPSTONE_DIET
+  static char AsmStrs[] = {
+  /* 0 */ 's', 't', '(', '0', ')', 0,
+  /* 6 */ 's', 't', '(', '1', ')', 0,
+  /* 12 */ 's', 't', '(', '2', ')', 0,
+  /* 18 */ 's', 't', '(', '3', ')', 0,
+  /* 24 */ 's', 't', '(', '4', ')', 0,
+  /* 30 */ 's', 't', '(', '5', ')', 0,
+  /* 36 */ 's', 't', '(', '6', ')', 0,
+  /* 42 */ 's', 't', '(', '7', ')', 0,
+  /* 48 */ 'x', 'm', 'm', '1', '0', 0,
+  /* 54 */ 'y', 'm', 'm', '1', '0', 0,
+  /* 60 */ 'z', 'm', 'm', '1', '0', 0,
+  /* 66 */ 'c', 'r', '1', '0', 0,
+  /* 71 */ 'x', 'm', 'm', '2', '0', 0,
+  /* 77 */ 'y', 'm', 'm', '2', '0', 0,
+  /* 83 */ 'z', 'm', 'm', '2', '0', 0,
+  /* 89 */ 'x', 'm', 'm', '3', '0', 0,
+  /* 95 */ 'y', 'm', 'm', '3', '0', 0,
+  /* 101 */ 'z', 'm', 'm', '3', '0', 0,
+  /* 107 */ 'k', '0', 0,
+  /* 110 */ 'x', 'm', 'm', '0', 0,
+  /* 115 */ 'y', 'm', 'm', '0', 0,
+  /* 120 */ 'z', 'm', 'm', '0', 0,
+  /* 125 */ 'f', 'p', '0', 0,
+  /* 129 */ 'c', 'r', '0', 0,
+  /* 133 */ 'd', 'r', '0', 0,
+  /* 137 */ 'x', 'm', 'm', '1', '1', 0,
+  /* 143 */ 'y', 'm', 'm', '1', '1', 0,
+  /* 149 */ 'z', 'm', 'm', '1', '1', 0,
+  /* 155 */ 'c', 'r', '1', '1', 0,
+  /* 160 */ 'x', 'm', 'm', '2', '1', 0,
+  /* 166 */ 'y', 'm', 'm', '2', '1', 0,
+  /* 172 */ 'z', 'm', 'm', '2', '1', 0,
+  /* 178 */ 'x', 'm', 'm', '3', '1', 0,
+  /* 184 */ 'y', 'm', 'm', '3', '1', 0,
+  /* 190 */ 'z', 'm', 'm', '3', '1', 0,
+  /* 196 */ 'k', '1', 0,
+  /* 199 */ 'x', 'm', 'm', '1', 0,
+  /* 204 */ 'y', 'm', 'm', '1', 0,
+  /* 209 */ 'z', 'm', 'm', '1', 0,
+  /* 214 */ 'f', 'p', '1', 0,
+  /* 218 */ 'c', 'r', '1', 0,
+  /* 222 */ 'd', 'r', '1', 0,
+  /* 226 */ 'x', 'm', 'm', '1', '2', 0,
+  /* 232 */ 'y', 'm', 'm', '1', '2', 0,
+  /* 238 */ 'z', 'm', 'm', '1', '2', 0,
+  /* 244 */ 'c', 'r', '1', '2', 0,
+  /* 249 */ 'x', 'm', 'm', '2', '2', 0,
+  /* 255 */ 'y', 'm', 'm', '2', '2', 0,
+  /* 261 */ 'z', 'm', 'm', '2', '2', 0,
+  /* 267 */ 'k', '2', 0,
+  /* 270 */ 'x', 'm', 'm', '2', 0,
+  /* 275 */ 'y', 'm', 'm', '2', 0,
+  /* 280 */ 'z', 'm', 'm', '2', 0,
+  /* 285 */ 'f', 'p', '2', 0,
+  /* 289 */ 'c', 'r', '2', 0,
+  /* 293 */ 'd', 'r', '2', 0,
+  /* 297 */ 'x', 'm', 'm', '1', '3', 0,
+  /* 303 */ 'y', 'm', 'm', '1', '3', 0,
+  /* 309 */ 'z', 'm', 'm', '1', '3', 0,
+  /* 315 */ 'c', 'r', '1', '3', 0,
+  /* 320 */ 'x', 'm', 'm', '2', '3', 0,
+  /* 326 */ 'y', 'm', 'm', '2', '3', 0,
+  /* 332 */ 'z', 'm', 'm', '2', '3', 0,
+  /* 338 */ 'k', '3', 0,
+  /* 341 */ 'x', 'm', 'm', '3', 0,
+  /* 346 */ 'y', 'm', 'm', '3', 0,
+  /* 351 */ 'z', 'm', 'm', '3', 0,
+  /* 356 */ 'f', 'p', '3', 0,
+  /* 360 */ 'c', 'r', '3', 0,
+  /* 364 */ 'd', 'r', '3', 0,
+  /* 368 */ 'x', 'm', 'm', '1', '4', 0,
+  /* 374 */ 'y', 'm', 'm', '1', '4', 0,
+  /* 380 */ 'z', 'm', 'm', '1', '4', 0,
+  /* 386 */ 'c', 'r', '1', '4', 0,
+  /* 391 */ 'x', 'm', 'm', '2', '4', 0,
+  /* 397 */ 'y', 'm', 'm', '2', '4', 0,
+  /* 403 */ 'z', 'm', 'm', '2', '4', 0,
+  /* 409 */ 'k', '4', 0,
+  /* 412 */ 'x', 'm', 'm', '4', 0,
+  /* 417 */ 'y', 'm', 'm', '4', 0,
+  /* 422 */ 'z', 'm', 'm', '4', 0,
+  /* 427 */ 'f', 'p', '4', 0,
+  /* 431 */ 'c', 'r', '4', 0,
+  /* 435 */ 'd', 'r', '4', 0,
+  /* 439 */ 'x', 'm', 'm', '1', '5', 0,
+  /* 445 */ 'y', 'm', 'm', '1', '5', 0,
+  /* 451 */ 'z', 'm', 'm', '1', '5', 0,
+  /* 457 */ 'c', 'r', '1', '5', 0,
+  /* 462 */ 'x', 'm', 'm', '2', '5', 0,
+  /* 468 */ 'y', 'm', 'm', '2', '5', 0,
+  /* 474 */ 'z', 'm', 'm', '2', '5', 0,
+  /* 480 */ 'k', '5', 0,
+  /* 483 */ 'x', 'm', 'm', '5', 0,
+  /* 488 */ 'y', 'm', 'm', '5', 0,
+  /* 493 */ 'z', 'm', 'm', '5', 0,
+  /* 498 */ 'f', 'p', '5', 0,
+  /* 502 */ 'c', 'r', '5', 0,
+  /* 506 */ 'd', 'r', '5', 0,
+  /* 510 */ 'x', 'm', 'm', '1', '6', 0,
+  /* 516 */ 'y', 'm', 'm', '1', '6', 0,
+  /* 522 */ 'z', 'm', 'm', '1', '6', 0,
+  /* 528 */ 'x', 'm', 'm', '2', '6', 0,
+  /* 534 */ 'y', 'm', 'm', '2', '6', 0,
+  /* 540 */ 'z', 'm', 'm', '2', '6', 0,
+  /* 546 */ 'k', '6', 0,
+  /* 549 */ 'x', 'm', 'm', '6', 0,
+  /* 554 */ 'y', 'm', 'm', '6', 0,
+  /* 559 */ 'z', 'm', 'm', '6', 0,
+  /* 564 */ 'f', 'p', '6', 0,
+  /* 568 */ 'c', 'r', '6', 0,
+  /* 572 */ 'd', 'r', '6', 0,
+  /* 576 */ 'x', 'm', 'm', '1', '7', 0,
+  /* 582 */ 'y', 'm', 'm', '1', '7', 0,
+  /* 588 */ 'z', 'm', 'm', '1', '7', 0,
+  /* 594 */ 'x', 'm', 'm', '2', '7', 0,
+  /* 600 */ 'y', 'm', 'm', '2', '7', 0,
+  /* 606 */ 'z', 'm', 'm', '2', '7', 0,
+  /* 612 */ 'k', '7', 0,
+  /* 615 */ 'x', 'm', 'm', '7', 0,
+  /* 620 */ 'y', 'm', 'm', '7', 0,
+  /* 625 */ 'z', 'm', 'm', '7', 0,
+  /* 630 */ 'c', 'r', '7', 0,
+  /* 634 */ 'd', 'r', '7', 0,
+  /* 638 */ 'x', 'm', 'm', '1', '8', 0,
+  /* 644 */ 'y', 'm', 'm', '1', '8', 0,
+  /* 650 */ 'z', 'm', 'm', '1', '8', 0,
+  /* 656 */ 'x', 'm', 'm', '2', '8', 0,
+  /* 662 */ 'y', 'm', 'm', '2', '8', 0,
+  /* 668 */ 'z', 'm', 'm', '2', '8', 0,
+  /* 674 */ 'x', 'm', 'm', '8', 0,
+  /* 679 */ 'y', 'm', 'm', '8', 0,
+  /* 684 */ 'z', 'm', 'm', '8', 0,
+  /* 689 */ 'c', 'r', '8', 0,
+  /* 693 */ 'x', 'm', 'm', '1', '9', 0,
+  /* 699 */ 'y', 'm', 'm', '1', '9', 0,
+  /* 705 */ 'z', 'm', 'm', '1', '9', 0,
+  /* 711 */ 'x', 'm', 'm', '2', '9', 0,
+  /* 717 */ 'y', 'm', 'm', '2', '9', 0,
+  /* 723 */ 'z', 'm', 'm', '2', '9', 0,
+  /* 729 */ 'x', 'm', 'm', '9', 0,
+  /* 734 */ 'y', 'm', 'm', '9', 0,
+  /* 739 */ 'z', 'm', 'm', '9', 0,
+  /* 744 */ 'c', 'r', '9', 0,
+  /* 748 */ 'r', '1', '0', 'b', 0,
+  /* 753 */ 'r', '1', '1', 'b', 0,
+  /* 758 */ 'r', '1', '2', 'b', 0,
+  /* 763 */ 'r', '1', '3', 'b', 0,
+  /* 768 */ 'r', '1', '4', 'b', 0,
+  /* 773 */ 'r', '1', '5', 'b', 0,
+  /* 778 */ 'r', '8', 'b', 0,
+  /* 782 */ 'r', '9', 'b', 0,
+  /* 786 */ 'r', '1', '0', 'd', 0,
+  /* 791 */ 'r', '1', '1', 'd', 0,
+  /* 796 */ 'r', '1', '2', 'd', 0,
+  /* 801 */ 'r', '1', '3', 'd', 0,
+  /* 806 */ 'r', '1', '4', 'd', 0,
+  /* 811 */ 'r', '1', '5', 'd', 0,
+  /* 816 */ 'r', '8', 'd', 0,
+  /* 820 */ 'r', '9', 'd', 0,
+  /* 824 */ 'a', 'h', 0,
+  /* 827 */ 'b', 'h', 0,
+  /* 830 */ 'c', 'h', 0,
+  /* 833 */ 'd', 'h', 0,
+  /* 836 */ 'e', 'd', 'i', 0,
+  /* 840 */ 'r', 'd', 'i', 0,
+  /* 844 */ 'e', 's', 'i', 0,
+  /* 848 */ 'r', 's', 'i', 0,
+  /* 852 */ 'a', 'l', 0,
+  /* 855 */ 'b', 'l', 0,
+  /* 858 */ 'c', 'l', 0,
+  /* 861 */ 'd', 'l', 0,
+  /* 864 */ 'd', 'i', 'l', 0,
+  /* 868 */ 's', 'i', 'l', 0,
+  /* 872 */ 'b', 'p', 'l', 0,
+  /* 876 */ 's', 'p', 'l', 0,
+  /* 880 */ 'e', 'b', 'p', 0,
+  /* 884 */ 'r', 'b', 'p', 0,
+  /* 888 */ 'e', 'i', 'p', 0,
+  /* 892 */ 'r', 'i', 'p', 0,
+  /* 896 */ 'e', 's', 'p', 0,
+  /* 900 */ 'r', 's', 'p', 0,
+  /* 904 */ 'c', 's', 0,
+  /* 907 */ 'd', 's', 0,
+  /* 910 */ 'e', 's', 0,
+  /* 913 */ 'f', 's', 0,
+  /* 916 */ 'f', 'l', 'a', 'g', 's', 0,
+  /* 922 */ 's', 's', 0,
+  /* 925 */ 'r', '1', '0', 'w', 0,
+  /* 930 */ 'r', '1', '1', 'w', 0,
+  /* 935 */ 'r', '1', '2', 'w', 0,
+  /* 940 */ 'r', '1', '3', 'w', 0,
+  /* 945 */ 'r', '1', '4', 'w', 0,
+  /* 950 */ 'r', '1', '5', 'w', 0,
+  /* 955 */ 'r', '8', 'w', 0,
+  /* 959 */ 'r', '9', 'w', 0,
+  /* 963 */ 'f', 'p', 's', 'w', 0,
+  /* 968 */ 'e', 'a', 'x', 0,
+  /* 972 */ 'r', 'a', 'x', 0,
+  /* 976 */ 'e', 'b', 'x', 0,
+  /* 980 */ 'r', 'b', 'x', 0,
+  /* 984 */ 'e', 'c', 'x', 0,
+  /* 988 */ 'r', 'c', 'x', 0,
+  /* 992 */ 'e', 'd', 'x', 0,
+  /* 996 */ 'r', 'd', 'x', 0,
+  /* 1000 */ 'e', 'i', 'z', 0,
+  /* 1004 */ 'r', 'i', 'z', 0,
+  };
+
+  static const uint32_t RegAsmOffset[] = {
+    824, 852, 969, 827, 855, 881, 872, 977, 830, 858, 904, 985, 833, 837, 
+    864, 861, 907, 993, 968, 880, 976, 984, 836, 992, 916, 888, 1000, 910, 
+    844, 896, 963, 913, 919, 889, 972, 884, 980, 988, 840, 996, 892, 1004, 
+    848, 900, 845, 868, 897, 876, 922, 129, 218, 289, 360, 431, 502, 568, 
+    630, 689, 744, 66, 155, 244, 315, 386, 457, 133, 222, 293, 364, 435, 
+    506, 572, 634, 125, 214, 285, 356, 427, 498, 564, 107, 196, 267, 338, 
+    409, 480, 546, 612, 111, 200, 271, 342, 413, 484, 550, 616, 690, 745, 
+    67, 156, 245, 316, 387, 458, 0, 6, 12, 18, 24, 30, 36, 42, 
+    110, 199, 270, 341, 412, 483, 549, 615, 674, 729, 48, 137, 226, 297, 
+    368, 439, 510, 576, 638, 693, 71, 160, 249, 320, 391, 462, 528, 594, 
+    656, 711, 89, 178, 115, 204, 275, 346, 417, 488, 554, 620, 679, 734, 
+    54, 143, 232, 303, 374, 445, 516, 582, 644, 699, 77, 166, 255, 326, 
+    397, 468, 534, 600, 662, 717, 95, 184, 120, 209, 280, 351, 422, 493, 
+    559, 625, 684, 739, 60, 149, 238, 309, 380, 451, 522, 588, 650, 705, 
+    83, 172, 261, 332, 403, 474, 540, 606, 668, 723, 101, 190, 778, 782, 
+    748, 753, 758, 763, 768, 773, 816, 820, 786, 791, 796, 801, 806, 811, 
+    955, 959, 925, 930, 935, 940, 945, 950, 
+  };
+
+  //int i;
+  //for (i = 0; i < sizeof(RegAsmOffset)/4; i++)
+  //     printf("%s = %u\n", AsmStrs+RegAsmOffset[i], i + 1);
+  //printf("*************************\n");
+  return AsmStrs+RegAsmOffset[RegNo-1];
+#else
+  return NULL;
+#endif
+}
+
+#ifdef PRINT_ALIAS_INSTR
+#undef PRINT_ALIAS_INSTR
+
+static char *printAliasInstr(MCInst *MI, SStream *OS, void *info)
+{
+  #define GETREGCLASS_CONTAIN(_class, _reg) MCRegisterClass_contains(MCRegisterInfo_getRegClass(MRI, _class), MCOperand_getReg(MCInst_getOperand(MI, _reg)))
+  const char *AsmString;
+  // MCRegisterInfo *MRI = (MCRegisterInfo *)info;
+  switch (MCInst_getOpcode(MI)) {
+  default: return 0;
+  case X86_AAD8i8:
+    if (MCInst_getNumOperands(MI) == 1 &&
+        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
+        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) {
+      // (AAD8i8 10)
+      AsmString = "aad";
+      break;
+    }
+    return 0;
+  case X86_AAM8i8:
+    if (MCInst_getNumOperands(MI) == 1 &&
+        MCOperand_isImm(MCInst_getOperand(MI, 0)) &&
+        MCOperand_getImm(MCInst_getOperand(MI, 0)) == 10) {
+      // (AAM8i8 10)
+      AsmString = "aam";
+      break;
+    }
+    return 0;
+  case X86_XSTORE:
+    if (MCInst_getNumOperands(MI) == 0) {
+      // (XSTORE)
+      AsmString = "xstorerng";
+      break;
+    }
+    return 0;
+  }
+
+  char *tmp = cs_strdup(AsmString), *AsmMnem, *AsmOps;
+  AsmMnem = tmp;
+  AsmOps = strchr(tmp, ' ');
+  if (AsmOps) {
+    *AsmOps = '\0';
+    AsmOps += 1;
+  }
+  SStream_concat(OS, "%s", AsmMnem);
+  if (AsmOps) {
+    SStream_concat(OS, "\t");
+    char *c;
+    for (c = AsmOps; *c; c++) {
+      if (*c == '$') {
+        c += 1;
+        printOperand(MI, *c - 1, OS);
+      } else {
+        SStream_concat(OS, "%c", *c);
+      }
+    }
+  }
+  return tmp;
+}
+
+#endif // PRINT_ALIAS_INSTR
diff --git a/arch/X86/X86GenDisassemblerTables_reduce.inc b/arch/X86/X86GenDisassemblerTables_reduce.inc
new file mode 100644
index 0000000..0c2ea25
--- /dev/null
+++ b/arch/X86/X86GenDisassemblerTables_reduce.inc
@@ -0,0 +1,103001 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|* * X86 Disassembler                                                         *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine, http://www.capstone-engine.org */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
+
+
+static const struct OperandSpecifier x86OperandSets[][5] = {
+  { /* 0 */
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 1 */
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 2 */
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 3 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 4 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 5 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 6 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 7 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 8 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 9 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 10 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 11 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 12 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMM32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 13 */
+    { ENCODING_ID, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 14 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_ID, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 15 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 16 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 17 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_ID, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 18 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 19 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 20 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 21 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 22 */
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 23 */
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 24 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 25 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 26 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 27 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 28 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 29 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 30 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 31 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 32 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_VVVV, TYPE_R32 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 33 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_VVVV, TYPE_R32 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 34 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_VVVV, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 35 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_VVVV, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 36 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_R16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 37 */
+    { ENCODING_RM, TYPE_R16 },
+    { ENCODING_REG, TYPE_R16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 38 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_VVVV, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 39 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_VVVV, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 40 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_VVVV, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 41 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_VVVV, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 42 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 43 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 44 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_ID, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 45 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_ID, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 46 */
+    { ENCODING_VVVV, TYPE_R32 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 47 */
+    { ENCODING_VVVV, TYPE_R32 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 48 */
+    { ENCODING_VVVV, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 49 */
+    { ENCODING_VVVV, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 50 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 51 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 52 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_Rv, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 53 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RO, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 54 */
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 55 */
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 56 */
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMM32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 57 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 58 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 59 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 60 */
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 61 */
+    { ENCODING_ID, TYPE_REL64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 62 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 63 */
+    { ENCODING_IW, TYPE_REL16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 64 */
+    { ENCODING_ID, TYPE_REL32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 65 */
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 66 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_ID, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 67 */
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 68 */
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 69 */
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 70 */
+    { ENCODING_REG, TYPE_R8 },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 71 */
+    { ENCODING_DI, TYPE_DSTIDX16 },
+    { ENCODING_SI, TYPE_SRCIDX16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 72 */
+    { ENCODING_DI, TYPE_DSTIDX32 },
+    { ENCODING_SI, TYPE_SRCIDX32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 73 */
+    { ENCODING_DI, TYPE_DSTIDX64 },
+    { ENCODING_SI, TYPE_SRCIDX64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 74 */
+    { ENCODING_DI, TYPE_DSTIDX8 },
+    { ENCODING_SI, TYPE_SRCIDX8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 75 */
+    { ENCODING_RM, TYPE_M128 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 76 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 77 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 78 */
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 79 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 80 */
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 81 */
+    { ENCODING_IW, TYPE_IMM16 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 82 */
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 83 */
+    { ENCODING_RM, TYPE_M1616 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 84 */
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_IW, TYPE_IMM16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 85 */
+    { ENCODING_RM, TYPE_M1632 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 86 */
+    { ENCODING_RM, TYPE_M1664 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 87 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 88 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 89 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 90 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 91 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 92 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMM32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 93 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 94 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 95 */
+    { ENCODING_DI, TYPE_DSTIDX16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 96 */
+    { ENCODING_DI, TYPE_DSTIDX32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 97 */
+    { ENCODING_DI, TYPE_DSTIDX8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 98 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_M128 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 99 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_M128 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 100 */
+    { ENCODING_IB, TYPE_REL8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 101 */
+    { ENCODING_Iv, TYPE_RELv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 102 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 103 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_M1616 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 104 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_M1632 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 105 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_LEA },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 106 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_LEA },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 107 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_M1664 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 108 */
+    { ENCODING_RM, TYPE_R16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 109 */
+    { ENCODING_SI, TYPE_SRCIDX8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 110 */
+    { ENCODING_SI, TYPE_SRCIDX32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 111 */
+    { ENCODING_SI, TYPE_SRCIDX64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 112 */
+    { ENCODING_SI, TYPE_SRCIDX16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 113 */
+    { ENCODING_IW, TYPE_IMM16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 114 */
+    { ENCODING_Ia, TYPE_MOFFS16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 115 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_SEGMENTREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 116 */
+    { ENCODING_Rv, TYPE_Rv },
+    { ENCODING_Iv, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 117 */
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_REG, TYPE_SEGMENTREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 118 */
+    { ENCODING_REG, TYPE_SEGMENTREG },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 119 */
+    { ENCODING_REG, TYPE_SEGMENTREG },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 120 */
+    { ENCODING_Ia, TYPE_MOFFS32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 121 */
+    { ENCODING_REG, TYPE_CONTROLREG },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 122 */
+    { ENCODING_REG, TYPE_DEBUGREG },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 123 */
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_REG, TYPE_CONTROLREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 124 */
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_REG, TYPE_DEBUGREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 125 */
+    { ENCODING_Ia, TYPE_MOFFS64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 126 */
+    { ENCODING_Ia, TYPE_MOFFS8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 127 */
+    { ENCODING_REG, TYPE_CONTROLREG },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 128 */
+    { ENCODING_REG, TYPE_DEBUGREG },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 129 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_REG, TYPE_CONTROLREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 130 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_REG, TYPE_DEBUGREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 131 */
+    { ENCODING_RO, TYPE_R64 },
+    { ENCODING_IO, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 132 */
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_REG, TYPE_SEGMENTREG },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 133 */
+    { ENCODING_REG, TYPE_SEGMENTREG },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 134 */
+    { ENCODING_RB, TYPE_R8 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 135 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 136 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 137 */
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_RM, TYPE_R16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 138 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_M8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 139 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R16 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 140 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 141 */
+    { ENCODING_Rv, TYPE_Rv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 142 */
+    { ENCODING_RO, TYPE_R64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 143 */
+    { ENCODING_IB, TYPE_IMMv },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 144 */
+    { ENCODING_IB, TYPE_IMM32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 145 */
+    { ENCODING_IB, TYPE_IMM64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 146 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 147 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 148 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 149 */
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 150 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 151 */
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 152 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 153 */
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 154 */
+    { ENCODING_DI, TYPE_DSTIDX64 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 155 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 156 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_Rv },
+    { ENCODING_REG, TYPE_Rv },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 157 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 158 */
+    { ENCODING_DUP, TYPE_DUP1 },
+    { ENCODING_RM, TYPE_R64 },
+    { ENCODING_REG, TYPE_R64 },
+    { ENCODING_IB, TYPE_IMM8 },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 159 */
+    { ENCODING_RM, TYPE_Mv },
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 160 */
+    { ENCODING_RM, TYPE_R32 },
+    { ENCODING_REG, TYPE_R32 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+  { /* 161 */
+    { ENCODING_RM, TYPE_M512 },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+    { ENCODING_NONE, TYPE_NONE },
+  },
+};
+
+static const struct InstructionSpecifier x86DisassemblerInstrSpecifiers[1644] = {
+  { /* 0 */
+    0,
+    /*  */
+  },
+  { /* 1 */
+    0,
+    /*  */
+  },
+  { /* 2 */
+    0,
+    /*  */
+  },
+  { /* 3 */
+    0,
+    /*  */
+  },
+  { /* 4 */
+    0,
+    /*  */
+  },
+  { /* 5 */
+    0,
+    /*  */
+  },
+  { /* 6 */
+    0,
+    /*  */
+  },
+  { /* 7 */
+    0,
+    /*  */
+  },
+  { /* 8 */
+    0,
+    /*  */
+  },
+  { /* 9 */
+    0,
+    /*  */
+  },
+  { /* 10 */
+    0,
+    /*  */
+  },
+  { /* 11 */
+    0,
+    /*  */
+  },
+  { /* 12 */
+    0,
+    /*  */
+  },
+  { /* 13 */
+    0,
+    /*  */
+  },
+  { /* 14 */
+    0,
+    /*  */
+  },
+  { /* 15 */
+    0,
+    /*  */
+  },
+  { /* 16 */
+    0,
+    /*  */
+  },
+  { /* 17 */
+    0,
+    /*  */
+  },
+  { /* 18 */
+    0,
+    /*  */
+  },
+  { /* 19 */
+    0,
+    /* AAA */
+  },
+  { /* 20 */
+    1,
+    /* AAD8i8 */
+  },
+  { /* 21 */
+    1,
+    /* AAM8i8 */
+  },
+  { /* 22 */
+    0,
+    /* AAS */
+  },
+  { /* 23 */
+    0,
+    /*  */
+  },
+  { /* 24 */
+    0,
+    /*  */
+  },
+  { /* 25 */
+    0,
+    /*  */
+  },
+  { /* 26 */
+    0,
+    /*  */
+  },
+  { /* 27 */
+    2,
+    /* ADC16i16 */
+  },
+  { /* 28 */
+    3,
+    /* ADC16mi */
+  },
+  { /* 29 */
+    4,
+    /* ADC16mi8 */
+  },
+  { /* 30 */
+    5,
+    /* ADC16mr */
+  },
+  { /* 31 */
+    6,
+    /* ADC16ri */
+  },
+  { /* 32 */
+    7,
+    /* ADC16ri8 */
+  },
+  { /* 33 */
+    8,
+    /* ADC16rm */
+  },
+  { /* 34 */
+    9,
+    /* ADC16rr */
+  },
+  { /* 35 */
+    10,
+    /* ADC16rr_REV */
+  },
+  { /* 36 */
+    2,
+    /* ADC32i32 */
+  },
+  { /* 37 */
+    3,
+    /* ADC32mi */
+  },
+  { /* 38 */
+    11,
+    /* ADC32mi8 */
+  },
+  { /* 39 */
+    5,
+    /* ADC32mr */
+  },
+  { /* 40 */
+    6,
+    /* ADC32ri */
+  },
+  { /* 41 */
+    12,
+    /* ADC32ri8 */
+  },
+  { /* 42 */
+    8,
+    /* ADC32rm */
+  },
+  { /* 43 */
+    9,
+    /* ADC32rr */
+  },
+  { /* 44 */
+    10,
+    /* ADC32rr_REV */
+  },
+  { /* 45 */
+    13,
+    /* ADC64i32 */
+  },
+  { /* 46 */
+    14,
+    /* ADC64mi32 */
+  },
+  { /* 47 */
+    15,
+    /* ADC64mi8 */
+  },
+  { /* 48 */
+    16,
+    /* ADC64mr */
+  },
+  { /* 49 */
+    17,
+    /* ADC64ri32 */
+  },
+  { /* 50 */
+    18,
+    /* ADC64ri8 */
+  },
+  { /* 51 */
+    19,
+    /* ADC64rm */
+  },
+  { /* 52 */
+    20,
+    /* ADC64rr */
+  },
+  { /* 53 */
+    21,
+    /* ADC64rr_REV */
+  },
+  { /* 54 */
+    1,
+    /* ADC8i8 */
+  },
+  { /* 55 */
+    22,
+    /* ADC8mi */
+  },
+  { /* 56 */
+    23,
+    /* ADC8mr */
+  },
+  { /* 57 */
+    24,
+    /* ADC8ri */
+  },
+  { /* 58 */
+    25,
+    /* ADC8rm */
+  },
+  { /* 59 */
+    26,
+    /* ADC8rr */
+  },
+  { /* 60 */
+    27,
+    /* ADC8rr_REV */
+  },
+  { /* 61 */
+    28,
+    /* ADCX32rm */
+  },
+  { /* 62 */
+    29,
+    /* ADCX32rr */
+  },
+  { /* 63 */
+    30,
+    /* ADCX64rm */
+  },
+  { /* 64 */
+    31,
+    /* ADCX64rr */
+  },
+  { /* 65 */
+    2,
+    /* ADD16i16 */
+  },
+  { /* 66 */
+    3,
+    /* ADD16mi */
+  },
+  { /* 67 */
+    4,
+    /* ADD16mi8 */
+  },
+  { /* 68 */
+    5,
+    /* ADD16mr */
+  },
+  { /* 69 */
+    6,
+    /* ADD16ri */
+  },
+  { /* 70 */
+    7,
+    /* ADD16ri8 */
+  },
+  { /* 71 */
+    0,
+    /*  */
+  },
+  { /* 72 */
+    0,
+    /*  */
+  },
+  { /* 73 */
+    8,
+    /* ADD16rm */
+  },
+  { /* 74 */
+    9,
+    /* ADD16rr */
+  },
+  { /* 75 */
+    0,
+    /*  */
+  },
+  { /* 76 */
+    10,
+    /* ADD16rr_REV */
+  },
+  { /* 77 */
+    2,
+    /* ADD32i32 */
+  },
+  { /* 78 */
+    3,
+    /* ADD32mi */
+  },
+  { /* 79 */
+    11,
+    /* ADD32mi8 */
+  },
+  { /* 80 */
+    5,
+    /* ADD32mr */
+  },
+  { /* 81 */
+    6,
+    /* ADD32ri */
+  },
+  { /* 82 */
+    12,
+    /* ADD32ri8 */
+  },
+  { /* 83 */
+    0,
+    /*  */
+  },
+  { /* 84 */
+    0,
+    /*  */
+  },
+  { /* 85 */
+    8,
+    /* ADD32rm */
+  },
+  { /* 86 */
+    9,
+    /* ADD32rr */
+  },
+  { /* 87 */
+    0,
+    /*  */
+  },
+  { /* 88 */
+    10,
+    /* ADD32rr_REV */
+  },
+  { /* 89 */
+    13,
+    /* ADD64i32 */
+  },
+  { /* 90 */
+    14,
+    /* ADD64mi32 */
+  },
+  { /* 91 */
+    15,
+    /* ADD64mi8 */
+  },
+  { /* 92 */
+    16,
+    /* ADD64mr */
+  },
+  { /* 93 */
+    17,
+    /* ADD64ri32 */
+  },
+  { /* 94 */
+    0,
+    /*  */
+  },
+  { /* 95 */
+    18,
+    /* ADD64ri8 */
+  },
+  { /* 96 */
+    0,
+    /*  */
+  },
+  { /* 97 */
+    19,
+    /* ADD64rm */
+  },
+  { /* 98 */
+    20,
+    /* ADD64rr */
+  },
+  { /* 99 */
+    0,
+    /*  */
+  },
+  { /* 100 */
+    21,
+    /* ADD64rr_REV */
+  },
+  { /* 101 */
+    1,
+    /* ADD8i8 */
+  },
+  { /* 102 */
+    22,
+    /* ADD8mi */
+  },
+  { /* 103 */
+    23,
+    /* ADD8mr */
+  },
+  { /* 104 */
+    24,
+    /* ADD8ri */
+  },
+  { /* 105 */
+    25,
+    /* ADD8rm */
+  },
+  { /* 106 */
+    26,
+    /* ADD8rr */
+  },
+  { /* 107 */
+    27,
+    /* ADD8rr_REV */
+  },
+  { /* 108 */
+    0,
+    /*  */
+  },
+  { /* 109 */
+    0,
+    /*  */
+  },
+  { /* 110 */
+    0,
+    /*  */
+  },
+  { /* 111 */
+    0,
+    /*  */
+  },
+  { /* 112 */
+    28,
+    /* ADOX32rm */
+  },
+  { /* 113 */
+    29,
+    /* ADOX32rr */
+  },
+  { /* 114 */
+    30,
+    /* ADOX64rm */
+  },
+  { /* 115 */
+    31,
+    /* ADOX64rr */
+  },
+  { /* 116 */
+    2,
+    /* AND16i16 */
+  },
+  { /* 117 */
+    3,
+    /* AND16mi */
+  },
+  { /* 118 */
+    4,
+    /* AND16mi8 */
+  },
+  { /* 119 */
+    5,
+    /* AND16mr */
+  },
+  { /* 120 */
+    6,
+    /* AND16ri */
+  },
+  { /* 121 */
+    7,
+    /* AND16ri8 */
+  },
+  { /* 122 */
+    8,
+    /* AND16rm */
+  },
+  { /* 123 */
+    9,
+    /* AND16rr */
+  },
+  { /* 124 */
+    10,
+    /* AND16rr_REV */
+  },
+  { /* 125 */
+    2,
+    /* AND32i32 */
+  },
+  { /* 126 */
+    3,
+    /* AND32mi */
+  },
+  { /* 127 */
+    11,
+    /* AND32mi8 */
+  },
+  { /* 128 */
+    5,
+    /* AND32mr */
+  },
+  { /* 129 */
+    6,
+    /* AND32ri */
+  },
+  { /* 130 */
+    12,
+    /* AND32ri8 */
+  },
+  { /* 131 */
+    8,
+    /* AND32rm */
+  },
+  { /* 132 */
+    9,
+    /* AND32rr */
+  },
+  { /* 133 */
+    10,
+    /* AND32rr_REV */
+  },
+  { /* 134 */
+    13,
+    /* AND64i32 */
+  },
+  { /* 135 */
+    14,
+    /* AND64mi32 */
+  },
+  { /* 136 */
+    15,
+    /* AND64mi8 */
+  },
+  { /* 137 */
+    16,
+    /* AND64mr */
+  },
+  { /* 138 */
+    17,
+    /* AND64ri32 */
+  },
+  { /* 139 */
+    18,
+    /* AND64ri8 */
+  },
+  { /* 140 */
+    19,
+    /* AND64rm */
+  },
+  { /* 141 */
+    20,
+    /* AND64rr */
+  },
+  { /* 142 */
+    21,
+    /* AND64rr_REV */
+  },
+  { /* 143 */
+    1,
+    /* AND8i8 */
+  },
+  { /* 144 */
+    22,
+    /* AND8mi */
+  },
+  { /* 145 */
+    23,
+    /* AND8mr */
+  },
+  { /* 146 */
+    24,
+    /* AND8ri */
+  },
+  { /* 147 */
+    25,
+    /* AND8rm */
+  },
+  { /* 148 */
+    26,
+    /* AND8rr */
+  },
+  { /* 149 */
+    27,
+    /* AND8rr_REV */
+  },
+  { /* 150 */
+    32,
+    /* ANDN32rm */
+  },
+  { /* 151 */
+    33,
+    /* ANDN32rr */
+  },
+  { /* 152 */
+    34,
+    /* ANDN64rm */
+  },
+  { /* 153 */
+    35,
+    /* ANDN64rr */
+  },
+  { /* 154 */
+    36,
+    /* ARPL16mr */
+  },
+  { /* 155 */
+    37,
+    /* ARPL16rr */
+  },
+  { /* 156 */
+    0,
+    /*  */
+  },
+  { /* 157 */
+    0,
+    /*  */
+  },
+  { /* 158 */
+    0,
+    /*  */
+  },
+  { /* 159 */
+    0,
+    /*  */
+  },
+  { /* 160 */
+    0,
+    /*  */
+  },
+  { /* 161 */
+    0,
+    /*  */
+  },
+  { /* 162 */
+    0,
+    /*  */
+  },
+  { /* 163 */
+    0,
+    /*  */
+  },
+  { /* 164 */
+    0,
+    /*  */
+  },
+  { /* 165 */
+    0,
+    /*  */
+  },
+  { /* 166 */
+    0,
+    /*  */
+  },
+  { /* 167 */
+    0,
+    /*  */
+  },
+  { /* 168 */
+    0,
+    /*  */
+  },
+  { /* 169 */
+    0,
+    /*  */
+  },
+  { /* 170 */
+    0,
+    /*  */
+  },
+  { /* 171 */
+    0,
+    /*  */
+  },
+  { /* 172 */
+    0,
+    /*  */
+  },
+  { /* 173 */
+    0,
+    /*  */
+  },
+  { /* 174 */
+    0,
+    /*  */
+  },
+  { /* 175 */
+    0,
+    /*  */
+  },
+  { /* 176 */
+    0,
+    /*  */
+  },
+  { /* 177 */
+    0,
+    /*  */
+  },
+  { /* 178 */
+    0,
+    /*  */
+  },
+  { /* 179 */
+    0,
+    /*  */
+  },
+  { /* 180 */
+    0,
+    /*  */
+  },
+  { /* 181 */
+    0,
+    /*  */
+  },
+  { /* 182 */
+    0,
+    /*  */
+  },
+  { /* 183 */
+    0,
+    /*  */
+  },
+  { /* 184 */
+    0,
+    /*  */
+  },
+  { /* 185 */
+    0,
+    /*  */
+  },
+  { /* 186 */
+    0,
+    /*  */
+  },
+  { /* 187 */
+    0,
+    /*  */
+  },
+  { /* 188 */
+    0,
+    /*  */
+  },
+  { /* 189 */
+    0,
+    /*  */
+  },
+  { /* 190 */
+    0,
+    /*  */
+  },
+  { /* 191 */
+    0,
+    /*  */
+  },
+  { /* 192 */
+    0,
+    /*  */
+  },
+  { /* 193 */
+    0,
+    /*  */
+  },
+  { /* 194 */
+    0,
+    /*  */
+  },
+  { /* 195 */
+    0,
+    /*  */
+  },
+  { /* 196 */
+    0,
+    /*  */
+  },
+  { /* 197 */
+    0,
+    /*  */
+  },
+  { /* 198 */
+    0,
+    /*  */
+  },
+  { /* 199 */
+    38,
+    /* BEXTR32rm */
+  },
+  { /* 200 */
+    39,
+    /* BEXTR32rr */
+  },
+  { /* 201 */
+    40,
+    /* BEXTR64rm */
+  },
+  { /* 202 */
+    41,
+    /* BEXTR64rr */
+  },
+  { /* 203 */
+    42,
+    /* BEXTRI32mi */
+  },
+  { /* 204 */
+    43,
+    /* BEXTRI32ri */
+  },
+  { /* 205 */
+    44,
+    /* BEXTRI64mi */
+  },
+  { /* 206 */
+    45,
+    /* BEXTRI64ri */
+  },
+  { /* 207 */
+    46,
+    /* BLCFILL32rm */
+  },
+  { /* 208 */
+    47,
+    /* BLCFILL32rr */
+  },
+  { /* 209 */
+    48,
+    /* BLCFILL64rm */
+  },
+  { /* 210 */
+    49,
+    /* BLCFILL64rr */
+  },
+  { /* 211 */
+    46,
+    /* BLCI32rm */
+  },
+  { /* 212 */
+    47,
+    /* BLCI32rr */
+  },
+  { /* 213 */
+    48,
+    /* BLCI64rm */
+  },
+  { /* 214 */
+    49,
+    /* BLCI64rr */
+  },
+  { /* 215 */
+    46,
+    /* BLCIC32rm */
+  },
+  { /* 216 */
+    47,
+    /* BLCIC32rr */
+  },
+  { /* 217 */
+    48,
+    /* BLCIC64rm */
+  },
+  { /* 218 */
+    49,
+    /* BLCIC64rr */
+  },
+  { /* 219 */
+    46,
+    /* BLCMSK32rm */
+  },
+  { /* 220 */
+    47,
+    /* BLCMSK32rr */
+  },
+  { /* 221 */
+    48,
+    /* BLCMSK64rm */
+  },
+  { /* 222 */
+    49,
+    /* BLCMSK64rr */
+  },
+  { /* 223 */
+    46,
+    /* BLCS32rm */
+  },
+  { /* 224 */
+    47,
+    /* BLCS32rr */
+  },
+  { /* 225 */
+    48,
+    /* BLCS64rm */
+  },
+  { /* 226 */
+    49,
+    /* BLCS64rr */
+  },
+  { /* 227 */
+    46,
+    /* BLSFILL32rm */
+  },
+  { /* 228 */
+    47,
+    /* BLSFILL32rr */
+  },
+  { /* 229 */
+    48,
+    /* BLSFILL64rm */
+  },
+  { /* 230 */
+    49,
+    /* BLSFILL64rr */
+  },
+  { /* 231 */
+    46,
+    /* BLSI32rm */
+  },
+  { /* 232 */
+    47,
+    /* BLSI32rr */
+  },
+  { /* 233 */
+    48,
+    /* BLSI64rm */
+  },
+  { /* 234 */
+    49,
+    /* BLSI64rr */
+  },
+  { /* 235 */
+    46,
+    /* BLSIC32rm */
+  },
+  { /* 236 */
+    47,
+    /* BLSIC32rr */
+  },
+  { /* 237 */
+    48,
+    /* BLSIC64rm */
+  },
+  { /* 238 */
+    49,
+    /* BLSIC64rr */
+  },
+  { /* 239 */
+    46,
+    /* BLSMSK32rm */
+  },
+  { /* 240 */
+    47,
+    /* BLSMSK32rr */
+  },
+  { /* 241 */
+    48,
+    /* BLSMSK64rm */
+  },
+  { /* 242 */
+    49,
+    /* BLSMSK64rr */
+  },
+  { /* 243 */
+    46,
+    /* BLSR32rm */
+  },
+  { /* 244 */
+    47,
+    /* BLSR32rr */
+  },
+  { /* 245 */
+    48,
+    /* BLSR64rm */
+  },
+  { /* 246 */
+    49,
+    /* BLSR64rr */
+  },
+  { /* 247 */
+    50,
+    /* BOUNDS16rm */
+  },
+  { /* 248 */
+    50,
+    /* BOUNDS32rm */
+  },
+  { /* 249 */
+    50,
+    /* BSF16rm */
+  },
+  { /* 250 */
+    51,
+    /* BSF16rr */
+  },
+  { /* 251 */
+    50,
+    /* BSF32rm */
+  },
+  { /* 252 */
+    51,
+    /* BSF32rr */
+  },
+  { /* 253 */
+    30,
+    /* BSF64rm */
+  },
+  { /* 254 */
+    31,
+    /* BSF64rr */
+  },
+  { /* 255 */
+    50,
+    /* BSR16rm */
+  },
+  { /* 256 */
+    51,
+    /* BSR16rr */
+  },
+  { /* 257 */
+    50,
+    /* BSR32rm */
+  },
+  { /* 258 */
+    51,
+    /* BSR32rr */
+  },
+  { /* 259 */
+    30,
+    /* BSR64rm */
+  },
+  { /* 260 */
+    31,
+    /* BSR64rr */
+  },
+  { /* 261 */
+    52,
+    /* BSWAP32r */
+  },
+  { /* 262 */
+    53,
+    /* BSWAP64r */
+  },
+  { /* 263 */
+    4,
+    /* BT16mi8 */
+  },
+  { /* 264 */
+    5,
+    /* BT16mr */
+  },
+  { /* 265 */
+    54,
+    /* BT16ri8 */
+  },
+  { /* 266 */
+    55,
+    /* BT16rr */
+  },
+  { /* 267 */
+    11,
+    /* BT32mi8 */
+  },
+  { /* 268 */
+    5,
+    /* BT32mr */
+  },
+  { /* 269 */
+    56,
+    /* BT32ri8 */
+  },
+  { /* 270 */
+    55,
+    /* BT32rr */
+  },
+  { /* 271 */
+    15,
+    /* BT64mi8 */
+  },
+  { /* 272 */
+    16,
+    /* BT64mr */
+  },
+  { /* 273 */
+    57,
+    /* BT64ri8 */
+  },
+  { /* 274 */
+    58,
+    /* BT64rr */
+  },
+  { /* 275 */
+    4,
+    /* BTC16mi8 */
+  },
+  { /* 276 */
+    5,
+    /* BTC16mr */
+  },
+  { /* 277 */
+    54,
+    /* BTC16ri8 */
+  },
+  { /* 278 */
+    55,
+    /* BTC16rr */
+  },
+  { /* 279 */
+    11,
+    /* BTC32mi8 */
+  },
+  { /* 280 */
+    5,
+    /* BTC32mr */
+  },
+  { /* 281 */
+    56,
+    /* BTC32ri8 */
+  },
+  { /* 282 */
+    55,
+    /* BTC32rr */
+  },
+  { /* 283 */
+    15,
+    /* BTC64mi8 */
+  },
+  { /* 284 */
+    16,
+    /* BTC64mr */
+  },
+  { /* 285 */
+    57,
+    /* BTC64ri8 */
+  },
+  { /* 286 */
+    58,
+    /* BTC64rr */
+  },
+  { /* 287 */
+    4,
+    /* BTR16mi8 */
+  },
+  { /* 288 */
+    5,
+    /* BTR16mr */
+  },
+  { /* 289 */
+    54,
+    /* BTR16ri8 */
+  },
+  { /* 290 */
+    55,
+    /* BTR16rr */
+  },
+  { /* 291 */
+    11,
+    /* BTR32mi8 */
+  },
+  { /* 292 */
+    5,
+    /* BTR32mr */
+  },
+  { /* 293 */
+    56,
+    /* BTR32ri8 */
+  },
+  { /* 294 */
+    55,
+    /* BTR32rr */
+  },
+  { /* 295 */
+    15,
+    /* BTR64mi8 */
+  },
+  { /* 296 */
+    16,
+    /* BTR64mr */
+  },
+  { /* 297 */
+    57,
+    /* BTR64ri8 */
+  },
+  { /* 298 */
+    58,
+    /* BTR64rr */
+  },
+  { /* 299 */
+    4,
+    /* BTS16mi8 */
+  },
+  { /* 300 */
+    5,
+    /* BTS16mr */
+  },
+  { /* 301 */
+    54,
+    /* BTS16ri8 */
+  },
+  { /* 302 */
+    55,
+    /* BTS16rr */
+  },
+  { /* 303 */
+    11,
+    /* BTS32mi8 */
+  },
+  { /* 304 */
+    5,
+    /* BTS32mr */
+  },
+  { /* 305 */
+    56,
+    /* BTS32ri8 */
+  },
+  { /* 306 */
+    55,
+    /* BTS32rr */
+  },
+  { /* 307 */
+    15,
+    /* BTS64mi8 */
+  },
+  { /* 308 */
+    16,
+    /* BTS64mr */
+  },
+  { /* 309 */
+    57,
+    /* BTS64ri8 */
+  },
+  { /* 310 */
+    58,
+    /* BTS64rr */
+  },
+  { /* 311 */
+    38,
+    /* BZHI32rm */
+  },
+  { /* 312 */
+    39,
+    /* BZHI32rr */
+  },
+  { /* 313 */
+    40,
+    /* BZHI64rm */
+  },
+  { /* 314 */
+    41,
+    /* BZHI64rr */
+  },
+  { /* 315 */
+    59,
+    /* CALL16m */
+  },
+  { /* 316 */
+    60,
+    /* CALL16r */
+  },
+  { /* 317 */
+    59,
+    /* CALL32m */
+  },
+  { /* 318 */
+    60,
+    /* CALL32r */
+  },
+  { /* 319 */
+    59,
+    /* CALL64m */
+  },
+  { /* 320 */
+    61,
+    /* CALL64pcrel32 */
+  },
+  { /* 321 */
+    62,
+    /* CALL64r */
+  },
+  { /* 322 */
+    63,
+    /* CALLpcrel16 */
+  },
+  { /* 323 */
+    64,
+    /* CALLpcrel32 */
+  },
+  { /* 324 */
+    0,
+    /* CBW */
+  },
+  { /* 325 */
+    0,
+    /* CDQ */
+  },
+  { /* 326 */
+    0,
+    /* CDQE */
+  },
+  { /* 327 */
+    0,
+    /* CLAC */
+  },
+  { /* 328 */
+    0,
+    /* CLC */
+  },
+  { /* 329 */
+    0,
+    /* CLD */
+  },
+  { /* 330 */
+    0,
+    /* CLGI */
+  },
+  { /* 331 */
+    0,
+    /* CLI */
+  },
+  { /* 332 */
+    0,
+    /* CLTS */
+  },
+  { /* 333 */
+    0,
+    /* CMC */
+  },
+  { /* 334 */
+    8,
+    /* CMOVA16rm */
+  },
+  { /* 335 */
+    10,
+    /* CMOVA16rr */
+  },
+  { /* 336 */
+    8,
+    /* CMOVA32rm */
+  },
+  { /* 337 */
+    10,
+    /* CMOVA32rr */
+  },
+  { /* 338 */
+    19,
+    /* CMOVA64rm */
+  },
+  { /* 339 */
+    21,
+    /* CMOVA64rr */
+  },
+  { /* 340 */
+    8,
+    /* CMOVAE16rm */
+  },
+  { /* 341 */
+    10,
+    /* CMOVAE16rr */
+  },
+  { /* 342 */
+    8,
+    /* CMOVAE32rm */
+  },
+  { /* 343 */
+    10,
+    /* CMOVAE32rr */
+  },
+  { /* 344 */
+    19,
+    /* CMOVAE64rm */
+  },
+  { /* 345 */
+    21,
+    /* CMOVAE64rr */
+  },
+  { /* 346 */
+    8,
+    /* CMOVB16rm */
+  },
+  { /* 347 */
+    10,
+    /* CMOVB16rr */
+  },
+  { /* 348 */
+    8,
+    /* CMOVB32rm */
+  },
+  { /* 349 */
+    10,
+    /* CMOVB32rr */
+  },
+  { /* 350 */
+    19,
+    /* CMOVB64rm */
+  },
+  { /* 351 */
+    21,
+    /* CMOVB64rr */
+  },
+  { /* 352 */
+    8,
+    /* CMOVBE16rm */
+  },
+  { /* 353 */
+    10,
+    /* CMOVBE16rr */
+  },
+  { /* 354 */
+    8,
+    /* CMOVBE32rm */
+  },
+  { /* 355 */
+    10,
+    /* CMOVBE32rr */
+  },
+  { /* 356 */
+    19,
+    /* CMOVBE64rm */
+  },
+  { /* 357 */
+    21,
+    /* CMOVBE64rr */
+  },
+  { /* 358 */
+    8,
+    /* CMOVE16rm */
+  },
+  { /* 359 */
+    10,
+    /* CMOVE16rr */
+  },
+  { /* 360 */
+    8,
+    /* CMOVE32rm */
+  },
+  { /* 361 */
+    10,
+    /* CMOVE32rr */
+  },
+  { /* 362 */
+    19,
+    /* CMOVE64rm */
+  },
+  { /* 363 */
+    21,
+    /* CMOVE64rr */
+  },
+  { /* 364 */
+    8,
+    /* CMOVG16rm */
+  },
+  { /* 365 */
+    10,
+    /* CMOVG16rr */
+  },
+  { /* 366 */
+    8,
+    /* CMOVG32rm */
+  },
+  { /* 367 */
+    10,
+    /* CMOVG32rr */
+  },
+  { /* 368 */
+    19,
+    /* CMOVG64rm */
+  },
+  { /* 369 */
+    21,
+    /* CMOVG64rr */
+  },
+  { /* 370 */
+    8,
+    /* CMOVGE16rm */
+  },
+  { /* 371 */
+    10,
+    /* CMOVGE16rr */
+  },
+  { /* 372 */
+    8,
+    /* CMOVGE32rm */
+  },
+  { /* 373 */
+    10,
+    /* CMOVGE32rr */
+  },
+  { /* 374 */
+    19,
+    /* CMOVGE64rm */
+  },
+  { /* 375 */
+    21,
+    /* CMOVGE64rr */
+  },
+  { /* 376 */
+    8,
+    /* CMOVL16rm */
+  },
+  { /* 377 */
+    10,
+    /* CMOVL16rr */
+  },
+  { /* 378 */
+    8,
+    /* CMOVL32rm */
+  },
+  { /* 379 */
+    10,
+    /* CMOVL32rr */
+  },
+  { /* 380 */
+    19,
+    /* CMOVL64rm */
+  },
+  { /* 381 */
+    21,
+    /* CMOVL64rr */
+  },
+  { /* 382 */
+    8,
+    /* CMOVLE16rm */
+  },
+  { /* 383 */
+    10,
+    /* CMOVLE16rr */
+  },
+  { /* 384 */
+    8,
+    /* CMOVLE32rm */
+  },
+  { /* 385 */
+    10,
+    /* CMOVLE32rr */
+  },
+  { /* 386 */
+    19,
+    /* CMOVLE64rm */
+  },
+  { /* 387 */
+    21,
+    /* CMOVLE64rr */
+  },
+  { /* 388 */
+    8,
+    /* CMOVNE16rm */
+  },
+  { /* 389 */
+    10,
+    /* CMOVNE16rr */
+  },
+  { /* 390 */
+    8,
+    /* CMOVNE32rm */
+  },
+  { /* 391 */
+    10,
+    /* CMOVNE32rr */
+  },
+  { /* 392 */
+    19,
+    /* CMOVNE64rm */
+  },
+  { /* 393 */
+    21,
+    /* CMOVNE64rr */
+  },
+  { /* 394 */
+    8,
+    /* CMOVNO16rm */
+  },
+  { /* 395 */
+    10,
+    /* CMOVNO16rr */
+  },
+  { /* 396 */
+    8,
+    /* CMOVNO32rm */
+  },
+  { /* 397 */
+    10,
+    /* CMOVNO32rr */
+  },
+  { /* 398 */
+    19,
+    /* CMOVNO64rm */
+  },
+  { /* 399 */
+    21,
+    /* CMOVNO64rr */
+  },
+  { /* 400 */
+    8,
+    /* CMOVNP16rm */
+  },
+  { /* 401 */
+    10,
+    /* CMOVNP16rr */
+  },
+  { /* 402 */
+    8,
+    /* CMOVNP32rm */
+  },
+  { /* 403 */
+    10,
+    /* CMOVNP32rr */
+  },
+  { /* 404 */
+    19,
+    /* CMOVNP64rm */
+  },
+  { /* 405 */
+    21,
+    /* CMOVNP64rr */
+  },
+  { /* 406 */
+    8,
+    /* CMOVNS16rm */
+  },
+  { /* 407 */
+    10,
+    /* CMOVNS16rr */
+  },
+  { /* 408 */
+    8,
+    /* CMOVNS32rm */
+  },
+  { /* 409 */
+    10,
+    /* CMOVNS32rr */
+  },
+  { /* 410 */
+    19,
+    /* CMOVNS64rm */
+  },
+  { /* 411 */
+    21,
+    /* CMOVNS64rr */
+  },
+  { /* 412 */
+    8,
+    /* CMOVO16rm */
+  },
+  { /* 413 */
+    10,
+    /* CMOVO16rr */
+  },
+  { /* 414 */
+    8,
+    /* CMOVO32rm */
+  },
+  { /* 415 */
+    10,
+    /* CMOVO32rr */
+  },
+  { /* 416 */
+    19,
+    /* CMOVO64rm */
+  },
+  { /* 417 */
+    21,
+    /* CMOVO64rr */
+  },
+  { /* 418 */
+    8,
+    /* CMOVP16rm */
+  },
+  { /* 419 */
+    10,
+    /* CMOVP16rr */
+  },
+  { /* 420 */
+    8,
+    /* CMOVP32rm */
+  },
+  { /* 421 */
+    10,
+    /* CMOVP32rr */
+  },
+  { /* 422 */
+    19,
+    /* CMOVP64rm */
+  },
+  { /* 423 */
+    21,
+    /* CMOVP64rr */
+  },
+  { /* 424 */
+    8,
+    /* CMOVS16rm */
+  },
+  { /* 425 */
+    10,
+    /* CMOVS16rr */
+  },
+  { /* 426 */
+    8,
+    /* CMOVS32rm */
+  },
+  { /* 427 */
+    10,
+    /* CMOVS32rr */
+  },
+  { /* 428 */
+    19,
+    /* CMOVS64rm */
+  },
+  { /* 429 */
+    21,
+    /* CMOVS64rr */
+  },
+  { /* 430 */
+    0,
+    /*  */
+  },
+  { /* 431 */
+    0,
+    /*  */
+  },
+  { /* 432 */
+    0,
+    /*  */
+  },
+  { /* 433 */
+    0,
+    /*  */
+  },
+  { /* 434 */
+    0,
+    /*  */
+  },
+  { /* 435 */
+    0,
+    /*  */
+  },
+  { /* 436 */
+    0,
+    /*  */
+  },
+  { /* 437 */
+    0,
+    /*  */
+  },
+  { /* 438 */
+    0,
+    /*  */
+  },
+  { /* 439 */
+    0,
+    /*  */
+  },
+  { /* 440 */
+    0,
+    /*  */
+  },
+  { /* 441 */
+    0,
+    /*  */
+  },
+  { /* 442 */
+    0,
+    /*  */
+  },
+  { /* 443 */
+    0,
+    /*  */
+  },
+  { /* 444 */
+    0,
+    /*  */
+  },
+  { /* 445 */
+    0,
+    /*  */
+  },
+  { /* 446 */
+    0,
+    /*  */
+  },
+  { /* 447 */
+    2,
+    /* CMP16i16 */
+  },
+  { /* 448 */
+    3,
+    /* CMP16mi */
+  },
+  { /* 449 */
+    4,
+    /* CMP16mi8 */
+  },
+  { /* 450 */
+    5,
+    /* CMP16mr */
+  },
+  { /* 451 */
+    65,
+    /* CMP16ri */
+  },
+  { /* 452 */
+    54,
+    /* CMP16ri8 */
+  },
+  { /* 453 */
+    50,
+    /* CMP16rm */
+  },
+  { /* 454 */
+    55,
+    /* CMP16rr */
+  },
+  { /* 455 */
+    51,
+    /* CMP16rr_REV */
+  },
+  { /* 456 */
+    2,
+    /* CMP32i32 */
+  },
+  { /* 457 */
+    3,
+    /* CMP32mi */
+  },
+  { /* 458 */
+    11,
+    /* CMP32mi8 */
+  },
+  { /* 459 */
+    5,
+    /* CMP32mr */
+  },
+  { /* 460 */
+    65,
+    /* CMP32ri */
+  },
+  { /* 461 */
+    56,
+    /* CMP32ri8 */
+  },
+  { /* 462 */
+    50,
+    /* CMP32rm */
+  },
+  { /* 463 */
+    55,
+    /* CMP32rr */
+  },
+  { /* 464 */
+    51,
+    /* CMP32rr_REV */
+  },
+  { /* 465 */
+    13,
+    /* CMP64i32 */
+  },
+  { /* 466 */
+    14,
+    /* CMP64mi32 */
+  },
+  { /* 467 */
+    15,
+    /* CMP64mi8 */
+  },
+  { /* 468 */
+    16,
+    /* CMP64mr */
+  },
+  { /* 469 */
+    66,
+    /* CMP64ri32 */
+  },
+  { /* 470 */
+    57,
+    /* CMP64ri8 */
+  },
+  { /* 471 */
+    30,
+    /* CMP64rm */
+  },
+  { /* 472 */
+    58,
+    /* CMP64rr */
+  },
+  { /* 473 */
+    31,
+    /* CMP64rr_REV */
+  },
+  { /* 474 */
+    1,
+    /* CMP8i8 */
+  },
+  { /* 475 */
+    22,
+    /* CMP8mi */
+  },
+  { /* 476 */
+    23,
+    /* CMP8mr */
+  },
+  { /* 477 */
+    67,
+    /* CMP8ri */
+  },
+  { /* 478 */
+    68,
+    /* CMP8rm */
+  },
+  { /* 479 */
+    69,
+    /* CMP8rr */
+  },
+  { /* 480 */
+    70,
+    /* CMP8rr_REV */
+  },
+  { /* 481 */
+    71,
+    /* CMPS16 */
+  },
+  { /* 482 */
+    72,
+    /* CMPS32 */
+  },
+  { /* 483 */
+    73,
+    /* CMPS64 */
+  },
+  { /* 484 */
+    74,
+    /* CMPS8 */
+  },
+  { /* 485 */
+    75,
+    /* CMPXCHG16B */
+  },
+  { /* 486 */
+    5,
+    /* CMPXCHG16rm */
+  },
+  { /* 487 */
+    55,
+    /* CMPXCHG16rr */
+  },
+  { /* 488 */
+    5,
+    /* CMPXCHG32rm */
+  },
+  { /* 489 */
+    55,
+    /* CMPXCHG32rr */
+  },
+  { /* 490 */
+    16,
+    /* CMPXCHG64rm */
+  },
+  { /* 491 */
+    58,
+    /* CMPXCHG64rr */
+  },
+  { /* 492 */
+    59,
+    /* CMPXCHG8B */
+  },
+  { /* 493 */
+    23,
+    /* CMPXCHG8rm */
+  },
+  { /* 494 */
+    69,
+    /* CMPXCHG8rr */
+  },
+  { /* 495 */
+    0,
+    /* CPUID32 */
+  },
+  { /* 496 */
+    0,
+    /* CPUID64 */
+  },
+  { /* 497 */
+    0,
+    /* CQO */
+  },
+  { /* 498 */
+    0,
+    /* CS_PREFIX */
+  },
+  { /* 499 */
+    0,
+    /* CWD */
+  },
+  { /* 500 */
+    0,
+    /* CWDE */
+  },
+  { /* 501 */
+    0,
+    /* DAA */
+  },
+  { /* 502 */
+    0,
+    /* DAS */
+  },
+  { /* 503 */
+    0,
+    /* DATA16_PREFIX */
+  },
+  { /* 504 */
+    59,
+    /* DEC16m */
+  },
+  { /* 505 */
+    52,
+    /* DEC16r */
+  },
+  { /* 506 */
+    76,
+    /* DEC32_16r */
+  },
+  { /* 507 */
+    76,
+    /* DEC32_32r */
+  },
+  { /* 508 */
+    59,
+    /* DEC32m */
+  },
+  { /* 509 */
+    52,
+    /* DEC32r */
+  },
+  { /* 510 */
+    59,
+    /* DEC64_16m */
+  },
+  { /* 511 */
+    76,
+    /* DEC64_16r */
+  },
+  { /* 512 */
+    59,
+    /* DEC64_32m */
+  },
+  { /* 513 */
+    76,
+    /* DEC64_32r */
+  },
+  { /* 514 */
+    59,
+    /* DEC64m */
+  },
+  { /* 515 */
+    77,
+    /* DEC64r */
+  },
+  { /* 516 */
+    78,
+    /* DEC8m */
+  },
+  { /* 517 */
+    79,
+    /* DEC8r */
+  },
+  { /* 518 */
+    59,
+    /* DIV16m */
+  },
+  { /* 519 */
+    60,
+    /* DIV16r */
+  },
+  { /* 520 */
+    59,
+    /* DIV32m */
+  },
+  { /* 521 */
+    60,
+    /* DIV32r */
+  },
+  { /* 522 */
+    59,
+    /* DIV64m */
+  },
+  { /* 523 */
+    62,
+    /* DIV64r */
+  },
+  { /* 524 */
+    78,
+    /* DIV8m */
+  },
+  { /* 525 */
+    80,
+    /* DIV8r */
+  },
+  { /* 526 */
+    0,
+    /* DS_PREFIX */
+  },
+  { /* 527 */
+    0,
+    /*  */
+  },
+  { /* 528 */
+    0,
+    /*  */
+  },
+  { /* 529 */
+    0,
+    /*  */
+  },
+  { /* 530 */
+    0,
+    /*  */
+  },
+  { /* 531 */
+    0,
+    /*  */
+  },
+  { /* 532 */
+    0,
+    /*  */
+  },
+  { /* 533 */
+    0,
+    /*  */
+  },
+  { /* 534 */
+    81,
+    /* ENTER */
+  },
+  { /* 535 */
+    0,
+    /* ES_PREFIX */
+  },
+  { /* 536 */
+    82,
+    /* FARCALL16i */
+  },
+  { /* 537 */
+    83,
+    /* FARCALL16m */
+  },
+  { /* 538 */
+    84,
+    /* FARCALL32i */
+  },
+  { /* 539 */
+    85,
+    /* FARCALL32m */
+  },
+  { /* 540 */
+    86,
+    /* FARCALL64 */
+  },
+  { /* 541 */
+    82,
+    /* FARJMP16i */
+  },
+  { /* 542 */
+    83,
+    /* FARJMP16m */
+  },
+  { /* 543 */
+    84,
+    /* FARJMP32i */
+  },
+  { /* 544 */
+    85,
+    /* FARJMP32m */
+  },
+  { /* 545 */
+    86,
+    /* FARJMP64 */
+  },
+  { /* 546 */
+    0,
+    /* FSETPM */
+  },
+  { /* 547 */
+    0,
+    /* FS_PREFIX */
+  },
+  { /* 548 */
+    0,
+    /* GETSEC */
+  },
+  { /* 549 */
+    0,
+    /* GS_PREFIX */
+  },
+  { /* 550 */
+    0,
+    /* HLT */
+  },
+  { /* 551 */
+    59,
+    /* IDIV16m */
+  },
+  { /* 552 */
+    60,
+    /* IDIV16r */
+  },
+  { /* 553 */
+    59,
+    /* IDIV32m */
+  },
+  { /* 554 */
+    60,
+    /* IDIV32r */
+  },
+  { /* 555 */
+    59,
+    /* IDIV64m */
+  },
+  { /* 556 */
+    62,
+    /* IDIV64r */
+  },
+  { /* 557 */
+    78,
+    /* IDIV8m */
+  },
+  { /* 558 */
+    80,
+    /* IDIV8r */
+  },
+  { /* 559 */
+    59,
+    /* IMUL16m */
+  },
+  { /* 560 */
+    60,
+    /* IMUL16r */
+  },
+  { /* 561 */
+    8,
+    /* IMUL16rm */
+  },
+  { /* 562 */
+    87,
+    /* IMUL16rmi */
+  },
+  { /* 563 */
+    88,
+    /* IMUL16rmi8 */
+  },
+  { /* 564 */
+    10,
+    /* IMUL16rr */
+  },
+  { /* 565 */
+    89,
+    /* IMUL16rri */
+  },
+  { /* 566 */
+    90,
+    /* IMUL16rri8 */
+  },
+  { /* 567 */
+    59,
+    /* IMUL32m */
+  },
+  { /* 568 */
+    60,
+    /* IMUL32r */
+  },
+  { /* 569 */
+    8,
+    /* IMUL32rm */
+  },
+  { /* 570 */
+    87,
+    /* IMUL32rmi */
+  },
+  { /* 571 */
+    91,
+    /* IMUL32rmi8 */
+  },
+  { /* 572 */
+    10,
+    /* IMUL32rr */
+  },
+  { /* 573 */
+    89,
+    /* IMUL32rri */
+  },
+  { /* 574 */
+    92,
+    /* IMUL32rri8 */
+  },
+  { /* 575 */
+    59,
+    /* IMUL64m */
+  },
+  { /* 576 */
+    62,
+    /* IMUL64r */
+  },
+  { /* 577 */
+    19,
+    /* IMUL64rm */
+  },
+  { /* 578 */
+    44,
+    /* IMUL64rmi32 */
+  },
+  { /* 579 */
+    93,
+    /* IMUL64rmi8 */
+  },
+  { /* 580 */
+    21,
+    /* IMUL64rr */
+  },
+  { /* 581 */
+    45,
+    /* IMUL64rri32 */
+  },
+  { /* 582 */
+    94,
+    /* IMUL64rri8 */
+  },
+  { /* 583 */
+    78,
+    /* IMUL8m */
+  },
+  { /* 584 */
+    80,
+    /* IMUL8r */
+  },
+  { /* 585 */
+    95,
+    /* IN16 */
+  },
+  { /* 586 */
+    1,
+    /* IN16ri */
+  },
+  { /* 587 */
+    0,
+    /* IN16rr */
+  },
+  { /* 588 */
+    96,
+    /* IN32 */
+  },
+  { /* 589 */
+    1,
+    /* IN32ri */
+  },
+  { /* 590 */
+    0,
+    /* IN32rr */
+  },
+  { /* 591 */
+    97,
+    /* IN8 */
+  },
+  { /* 592 */
+    1,
+    /* IN8ri */
+  },
+  { /* 593 */
+    0,
+    /* IN8rr */
+  },
+  { /* 594 */
+    59,
+    /* INC16m */
+  },
+  { /* 595 */
+    52,
+    /* INC16r */
+  },
+  { /* 596 */
+    76,
+    /* INC32_16r */
+  },
+  { /* 597 */
+    76,
+    /* INC32_32r */
+  },
+  { /* 598 */
+    59,
+    /* INC32m */
+  },
+  { /* 599 */
+    52,
+    /* INC32r */
+  },
+  { /* 600 */
+    59,
+    /* INC64_16m */
+  },
+  { /* 601 */
+    76,
+    /* INC64_16r */
+  },
+  { /* 602 */
+    59,
+    /* INC64_32m */
+  },
+  { /* 603 */
+    76,
+    /* INC64_32r */
+  },
+  { /* 604 */
+    59,
+    /* INC64m */
+  },
+  { /* 605 */
+    77,
+    /* INC64r */
+  },
+  { /* 606 */
+    78,
+    /* INC8m */
+  },
+  { /* 607 */
+    79,
+    /* INC8r */
+  },
+  { /* 608 */
+    1,
+    /* INT */
+  },
+  { /* 609 */
+    0,
+    /* INT1 */
+  },
+  { /* 610 */
+    0,
+    /* INT3 */
+  },
+  { /* 611 */
+    0,
+    /* INTO */
+  },
+  { /* 612 */
+    0,
+    /* INVD */
+  },
+  { /* 613 */
+    98,
+    /* INVEPT32 */
+  },
+  { /* 614 */
+    99,
+    /* INVEPT64 */
+  },
+  { /* 615 */
+    78,
+    /* INVLPG */
+  },
+  { /* 616 */
+    0,
+    /* INVLPGA32 */
+  },
+  { /* 617 */
+    0,
+    /* INVLPGA64 */
+  },
+  { /* 618 */
+    98,
+    /* INVPCID32 */
+  },
+  { /* 619 */
+    99,
+    /* INVPCID64 */
+  },
+  { /* 620 */
+    98,
+    /* INVVPID32 */
+  },
+  { /* 621 */
+    99,
+    /* INVVPID64 */
+  },
+  { /* 622 */
+    0,
+    /* IRET16 */
+  },
+  { /* 623 */
+    0,
+    /* IRET32 */
+  },
+  { /* 624 */
+    0,
+    /* IRET64 */
+  },
+  { /* 625 */
+    0,
+    /*  */
+  },
+  { /* 626 */
+    100,
+    /* JAE_1 */
+  },
+  { /* 627 */
+    101,
+    /* JAE_2 */
+  },
+  { /* 628 */
+    101,
+    /* JAE_4 */
+  },
+  { /* 629 */
+    100,
+    /* JA_1 */
+  },
+  { /* 630 */
+    101,
+    /* JA_2 */
+  },
+  { /* 631 */
+    101,
+    /* JA_4 */
+  },
+  { /* 632 */
+    100,
+    /* JBE_1 */
+  },
+  { /* 633 */
+    101,
+    /* JBE_2 */
+  },
+  { /* 634 */
+    101,
+    /* JBE_4 */
+  },
+  { /* 635 */
+    100,
+    /* JB_1 */
+  },
+  { /* 636 */
+    101,
+    /* JB_2 */
+  },
+  { /* 637 */
+    101,
+    /* JB_4 */
+  },
+  { /* 638 */
+    100,
+    /* JCXZ */
+  },
+  { /* 639 */
+    100,
+    /* JECXZ_32 */
+  },
+  { /* 640 */
+    100,
+    /* JECXZ_64 */
+  },
+  { /* 641 */
+    100,
+    /* JE_1 */
+  },
+  { /* 642 */
+    101,
+    /* JE_2 */
+  },
+  { /* 643 */
+    101,
+    /* JE_4 */
+  },
+  { /* 644 */
+    100,
+    /* JGE_1 */
+  },
+  { /* 645 */
+    101,
+    /* JGE_2 */
+  },
+  { /* 646 */
+    101,
+    /* JGE_4 */
+  },
+  { /* 647 */
+    100,
+    /* JG_1 */
+  },
+  { /* 648 */
+    101,
+    /* JG_2 */
+  },
+  { /* 649 */
+    101,
+    /* JG_4 */
+  },
+  { /* 650 */
+    100,
+    /* JLE_1 */
+  },
+  { /* 651 */
+    101,
+    /* JLE_2 */
+  },
+  { /* 652 */
+    101,
+    /* JLE_4 */
+  },
+  { /* 653 */
+    100,
+    /* JL_1 */
+  },
+  { /* 654 */
+    101,
+    /* JL_2 */
+  },
+  { /* 655 */
+    101,
+    /* JL_4 */
+  },
+  { /* 656 */
+    59,
+    /* JMP16m */
+  },
+  { /* 657 */
+    60,
+    /* JMP16r */
+  },
+  { /* 658 */
+    59,
+    /* JMP32m */
+  },
+  { /* 659 */
+    60,
+    /* JMP32r */
+  },
+  { /* 660 */
+    59,
+    /* JMP64m */
+  },
+  { /* 661 */
+    62,
+    /* JMP64r */
+  },
+  { /* 662 */
+    100,
+    /* JMP_1 */
+  },
+  { /* 663 */
+    101,
+    /* JMP_2 */
+  },
+  { /* 664 */
+    101,
+    /* JMP_4 */
+  },
+  { /* 665 */
+    100,
+    /* JNE_1 */
+  },
+  { /* 666 */
+    101,
+    /* JNE_2 */
+  },
+  { /* 667 */
+    101,
+    /* JNE_4 */
+  },
+  { /* 668 */
+    100,
+    /* JNO_1 */
+  },
+  { /* 669 */
+    101,
+    /* JNO_2 */
+  },
+  { /* 670 */
+    101,
+    /* JNO_4 */
+  },
+  { /* 671 */
+    100,
+    /* JNP_1 */
+  },
+  { /* 672 */
+    101,
+    /* JNP_2 */
+  },
+  { /* 673 */
+    101,
+    /* JNP_4 */
+  },
+  { /* 674 */
+    100,
+    /* JNS_1 */
+  },
+  { /* 675 */
+    101,
+    /* JNS_2 */
+  },
+  { /* 676 */
+    101,
+    /* JNS_4 */
+  },
+  { /* 677 */
+    100,
+    /* JO_1 */
+  },
+  { /* 678 */
+    101,
+    /* JO_2 */
+  },
+  { /* 679 */
+    101,
+    /* JO_4 */
+  },
+  { /* 680 */
+    100,
+    /* JP_1 */
+  },
+  { /* 681 */
+    101,
+    /* JP_2 */
+  },
+  { /* 682 */
+    101,
+    /* JP_4 */
+  },
+  { /* 683 */
+    100,
+    /* JRCXZ */
+  },
+  { /* 684 */
+    100,
+    /* JS_1 */
+  },
+  { /* 685 */
+    101,
+    /* JS_2 */
+  },
+  { /* 686 */
+    101,
+    /* JS_4 */
+  },
+  { /* 687 */
+    0,
+    /* LAHF */
+  },
+  { /* 688 */
+    50,
+    /* LAR16rm */
+  },
+  { /* 689 */
+    51,
+    /* LAR16rr */
+  },
+  { /* 690 */
+    50,
+    /* LAR32rm */
+  },
+  { /* 691 */
+    51,
+    /* LAR32rr */
+  },
+  { /* 692 */
+    30,
+    /* LAR64rm */
+  },
+  { /* 693 */
+    102,
+    /* LAR64rr */
+  },
+  { /* 694 */
+    0,
+    /*  */
+  },
+  { /* 695 */
+    0,
+    /*  */
+  },
+  { /* 696 */
+    0,
+    /*  */
+  },
+  { /* 697 */
+    0,
+    /*  */
+  },
+  { /* 698 */
+    0,
+    /*  */
+  },
+  { /* 699 */
+    0,
+    /*  */
+  },
+  { /* 700 */
+    103,
+    /* LDS16rm */
+  },
+  { /* 701 */
+    104,
+    /* LDS32rm */
+  },
+  { /* 702 */
+    50,
+    /* LEA16r */
+  },
+  { /* 703 */
+    50,
+    /* LEA32r */
+  },
+  { /* 704 */
+    105,
+    /* LEA64_32r */
+  },
+  { /* 705 */
+    106,
+    /* LEA64r */
+  },
+  { /* 706 */
+    0,
+    /* LEAVE */
+  },
+  { /* 707 */
+    0,
+    /* LEAVE64 */
+  },
+  { /* 708 */
+    103,
+    /* LES16rm */
+  },
+  { /* 709 */
+    104,
+    /* LES32rm */
+  },
+  { /* 710 */
+    103,
+    /* LFS16rm */
+  },
+  { /* 711 */
+    104,
+    /* LFS32rm */
+  },
+  { /* 712 */
+    107,
+    /* LFS64rm */
+  },
+  { /* 713 */
+    85,
+    /* LGDT16m */
+  },
+  { /* 714 */
+    85,
+    /* LGDT32m */
+  },
+  { /* 715 */
+    86,
+    /* LGDT64m */
+  },
+  { /* 716 */
+    103,
+    /* LGS16rm */
+  },
+  { /* 717 */
+    104,
+    /* LGS32rm */
+  },
+  { /* 718 */
+    107,
+    /* LGS64rm */
+  },
+  { /* 719 */
+    85,
+    /* LIDT16m */
+  },
+  { /* 720 */
+    85,
+    /* LIDT32m */
+  },
+  { /* 721 */
+    86,
+    /* LIDT64m */
+  },
+  { /* 722 */
+    59,
+    /* LLDT16m */
+  },
+  { /* 723 */
+    108,
+    /* LLDT16r */
+  },
+  { /* 724 */
+    59,
+    /* LMSW16m */
+  },
+  { /* 725 */
+    108,
+    /* LMSW16r */
+  },
+  { /* 726 */
+    0,
+    /*  */
+  },
+  { /* 727 */
+    0,
+    /*  */
+  },
+  { /* 728 */
+    0,
+    /*  */
+  },
+  { /* 729 */
+    0,
+    /*  */
+  },
+  { /* 730 */
+    0,
+    /*  */
+  },
+  { /* 731 */
+    0,
+    /*  */
+  },
+  { /* 732 */
+    0,
+    /*  */
+  },
+  { /* 733 */
+    0,
+    /*  */
+  },
+  { /* 734 */
+    0,
+    /*  */
+  },
+  { /* 735 */
+    0,
+    /*  */
+  },
+  { /* 736 */
+    0,
+    /*  */
+  },
+  { /* 737 */
+    0,
+    /*  */
+  },
+  { /* 738 */
+    0,
+    /*  */
+  },
+  { /* 739 */
+    0,
+    /*  */
+  },
+  { /* 740 */
+    0,
+    /*  */
+  },
+  { /* 741 */
+    0,
+    /*  */
+  },
+  { /* 742 */
+    0,
+    /*  */
+  },
+  { /* 743 */
+    0,
+    /*  */
+  },
+  { /* 744 */
+    0,
+    /*  */
+  },
+  { /* 745 */
+    0,
+    /*  */
+  },
+  { /* 746 */
+    0,
+    /*  */
+  },
+  { /* 747 */
+    0,
+    /*  */
+  },
+  { /* 748 */
+    0,
+    /*  */
+  },
+  { /* 749 */
+    0,
+    /*  */
+  },
+  { /* 750 */
+    0,
+    /*  */
+  },
+  { /* 751 */
+    0,
+    /*  */
+  },
+  { /* 752 */
+    0,
+    /*  */
+  },
+  { /* 753 */
+    0,
+    /*  */
+  },
+  { /* 754 */
+    0,
+    /*  */
+  },
+  { /* 755 */
+    0,
+    /*  */
+  },
+  { /* 756 */
+    0,
+    /*  */
+  },
+  { /* 757 */
+    0,
+    /*  */
+  },
+  { /* 758 */
+    0,
+    /*  */
+  },
+  { /* 759 */
+    0,
+    /*  */
+  },
+  { /* 760 */
+    0,
+    /*  */
+  },
+  { /* 761 */
+    0,
+    /*  */
+  },
+  { /* 762 */
+    0,
+    /*  */
+  },
+  { /* 763 */
+    0,
+    /*  */
+  },
+  { /* 764 */
+    0,
+    /*  */
+  },
+  { /* 765 */
+    0,
+    /*  */
+  },
+  { /* 766 */
+    0,
+    /*  */
+  },
+  { /* 767 */
+    0,
+    /* LOCK_PREFIX */
+  },
+  { /* 768 */
+    0,
+    /*  */
+  },
+  { /* 769 */
+    0,
+    /*  */
+  },
+  { /* 770 */
+    0,
+    /*  */
+  },
+  { /* 771 */
+    0,
+    /*  */
+  },
+  { /* 772 */
+    0,
+    /*  */
+  },
+  { /* 773 */
+    0,
+    /*  */
+  },
+  { /* 774 */
+    0,
+    /*  */
+  },
+  { /* 775 */
+    0,
+    /*  */
+  },
+  { /* 776 */
+    0,
+    /*  */
+  },
+  { /* 777 */
+    0,
+    /*  */
+  },
+  { /* 778 */
+    0,
+    /*  */
+  },
+  { /* 779 */
+    0,
+    /*  */
+  },
+  { /* 780 */
+    0,
+    /*  */
+  },
+  { /* 781 */
+    0,
+    /*  */
+  },
+  { /* 782 */
+    0,
+    /*  */
+  },
+  { /* 783 */
+    0,
+    /*  */
+  },
+  { /* 784 */
+    0,
+    /*  */
+  },
+  { /* 785 */
+    0,
+    /*  */
+  },
+  { /* 786 */
+    0,
+    /*  */
+  },
+  { /* 787 */
+    0,
+    /*  */
+  },
+  { /* 788 */
+    0,
+    /*  */
+  },
+  { /* 789 */
+    0,
+    /*  */
+  },
+  { /* 790 */
+    109,
+    /* LODSB */
+  },
+  { /* 791 */
+    110,
+    /* LODSL */
+  },
+  { /* 792 */
+    111,
+    /* LODSQ */
+  },
+  { /* 793 */
+    112,
+    /* LODSW */
+  },
+  { /* 794 */
+    100,
+    /* LOOP */
+  },
+  { /* 795 */
+    100,
+    /* LOOPE */
+  },
+  { /* 796 */
+    100,
+    /* LOOPNE */
+  },
+  { /* 797 */
+    113,
+    /* LRETIL */
+  },
+  { /* 798 */
+    113,
+    /* LRETIQ */
+  },
+  { /* 799 */
+    2,
+    /* LRETIW */
+  },
+  { /* 800 */
+    0,
+    /* LRETL */
+  },
+  { /* 801 */
+    0,
+    /* LRETQ */
+  },
+  { /* 802 */
+    0,
+    /* LRETW */
+  },
+  { /* 803 */
+    50,
+    /* LSL16rm */
+  },
+  { /* 804 */
+    51,
+    /* LSL16rr */
+  },
+  { /* 805 */
+    50,
+    /* LSL32rm */
+  },
+  { /* 806 */
+    51,
+    /* LSL32rr */
+  },
+  { /* 807 */
+    30,
+    /* LSL64rm */
+  },
+  { /* 808 */
+    31,
+    /* LSL64rr */
+  },
+  { /* 809 */
+    103,
+    /* LSS16rm */
+  },
+  { /* 810 */
+    104,
+    /* LSS32rm */
+  },
+  { /* 811 */
+    107,
+    /* LSS64rm */
+  },
+  { /* 812 */
+    59,
+    /* LTRm */
+  },
+  { /* 813 */
+    108,
+    /* LTRr */
+  },
+  { /* 814 */
+    0,
+    /*  */
+  },
+  { /* 815 */
+    0,
+    /*  */
+  },
+  { /* 816 */
+    0,
+    /*  */
+  },
+  { /* 817 */
+    0,
+    /*  */
+  },
+  { /* 818 */
+    50,
+    /* LZCNT16rm */
+  },
+  { /* 819 */
+    51,
+    /* LZCNT16rr */
+  },
+  { /* 820 */
+    50,
+    /* LZCNT32rm */
+  },
+  { /* 821 */
+    51,
+    /* LZCNT32rr */
+  },
+  { /* 822 */
+    30,
+    /* LZCNT64rm */
+  },
+  { /* 823 */
+    31,
+    /* LZCNT64rr */
+  },
+  { /* 824 */
+    0,
+    /* MONTMUL */
+  },
+  { /* 825 */
+    0,
+    /*  */
+  },
+  { /* 826 */
+    0,
+    /*  */
+  },
+  { /* 827 */
+    114,
+    /* MOV16ao16 */
+  },
+  { /* 828 */
+    114,
+    /* MOV16ao16_16 */
+  },
+  { /* 829 */
+    3,
+    /* MOV16mi */
+  },
+  { /* 830 */
+    5,
+    /* MOV16mr */
+  },
+  { /* 831 */
+    115,
+    /* MOV16ms */
+  },
+  { /* 832 */
+    114,
+    /* MOV16o16a */
+  },
+  { /* 833 */
+    114,
+    /* MOV16o16a_16 */
+  },
+  { /* 834 */
+    116,
+    /* MOV16ri */
+  },
+  { /* 835 */
+    65,
+    /* MOV16ri_alt */
+  },
+  { /* 836 */
+    50,
+    /* MOV16rm */
+  },
+  { /* 837 */
+    55,
+    /* MOV16rr */
+  },
+  { /* 838 */
+    51,
+    /* MOV16rr_REV */
+  },
+  { /* 839 */
+    117,
+    /* MOV16rs */
+  },
+  { /* 840 */
+    118,
+    /* MOV16sm */
+  },
+  { /* 841 */
+    119,
+    /* MOV16sr */
+  },
+  { /* 842 */
+    120,
+    /* MOV32ao32 */
+  },
+  { /* 843 */
+    120,
+    /* MOV32ao32_16 */
+  },
+  { /* 844 */
+    121,
+    /* MOV32cr */
+  },
+  { /* 845 */
+    122,
+    /* MOV32dr */
+  },
+  { /* 846 */
+    3,
+    /* MOV32mi */
+  },
+  { /* 847 */
+    5,
+    /* MOV32mr */
+  },
+  { /* 848 */
+    115,
+    /* MOV32ms */
+  },
+  { /* 849 */
+    120,
+    /* MOV32o32a */
+  },
+  { /* 850 */
+    120,
+    /* MOV32o32a_16 */
+  },
+  { /* 851 */
+    0,
+    /*  */
+  },
+  { /* 852 */
+    123,
+    /* MOV32rc */
+  },
+  { /* 853 */
+    124,
+    /* MOV32rd */
+  },
+  { /* 854 */
+    116,
+    /* MOV32ri */
+  },
+  { /* 855 */
+    0,
+    /*  */
+  },
+  { /* 856 */
+    65,
+    /* MOV32ri_alt */
+  },
+  { /* 857 */
+    50,
+    /* MOV32rm */
+  },
+  { /* 858 */
+    55,
+    /* MOV32rr */
+  },
+  { /* 859 */
+    51,
+    /* MOV32rr_REV */
+  },
+  { /* 860 */
+    117,
+    /* MOV32rs */
+  },
+  { /* 861 */
+    118,
+    /* MOV32sm */
+  },
+  { /* 862 */
+    119,
+    /* MOV32sr */
+  },
+  { /* 863 */
+    114,
+    /* MOV64ao16 */
+  },
+  { /* 864 */
+    120,
+    /* MOV64ao32 */
+  },
+  { /* 865 */
+    125,
+    /* MOV64ao64 */
+  },
+  { /* 866 */
+    126,
+    /* MOV64ao8 */
+  },
+  { /* 867 */
+    127,
+    /* MOV64cr */
+  },
+  { /* 868 */
+    128,
+    /* MOV64dr */
+  },
+  { /* 869 */
+    14,
+    /* MOV64mi32 */
+  },
+  { /* 870 */
+    16,
+    /* MOV64mr */
+  },
+  { /* 871 */
+    115,
+    /* MOV64ms */
+  },
+  { /* 872 */
+    114,
+    /* MOV64o16a */
+  },
+  { /* 873 */
+    120,
+    /* MOV64o32a */
+  },
+  { /* 874 */
+    125,
+    /* MOV64o64a */
+  },
+  { /* 875 */
+    126,
+    /* MOV64o8a */
+  },
+  { /* 876 */
+    129,
+    /* MOV64rc */
+  },
+  { /* 877 */
+    130,
+    /* MOV64rd */
+  },
+  { /* 878 */
+    131,
+    /* MOV64ri */
+  },
+  { /* 879 */
+    66,
+    /* MOV64ri32 */
+  },
+  { /* 880 */
+    30,
+    /* MOV64rm */
+  },
+  { /* 881 */
+    58,
+    /* MOV64rr */
+  },
+  { /* 882 */
+    31,
+    /* MOV64rr_REV */
+  },
+  { /* 883 */
+    132,
+    /* MOV64rs */
+  },
+  { /* 884 */
+    118,
+    /* MOV64sm */
+  },
+  { /* 885 */
+    133,
+    /* MOV64sr */
+  },
+  { /* 886 */
+    126,
+    /* MOV8ao8 */
+  },
+  { /* 887 */
+    126,
+    /* MOV8ao8_16 */
+  },
+  { /* 888 */
+    22,
+    /* MOV8mi */
+  },
+  { /* 889 */
+    23,
+    /* MOV8mr */
+  },
+  { /* 890 */
+    0,
+    /*  */
+  },
+  { /* 891 */
+    126,
+    /* MOV8o8a */
+  },
+  { /* 892 */
+    126,
+    /* MOV8o8a_16 */
+  },
+  { /* 893 */
+    134,
+    /* MOV8ri */
+  },
+  { /* 894 */
+    67,
+    /* MOV8ri_alt */
+  },
+  { /* 895 */
+    68,
+    /* MOV8rm */
+  },
+  { /* 896 */
+    0,
+    /*  */
+  },
+  { /* 897 */
+    69,
+    /* MOV8rr */
+  },
+  { /* 898 */
+    0,
+    /*  */
+  },
+  { /* 899 */
+    70,
+    /* MOV8rr_REV */
+  },
+  { /* 900 */
+    5,
+    /* MOVBE16mr */
+  },
+  { /* 901 */
+    50,
+    /* MOVBE16rm */
+  },
+  { /* 902 */
+    5,
+    /* MOVBE32mr */
+  },
+  { /* 903 */
+    50,
+    /* MOVBE32rm */
+  },
+  { /* 904 */
+    16,
+    /* MOVBE64mr */
+  },
+  { /* 905 */
+    30,
+    /* MOVBE64rm */
+  },
+  { /* 906 */
+    0,
+    /*  */
+  },
+  { /* 907 */
+    74,
+    /* MOVSB */
+  },
+  { /* 908 */
+    72,
+    /* MOVSL */
+  },
+  { /* 909 */
+    73,
+    /* MOVSQ */
+  },
+  { /* 910 */
+    71,
+    /* MOVSW */
+  },
+  { /* 911 */
+    135,
+    /* MOVSX16rm8 */
+  },
+  { /* 912 */
+    136,
+    /* MOVSX16rr8 */
+  },
+  { /* 913 */
+    50,
+    /* MOVSX32rm16 */
+  },
+  { /* 914 */
+    135,
+    /* MOVSX32rm8 */
+  },
+  { /* 915 */
+    137,
+    /* MOVSX32rr16 */
+  },
+  { /* 916 */
+    136,
+    /* MOVSX32rr8 */
+  },
+  { /* 917 */
+    30,
+    /* MOVSX64rm16 */
+  },
+  { /* 918 */
+    30,
+    /* MOVSX64rm32 */
+  },
+  { /* 919 */
+    138,
+    /* MOVSX64rm8 */
+  },
+  { /* 920 */
+    139,
+    /* MOVSX64rr16 */
+  },
+  { /* 921 */
+    102,
+    /* MOVSX64rr32 */
+  },
+  { /* 922 */
+    140,
+    /* MOVSX64rr8 */
+  },
+  { /* 923 */
+    135,
+    /* MOVZX16rm8 */
+  },
+  { /* 924 */
+    136,
+    /* MOVZX16rr8 */
+  },
+  { /* 925 */
+    0,
+    /*  */
+  },
+  { /* 926 */
+    0,
+    /*  */
+  },
+  { /* 927 */
+    50,
+    /* MOVZX32rm16 */
+  },
+  { /* 928 */
+    135,
+    /* MOVZX32rm8 */
+  },
+  { /* 929 */
+    137,
+    /* MOVZX32rr16 */
+  },
+  { /* 930 */
+    136,
+    /* MOVZX32rr8 */
+  },
+  { /* 931 */
+    30,
+    /* MOVZX64rm16_Q */
+  },
+  { /* 932 */
+    138,
+    /* MOVZX64rm8_Q */
+  },
+  { /* 933 */
+    139,
+    /* MOVZX64rr16_Q */
+  },
+  { /* 934 */
+    140,
+    /* MOVZX64rr8_Q */
+  },
+  { /* 935 */
+    59,
+    /* MUL16m */
+  },
+  { /* 936 */
+    60,
+    /* MUL16r */
+  },
+  { /* 937 */
+    59,
+    /* MUL32m */
+  },
+  { /* 938 */
+    60,
+    /* MUL32r */
+  },
+  { /* 939 */
+    59,
+    /* MUL64m */
+  },
+  { /* 940 */
+    62,
+    /* MUL64r */
+  },
+  { /* 941 */
+    78,
+    /* MUL8m */
+  },
+  { /* 942 */
+    80,
+    /* MUL8r */
+  },
+  { /* 943 */
+    32,
+    /* MULX32rm */
+  },
+  { /* 944 */
+    33,
+    /* MULX32rr */
+  },
+  { /* 945 */
+    34,
+    /* MULX64rm */
+  },
+  { /* 946 */
+    35,
+    /* MULX64rr */
+  },
+  { /* 947 */
+    59,
+    /* NEG16m */
+  },
+  { /* 948 */
+    76,
+    /* NEG16r */
+  },
+  { /* 949 */
+    59,
+    /* NEG32m */
+  },
+  { /* 950 */
+    76,
+    /* NEG32r */
+  },
+  { /* 951 */
+    59,
+    /* NEG64m */
+  },
+  { /* 952 */
+    77,
+    /* NEG64r */
+  },
+  { /* 953 */
+    78,
+    /* NEG8m */
+  },
+  { /* 954 */
+    79,
+    /* NEG8r */
+  },
+  { /* 955 */
+    0,
+    /* NOOP */
+  },
+  { /* 956 */
+    59,
+    /* NOOPL */
+  },
+  { /* 957 */
+    59,
+    /* NOOPW */
+  },
+  { /* 958 */
+    59,
+    /* NOT16m */
+  },
+  { /* 959 */
+    76,
+    /* NOT16r */
+  },
+  { /* 960 */
+    59,
+    /* NOT32m */
+  },
+  { /* 961 */
+    76,
+    /* NOT32r */
+  },
+  { /* 962 */
+    59,
+    /* NOT64m */
+  },
+  { /* 963 */
+    77,
+    /* NOT64r */
+  },
+  { /* 964 */
+    78,
+    /* NOT8m */
+  },
+  { /* 965 */
+    79,
+    /* NOT8r */
+  },
+  { /* 966 */
+    2,
+    /* OR16i16 */
+  },
+  { /* 967 */
+    3,
+    /* OR16mi */
+  },
+  { /* 968 */
+    4,
+    /* OR16mi8 */
+  },
+  { /* 969 */
+    5,
+    /* OR16mr */
+  },
+  { /* 970 */
+    6,
+    /* OR16ri */
+  },
+  { /* 971 */
+    7,
+    /* OR16ri8 */
+  },
+  { /* 972 */
+    8,
+    /* OR16rm */
+  },
+  { /* 973 */
+    9,
+    /* OR16rr */
+  },
+  { /* 974 */
+    10,
+    /* OR16rr_REV */
+  },
+  { /* 975 */
+    2,
+    /* OR32i32 */
+  },
+  { /* 976 */
+    3,
+    /* OR32mi */
+  },
+  { /* 977 */
+    11,
+    /* OR32mi8 */
+  },
+  { /* 978 */
+    5,
+    /* OR32mr */
+  },
+  { /* 979 */
+    0,
+    /*  */
+  },
+  { /* 980 */
+    6,
+    /* OR32ri */
+  },
+  { /* 981 */
+    12,
+    /* OR32ri8 */
+  },
+  { /* 982 */
+    8,
+    /* OR32rm */
+  },
+  { /* 983 */
+    9,
+    /* OR32rr */
+  },
+  { /* 984 */
+    10,
+    /* OR32rr_REV */
+  },
+  { /* 985 */
+    13,
+    /* OR64i32 */
+  },
+  { /* 986 */
+    14,
+    /* OR64mi32 */
+  },
+  { /* 987 */
+    15,
+    /* OR64mi8 */
+  },
+  { /* 988 */
+    16,
+    /* OR64mr */
+  },
+  { /* 989 */
+    17,
+    /* OR64ri32 */
+  },
+  { /* 990 */
+    18,
+    /* OR64ri8 */
+  },
+  { /* 991 */
+    19,
+    /* OR64rm */
+  },
+  { /* 992 */
+    20,
+    /* OR64rr */
+  },
+  { /* 993 */
+    21,
+    /* OR64rr_REV */
+  },
+  { /* 994 */
+    1,
+    /* OR8i8 */
+  },
+  { /* 995 */
+    22,
+    /* OR8mi */
+  },
+  { /* 996 */
+    23,
+    /* OR8mr */
+  },
+  { /* 997 */
+    24,
+    /* OR8ri */
+  },
+  { /* 998 */
+    25,
+    /* OR8rm */
+  },
+  { /* 999 */
+    26,
+    /* OR8rr */
+  },
+  { /* 1000 */
+    27,
+    /* OR8rr_REV */
+  },
+  { /* 1001 */
+    1,
+    /* OUT16ir */
+  },
+  { /* 1002 */
+    0,
+    /* OUT16rr */
+  },
+  { /* 1003 */
+    1,
+    /* OUT32ir */
+  },
+  { /* 1004 */
+    0,
+    /* OUT32rr */
+  },
+  { /* 1005 */
+    1,
+    /* OUT8ir */
+  },
+  { /* 1006 */
+    0,
+    /* OUT8rr */
+  },
+  { /* 1007 */
+    109,
+    /* OUTSB */
+  },
+  { /* 1008 */
+    110,
+    /* OUTSL */
+  },
+  { /* 1009 */
+    112,
+    /* OUTSW */
+  },
+  { /* 1010 */
+    32,
+    /* PDEP32rm */
+  },
+  { /* 1011 */
+    33,
+    /* PDEP32rr */
+  },
+  { /* 1012 */
+    34,
+    /* PDEP64rm */
+  },
+  { /* 1013 */
+    35,
+    /* PDEP64rr */
+  },
+  { /* 1014 */
+    32,
+    /* PEXT32rm */
+  },
+  { /* 1015 */
+    33,
+    /* PEXT32rr */
+  },
+  { /* 1016 */
+    34,
+    /* PEXT64rm */
+  },
+  { /* 1017 */
+    35,
+    /* PEXT64rr */
+  },
+  { /* 1018 */
+    141,
+    /* POP16r */
+  },
+  { /* 1019 */
+    59,
+    /* POP16rmm */
+  },
+  { /* 1020 */
+    60,
+    /* POP16rmr */
+  },
+  { /* 1021 */
+    141,
+    /* POP32r */
+  },
+  { /* 1022 */
+    59,
+    /* POP32rmm */
+  },
+  { /* 1023 */
+    60,
+    /* POP32rmr */
+  },
+  { /* 1024 */
+    142,
+    /* POP64r */
+  },
+  { /* 1025 */
+    59,
+    /* POP64rmm */
+  },
+  { /* 1026 */
+    62,
+    /* POP64rmr */
+  },
+  { /* 1027 */
+    0,
+    /* POPA16 */
+  },
+  { /* 1028 */
+    0,
+    /* POPA32 */
+  },
+  { /* 1029 */
+    0,
+    /* POPDS16 */
+  },
+  { /* 1030 */
+    0,
+    /* POPDS32 */
+  },
+  { /* 1031 */
+    0,
+    /* POPES16 */
+  },
+  { /* 1032 */
+    0,
+    /* POPES32 */
+  },
+  { /* 1033 */
+    0,
+    /* POPF16 */
+  },
+  { /* 1034 */
+    0,
+    /* POPF32 */
+  },
+  { /* 1035 */
+    0,
+    /* POPF64 */
+  },
+  { /* 1036 */
+    0,
+    /* POPFS16 */
+  },
+  { /* 1037 */
+    0,
+    /* POPFS32 */
+  },
+  { /* 1038 */
+    0,
+    /* POPFS64 */
+  },
+  { /* 1039 */
+    0,
+    /* POPGS16 */
+  },
+  { /* 1040 */
+    0,
+    /* POPGS32 */
+  },
+  { /* 1041 */
+    0,
+    /* POPGS64 */
+  },
+  { /* 1042 */
+    0,
+    /* POPSS16 */
+  },
+  { /* 1043 */
+    0,
+    /* POPSS32 */
+  },
+  { /* 1044 */
+    143,
+    /* PUSH16i8 */
+  },
+  { /* 1045 */
+    141,
+    /* PUSH16r */
+  },
+  { /* 1046 */
+    59,
+    /* PUSH16rmm */
+  },
+  { /* 1047 */
+    60,
+    /* PUSH16rmr */
+  },
+  { /* 1048 */
+    144,
+    /* PUSH32i8 */
+  },
+  { /* 1049 */
+    141,
+    /* PUSH32r */
+  },
+  { /* 1050 */
+    59,
+    /* PUSH32rmm */
+  },
+  { /* 1051 */
+    60,
+    /* PUSH32rmr */
+  },
+  { /* 1052 */
+    2,
+    /* PUSH64i16 */
+  },
+  { /* 1053 */
+    13,
+    /* PUSH64i32 */
+  },
+  { /* 1054 */
+    145,
+    /* PUSH64i8 */
+  },
+  { /* 1055 */
+    142,
+    /* PUSH64r */
+  },
+  { /* 1056 */
+    59,
+    /* PUSH64rmm */
+  },
+  { /* 1057 */
+    62,
+    /* PUSH64rmr */
+  },
+  { /* 1058 */
+    0,
+    /* PUSHA16 */
+  },
+  { /* 1059 */
+    0,
+    /* PUSHA32 */
+  },
+  { /* 1060 */
+    0,
+    /* PUSHCS16 */
+  },
+  { /* 1061 */
+    0,
+    /* PUSHCS32 */
+  },
+  { /* 1062 */
+    0,
+    /* PUSHDS16 */
+  },
+  { /* 1063 */
+    0,
+    /* PUSHDS32 */
+  },
+  { /* 1064 */
+    0,
+    /* PUSHES16 */
+  },
+  { /* 1065 */
+    0,
+    /* PUSHES32 */
+  },
+  { /* 1066 */
+    0,
+    /* PUSHF16 */
+  },
+  { /* 1067 */
+    0,
+    /* PUSHF32 */
+  },
+  { /* 1068 */
+    0,
+    /* PUSHF64 */
+  },
+  { /* 1069 */
+    0,
+    /* PUSHFS16 */
+  },
+  { /* 1070 */
+    0,
+    /* PUSHFS32 */
+  },
+  { /* 1071 */
+    0,
+    /* PUSHFS64 */
+  },
+  { /* 1072 */
+    0,
+    /* PUSHGS16 */
+  },
+  { /* 1073 */
+    0,
+    /* PUSHGS32 */
+  },
+  { /* 1074 */
+    0,
+    /* PUSHGS64 */
+  },
+  { /* 1075 */
+    0,
+    /* PUSHSS16 */
+  },
+  { /* 1076 */
+    0,
+    /* PUSHSS32 */
+  },
+  { /* 1077 */
+    2,
+    /* PUSHi16 */
+  },
+  { /* 1078 */
+    2,
+    /* PUSHi32 */
+  },
+  { /* 1079 */
+    59,
+    /* RCL16m1 */
+  },
+  { /* 1080 */
+    59,
+    /* RCL16mCL */
+  },
+  { /* 1081 */
+    146,
+    /* RCL16mi */
+  },
+  { /* 1082 */
+    76,
+    /* RCL16r1 */
+  },
+  { /* 1083 */
+    76,
+    /* RCL16rCL */
+  },
+  { /* 1084 */
+    147,
+    /* RCL16ri */
+  },
+  { /* 1085 */
+    59,
+    /* RCL32m1 */
+  },
+  { /* 1086 */
+    59,
+    /* RCL32mCL */
+  },
+  { /* 1087 */
+    146,
+    /* RCL32mi */
+  },
+  { /* 1088 */
+    76,
+    /* RCL32r1 */
+  },
+  { /* 1089 */
+    76,
+    /* RCL32rCL */
+  },
+  { /* 1090 */
+    147,
+    /* RCL32ri */
+  },
+  { /* 1091 */
+    59,
+    /* RCL64m1 */
+  },
+  { /* 1092 */
+    59,
+    /* RCL64mCL */
+  },
+  { /* 1093 */
+    146,
+    /* RCL64mi */
+  },
+  { /* 1094 */
+    77,
+    /* RCL64r1 */
+  },
+  { /* 1095 */
+    77,
+    /* RCL64rCL */
+  },
+  { /* 1096 */
+    148,
+    /* RCL64ri */
+  },
+  { /* 1097 */
+    78,
+    /* RCL8m1 */
+  },
+  { /* 1098 */
+    78,
+    /* RCL8mCL */
+  },
+  { /* 1099 */
+    22,
+    /* RCL8mi */
+  },
+  { /* 1100 */
+    79,
+    /* RCL8r1 */
+  },
+  { /* 1101 */
+    79,
+    /* RCL8rCL */
+  },
+  { /* 1102 */
+    24,
+    /* RCL8ri */
+  },
+  { /* 1103 */
+    59,
+    /* RCR16m1 */
+  },
+  { /* 1104 */
+    59,
+    /* RCR16mCL */
+  },
+  { /* 1105 */
+    146,
+    /* RCR16mi */
+  },
+  { /* 1106 */
+    76,
+    /* RCR16r1 */
+  },
+  { /* 1107 */
+    76,
+    /* RCR16rCL */
+  },
+  { /* 1108 */
+    147,
+    /* RCR16ri */
+  },
+  { /* 1109 */
+    59,
+    /* RCR32m1 */
+  },
+  { /* 1110 */
+    59,
+    /* RCR32mCL */
+  },
+  { /* 1111 */
+    146,
+    /* RCR32mi */
+  },
+  { /* 1112 */
+    76,
+    /* RCR32r1 */
+  },
+  { /* 1113 */
+    76,
+    /* RCR32rCL */
+  },
+  { /* 1114 */
+    147,
+    /* RCR32ri */
+  },
+  { /* 1115 */
+    59,
+    /* RCR64m1 */
+  },
+  { /* 1116 */
+    59,
+    /* RCR64mCL */
+  },
+  { /* 1117 */
+    146,
+    /* RCR64mi */
+  },
+  { /* 1118 */
+    77,
+    /* RCR64r1 */
+  },
+  { /* 1119 */
+    77,
+    /* RCR64rCL */
+  },
+  { /* 1120 */
+    148,
+    /* RCR64ri */
+  },
+  { /* 1121 */
+    78,
+    /* RCR8m1 */
+  },
+  { /* 1122 */
+    78,
+    /* RCR8mCL */
+  },
+  { /* 1123 */
+    22,
+    /* RCR8mi */
+  },
+  { /* 1124 */
+    79,
+    /* RCR8r1 */
+  },
+  { /* 1125 */
+    79,
+    /* RCR8rCL */
+  },
+  { /* 1126 */
+    24,
+    /* RCR8ri */
+  },
+  { /* 1127 */
+    149,
+    /* RDFSBASE */
+  },
+  { /* 1128 */
+    62,
+    /* RDFSBASE64 */
+  },
+  { /* 1129 */
+    149,
+    /* RDGSBASE */
+  },
+  { /* 1130 */
+    62,
+    /* RDGSBASE64 */
+  },
+  { /* 1131 */
+    0,
+    /* RDMSR */
+  },
+  { /* 1132 */
+    0,
+    /* RDPMC */
+  },
+  { /* 1133 */
+    60,
+    /* RDRAND16r */
+  },
+  { /* 1134 */
+    60,
+    /* RDRAND32r */
+  },
+  { /* 1135 */
+    62,
+    /* RDRAND64r */
+  },
+  { /* 1136 */
+    60,
+    /* RDSEED16r */
+  },
+  { /* 1137 */
+    60,
+    /* RDSEED32r */
+  },
+  { /* 1138 */
+    62,
+    /* RDSEED64r */
+  },
+  { /* 1139 */
+    0,
+    /* RDTSC */
+  },
+  { /* 1140 */
+    0,
+    /* RDTSCP */
+  },
+  { /* 1141 */
+    0,
+    /*  */
+  },
+  { /* 1142 */
+    0,
+    /*  */
+  },
+  { /* 1143 */
+    0,
+    /*  */
+  },
+  { /* 1144 */
+    0,
+    /*  */
+  },
+  { /* 1145 */
+    0,
+    /* REPNE_PREFIX */
+  },
+  { /* 1146 */
+    0,
+    /*  */
+  },
+  { /* 1147 */
+    0,
+    /*  */
+  },
+  { /* 1148 */
+    0,
+    /*  */
+  },
+  { /* 1149 */
+    0,
+    /*  */
+  },
+  { /* 1150 */
+    0,
+    /*  */
+  },
+  { /* 1151 */
+    0,
+    /*  */
+  },
+  { /* 1152 */
+    0,
+    /*  */
+  },
+  { /* 1153 */
+    0,
+    /* REP_PREFIX */
+  },
+  { /* 1154 */
+    0,
+    /*  */
+  },
+  { /* 1155 */
+    0,
+    /*  */
+  },
+  { /* 1156 */
+    0,
+    /*  */
+  },
+  { /* 1157 */
+    0,
+    /*  */
+  },
+  { /* 1158 */
+    0,
+    /*  */
+  },
+  { /* 1159 */
+    0,
+    /*  */
+  },
+  { /* 1160 */
+    0,
+    /*  */
+  },
+  { /* 1161 */
+    113,
+    /* RETIL */
+  },
+  { /* 1162 */
+    113,
+    /* RETIQ */
+  },
+  { /* 1163 */
+    2,
+    /* RETIW */
+  },
+  { /* 1164 */
+    0,
+    /* RETL */
+  },
+  { /* 1165 */
+    0,
+    /* RETQ */
+  },
+  { /* 1166 */
+    0,
+    /* RETW */
+  },
+  { /* 1167 */
+    0,
+    /* REX64_PREFIX */
+  },
+  { /* 1168 */
+    59,
+    /* ROL16m1 */
+  },
+  { /* 1169 */
+    59,
+    /* ROL16mCL */
+  },
+  { /* 1170 */
+    146,
+    /* ROL16mi */
+  },
+  { /* 1171 */
+    76,
+    /* ROL16r1 */
+  },
+  { /* 1172 */
+    76,
+    /* ROL16rCL */
+  },
+  { /* 1173 */
+    147,
+    /* ROL16ri */
+  },
+  { /* 1174 */
+    59,
+    /* ROL32m1 */
+  },
+  { /* 1175 */
+    59,
+    /* ROL32mCL */
+  },
+  { /* 1176 */
+    146,
+    /* ROL32mi */
+  },
+  { /* 1177 */
+    76,
+    /* ROL32r1 */
+  },
+  { /* 1178 */
+    76,
+    /* ROL32rCL */
+  },
+  { /* 1179 */
+    147,
+    /* ROL32ri */
+  },
+  { /* 1180 */
+    59,
+    /* ROL64m1 */
+  },
+  { /* 1181 */
+    59,
+    /* ROL64mCL */
+  },
+  { /* 1182 */
+    146,
+    /* ROL64mi */
+  },
+  { /* 1183 */
+    77,
+    /* ROL64r1 */
+  },
+  { /* 1184 */
+    77,
+    /* ROL64rCL */
+  },
+  { /* 1185 */
+    148,
+    /* ROL64ri */
+  },
+  { /* 1186 */
+    78,
+    /* ROL8m1 */
+  },
+  { /* 1187 */
+    78,
+    /* ROL8mCL */
+  },
+  { /* 1188 */
+    22,
+    /* ROL8mi */
+  },
+  { /* 1189 */
+    79,
+    /* ROL8r1 */
+  },
+  { /* 1190 */
+    79,
+    /* ROL8rCL */
+  },
+  { /* 1191 */
+    24,
+    /* ROL8ri */
+  },
+  { /* 1192 */
+    59,
+    /* ROR16m1 */
+  },
+  { /* 1193 */
+    59,
+    /* ROR16mCL */
+  },
+  { /* 1194 */
+    146,
+    /* ROR16mi */
+  },
+  { /* 1195 */
+    76,
+    /* ROR16r1 */
+  },
+  { /* 1196 */
+    76,
+    /* ROR16rCL */
+  },
+  { /* 1197 */
+    147,
+    /* ROR16ri */
+  },
+  { /* 1198 */
+    59,
+    /* ROR32m1 */
+  },
+  { /* 1199 */
+    59,
+    /* ROR32mCL */
+  },
+  { /* 1200 */
+    146,
+    /* ROR32mi */
+  },
+  { /* 1201 */
+    76,
+    /* ROR32r1 */
+  },
+  { /* 1202 */
+    76,
+    /* ROR32rCL */
+  },
+  { /* 1203 */
+    147,
+    /* ROR32ri */
+  },
+  { /* 1204 */
+    59,
+    /* ROR64m1 */
+  },
+  { /* 1205 */
+    59,
+    /* ROR64mCL */
+  },
+  { /* 1206 */
+    146,
+    /* ROR64mi */
+  },
+  { /* 1207 */
+    77,
+    /* ROR64r1 */
+  },
+  { /* 1208 */
+    77,
+    /* ROR64rCL */
+  },
+  { /* 1209 */
+    148,
+    /* ROR64ri */
+  },
+  { /* 1210 */
+    78,
+    /* ROR8m1 */
+  },
+  { /* 1211 */
+    78,
+    /* ROR8mCL */
+  },
+  { /* 1212 */
+    22,
+    /* ROR8mi */
+  },
+  { /* 1213 */
+    79,
+    /* ROR8r1 */
+  },
+  { /* 1214 */
+    79,
+    /* ROR8rCL */
+  },
+  { /* 1215 */
+    24,
+    /* ROR8ri */
+  },
+  { /* 1216 */
+    150,
+    /* RORX32mi */
+  },
+  { /* 1217 */
+    151,
+    /* RORX32ri */
+  },
+  { /* 1218 */
+    152,
+    /* RORX64mi */
+  },
+  { /* 1219 */
+    153,
+    /* RORX64ri */
+  },
+  { /* 1220 */
+    0,
+    /* RSM */
+  },
+  { /* 1221 */
+    0,
+    /* SAHF */
+  },
+  { /* 1222 */
+    0,
+    /* SALC */
+  },
+  { /* 1223 */
+    59,
+    /* SAR16m1 */
+  },
+  { /* 1224 */
+    59,
+    /* SAR16mCL */
+  },
+  { /* 1225 */
+    146,
+    /* SAR16mi */
+  },
+  { /* 1226 */
+    76,
+    /* SAR16r1 */
+  },
+  { /* 1227 */
+    76,
+    /* SAR16rCL */
+  },
+  { /* 1228 */
+    147,
+    /* SAR16ri */
+  },
+  { /* 1229 */
+    59,
+    /* SAR32m1 */
+  },
+  { /* 1230 */
+    59,
+    /* SAR32mCL */
+  },
+  { /* 1231 */
+    146,
+    /* SAR32mi */
+  },
+  { /* 1232 */
+    76,
+    /* SAR32r1 */
+  },
+  { /* 1233 */
+    76,
+    /* SAR32rCL */
+  },
+  { /* 1234 */
+    147,
+    /* SAR32ri */
+  },
+  { /* 1235 */
+    59,
+    /* SAR64m1 */
+  },
+  { /* 1236 */
+    59,
+    /* SAR64mCL */
+  },
+  { /* 1237 */
+    146,
+    /* SAR64mi */
+  },
+  { /* 1238 */
+    77,
+    /* SAR64r1 */
+  },
+  { /* 1239 */
+    77,
+    /* SAR64rCL */
+  },
+  { /* 1240 */
+    148,
+    /* SAR64ri */
+  },
+  { /* 1241 */
+    78,
+    /* SAR8m1 */
+  },
+  { /* 1242 */
+    78,
+    /* SAR8mCL */
+  },
+  { /* 1243 */
+    22,
+    /* SAR8mi */
+  },
+  { /* 1244 */
+    79,
+    /* SAR8r1 */
+  },
+  { /* 1245 */
+    79,
+    /* SAR8rCL */
+  },
+  { /* 1246 */
+    24,
+    /* SAR8ri */
+  },
+  { /* 1247 */
+    38,
+    /* SARX32rm */
+  },
+  { /* 1248 */
+    39,
+    /* SARX32rr */
+  },
+  { /* 1249 */
+    40,
+    /* SARX64rm */
+  },
+  { /* 1250 */
+    41,
+    /* SARX64rr */
+  },
+  { /* 1251 */
+    2,
+    /* SBB16i16 */
+  },
+  { /* 1252 */
+    3,
+    /* SBB16mi */
+  },
+  { /* 1253 */
+    4,
+    /* SBB16mi8 */
+  },
+  { /* 1254 */
+    5,
+    /* SBB16mr */
+  },
+  { /* 1255 */
+    6,
+    /* SBB16ri */
+  },
+  { /* 1256 */
+    7,
+    /* SBB16ri8 */
+  },
+  { /* 1257 */
+    8,
+    /* SBB16rm */
+  },
+  { /* 1258 */
+    9,
+    /* SBB16rr */
+  },
+  { /* 1259 */
+    10,
+    /* SBB16rr_REV */
+  },
+  { /* 1260 */
+    2,
+    /* SBB32i32 */
+  },
+  { /* 1261 */
+    3,
+    /* SBB32mi */
+  },
+  { /* 1262 */
+    11,
+    /* SBB32mi8 */
+  },
+  { /* 1263 */
+    5,
+    /* SBB32mr */
+  },
+  { /* 1264 */
+    6,
+    /* SBB32ri */
+  },
+  { /* 1265 */
+    12,
+    /* SBB32ri8 */
+  },
+  { /* 1266 */
+    8,
+    /* SBB32rm */
+  },
+  { /* 1267 */
+    9,
+    /* SBB32rr */
+  },
+  { /* 1268 */
+    10,
+    /* SBB32rr_REV */
+  },
+  { /* 1269 */
+    13,
+    /* SBB64i32 */
+  },
+  { /* 1270 */
+    14,
+    /* SBB64mi32 */
+  },
+  { /* 1271 */
+    15,
+    /* SBB64mi8 */
+  },
+  { /* 1272 */
+    16,
+    /* SBB64mr */
+  },
+  { /* 1273 */
+    17,
+    /* SBB64ri32 */
+  },
+  { /* 1274 */
+    18,
+    /* SBB64ri8 */
+  },
+  { /* 1275 */
+    19,
+    /* SBB64rm */
+  },
+  { /* 1276 */
+    20,
+    /* SBB64rr */
+  },
+  { /* 1277 */
+    21,
+    /* SBB64rr_REV */
+  },
+  { /* 1278 */
+    1,
+    /* SBB8i8 */
+  },
+  { /* 1279 */
+    22,
+    /* SBB8mi */
+  },
+  { /* 1280 */
+    23,
+    /* SBB8mr */
+  },
+  { /* 1281 */
+    24,
+    /* SBB8ri */
+  },
+  { /* 1282 */
+    25,
+    /* SBB8rm */
+  },
+  { /* 1283 */
+    26,
+    /* SBB8rr */
+  },
+  { /* 1284 */
+    27,
+    /* SBB8rr_REV */
+  },
+  { /* 1285 */
+    95,
+    /* SCAS16 */
+  },
+  { /* 1286 */
+    96,
+    /* SCAS32 */
+  },
+  { /* 1287 */
+    154,
+    /* SCAS64 */
+  },
+  { /* 1288 */
+    97,
+    /* SCAS8 */
+  },
+  { /* 1289 */
+    0,
+    /*  */
+  },
+  { /* 1290 */
+    0,
+    /*  */
+  },
+  { /* 1291 */
+    78,
+    /* SETAEm */
+  },
+  { /* 1292 */
+    80,
+    /* SETAEr */
+  },
+  { /* 1293 */
+    78,
+    /* SETAm */
+  },
+  { /* 1294 */
+    80,
+    /* SETAr */
+  },
+  { /* 1295 */
+    78,
+    /* SETBEm */
+  },
+  { /* 1296 */
+    80,
+    /* SETBEr */
+  },
+  { /* 1297 */
+    0,
+    /*  */
+  },
+  { /* 1298 */
+    0,
+    /*  */
+  },
+  { /* 1299 */
+    0,
+    /*  */
+  },
+  { /* 1300 */
+    0,
+    /*  */
+  },
+  { /* 1301 */
+    78,
+    /* SETBm */
+  },
+  { /* 1302 */
+    80,
+    /* SETBr */
+  },
+  { /* 1303 */
+    78,
+    /* SETEm */
+  },
+  { /* 1304 */
+    80,
+    /* SETEr */
+  },
+  { /* 1305 */
+    78,
+    /* SETGEm */
+  },
+  { /* 1306 */
+    80,
+    /* SETGEr */
+  },
+  { /* 1307 */
+    78,
+    /* SETGm */
+  },
+  { /* 1308 */
+    80,
+    /* SETGr */
+  },
+  { /* 1309 */
+    78,
+    /* SETLEm */
+  },
+  { /* 1310 */
+    80,
+    /* SETLEr */
+  },
+  { /* 1311 */
+    78,
+    /* SETLm */
+  },
+  { /* 1312 */
+    80,
+    /* SETLr */
+  },
+  { /* 1313 */
+    78,
+    /* SETNEm */
+  },
+  { /* 1314 */
+    80,
+    /* SETNEr */
+  },
+  { /* 1315 */
+    78,
+    /* SETNOm */
+  },
+  { /* 1316 */
+    80,
+    /* SETNOr */
+  },
+  { /* 1317 */
+    78,
+    /* SETNPm */
+  },
+  { /* 1318 */
+    80,
+    /* SETNPr */
+  },
+  { /* 1319 */
+    78,
+    /* SETNSm */
+  },
+  { /* 1320 */
+    80,
+    /* SETNSr */
+  },
+  { /* 1321 */
+    78,
+    /* SETOm */
+  },
+  { /* 1322 */
+    80,
+    /* SETOr */
+  },
+  { /* 1323 */
+    78,
+    /* SETPm */
+  },
+  { /* 1324 */
+    80,
+    /* SETPr */
+  },
+  { /* 1325 */
+    78,
+    /* SETSm */
+  },
+  { /* 1326 */
+    80,
+    /* SETSr */
+  },
+  { /* 1327 */
+    85,
+    /* SGDT16m */
+  },
+  { /* 1328 */
+    85,
+    /* SGDT32m */
+  },
+  { /* 1329 */
+    86,
+    /* SGDT64m */
+  },
+  { /* 1330 */
+    59,
+    /* SHL16m1 */
+  },
+  { /* 1331 */
+    59,
+    /* SHL16mCL */
+  },
+  { /* 1332 */
+    146,
+    /* SHL16mi */
+  },
+  { /* 1333 */
+    76,
+    /* SHL16r1 */
+  },
+  { /* 1334 */
+    76,
+    /* SHL16rCL */
+  },
+  { /* 1335 */
+    147,
+    /* SHL16ri */
+  },
+  { /* 1336 */
+    59,
+    /* SHL32m1 */
+  },
+  { /* 1337 */
+    59,
+    /* SHL32mCL */
+  },
+  { /* 1338 */
+    146,
+    /* SHL32mi */
+  },
+  { /* 1339 */
+    76,
+    /* SHL32r1 */
+  },
+  { /* 1340 */
+    76,
+    /* SHL32rCL */
+  },
+  { /* 1341 */
+    147,
+    /* SHL32ri */
+  },
+  { /* 1342 */
+    59,
+    /* SHL64m1 */
+  },
+  { /* 1343 */
+    59,
+    /* SHL64mCL */
+  },
+  { /* 1344 */
+    146,
+    /* SHL64mi */
+  },
+  { /* 1345 */
+    77,
+    /* SHL64r1 */
+  },
+  { /* 1346 */
+    77,
+    /* SHL64rCL */
+  },
+  { /* 1347 */
+    148,
+    /* SHL64ri */
+  },
+  { /* 1348 */
+    78,
+    /* SHL8m1 */
+  },
+  { /* 1349 */
+    78,
+    /* SHL8mCL */
+  },
+  { /* 1350 */
+    22,
+    /* SHL8mi */
+  },
+  { /* 1351 */
+    79,
+    /* SHL8r1 */
+  },
+  { /* 1352 */
+    79,
+    /* SHL8rCL */
+  },
+  { /* 1353 */
+    24,
+    /* SHL8ri */
+  },
+  { /* 1354 */
+    5,
+    /* SHLD16mrCL */
+  },
+  { /* 1355 */
+    155,
+    /* SHLD16mri8 */
+  },
+  { /* 1356 */
+    9,
+    /* SHLD16rrCL */
+  },
+  { /* 1357 */
+    156,
+    /* SHLD16rri8 */
+  },
+  { /* 1358 */
+    5,
+    /* SHLD32mrCL */
+  },
+  { /* 1359 */
+    155,
+    /* SHLD32mri8 */
+  },
+  { /* 1360 */
+    9,
+    /* SHLD32rrCL */
+  },
+  { /* 1361 */
+    156,
+    /* SHLD32rri8 */
+  },
+  { /* 1362 */
+    16,
+    /* SHLD64mrCL */
+  },
+  { /* 1363 */
+    157,
+    /* SHLD64mri8 */
+  },
+  { /* 1364 */
+    20,
+    /* SHLD64rrCL */
+  },
+  { /* 1365 */
+    158,
+    /* SHLD64rri8 */
+  },
+  { /* 1366 */
+    38,
+    /* SHLX32rm */
+  },
+  { /* 1367 */
+    39,
+    /* SHLX32rr */
+  },
+  { /* 1368 */
+    40,
+    /* SHLX64rm */
+  },
+  { /* 1369 */
+    41,
+    /* SHLX64rr */
+  },
+  { /* 1370 */
+    59,
+    /* SHR16m1 */
+  },
+  { /* 1371 */
+    59,
+    /* SHR16mCL */
+  },
+  { /* 1372 */
+    146,
+    /* SHR16mi */
+  },
+  { /* 1373 */
+    76,
+    /* SHR16r1 */
+  },
+  { /* 1374 */
+    76,
+    /* SHR16rCL */
+  },
+  { /* 1375 */
+    147,
+    /* SHR16ri */
+  },
+  { /* 1376 */
+    59,
+    /* SHR32m1 */
+  },
+  { /* 1377 */
+    59,
+    /* SHR32mCL */
+  },
+  { /* 1378 */
+    146,
+    /* SHR32mi */
+  },
+  { /* 1379 */
+    76,
+    /* SHR32r1 */
+  },
+  { /* 1380 */
+    76,
+    /* SHR32rCL */
+  },
+  { /* 1381 */
+    147,
+    /* SHR32ri */
+  },
+  { /* 1382 */
+    59,
+    /* SHR64m1 */
+  },
+  { /* 1383 */
+    59,
+    /* SHR64mCL */
+  },
+  { /* 1384 */
+    146,
+    /* SHR64mi */
+  },
+  { /* 1385 */
+    77,
+    /* SHR64r1 */
+  },
+  { /* 1386 */
+    77,
+    /* SHR64rCL */
+  },
+  { /* 1387 */
+    148,
+    /* SHR64ri */
+  },
+  { /* 1388 */
+    78,
+    /* SHR8m1 */
+  },
+  { /* 1389 */
+    78,
+    /* SHR8mCL */
+  },
+  { /* 1390 */
+    22,
+    /* SHR8mi */
+  },
+  { /* 1391 */
+    79,
+    /* SHR8r1 */
+  },
+  { /* 1392 */
+    79,
+    /* SHR8rCL */
+  },
+  { /* 1393 */
+    24,
+    /* SHR8ri */
+  },
+  { /* 1394 */
+    5,
+    /* SHRD16mrCL */
+  },
+  { /* 1395 */
+    155,
+    /* SHRD16mri8 */
+  },
+  { /* 1396 */
+    9,
+    /* SHRD16rrCL */
+  },
+  { /* 1397 */
+    156,
+    /* SHRD16rri8 */
+  },
+  { /* 1398 */
+    5,
+    /* SHRD32mrCL */
+  },
+  { /* 1399 */
+    155,
+    /* SHRD32mri8 */
+  },
+  { /* 1400 */
+    9,
+    /* SHRD32rrCL */
+  },
+  { /* 1401 */
+    156,
+    /* SHRD32rri8 */
+  },
+  { /* 1402 */
+    16,
+    /* SHRD64mrCL */
+  },
+  { /* 1403 */
+    157,
+    /* SHRD64mri8 */
+  },
+  { /* 1404 */
+    20,
+    /* SHRD64rrCL */
+  },
+  { /* 1405 */
+    158,
+    /* SHRD64rri8 */
+  },
+  { /* 1406 */
+    38,
+    /* SHRX32rm */
+  },
+  { /* 1407 */
+    39,
+    /* SHRX32rr */
+  },
+  { /* 1408 */
+    40,
+    /* SHRX64rm */
+  },
+  { /* 1409 */
+    41,
+    /* SHRX64rr */
+  },
+  { /* 1410 */
+    85,
+    /* SIDT16m */
+  },
+  { /* 1411 */
+    85,
+    /* SIDT32m */
+  },
+  { /* 1412 */
+    86,
+    /* SIDT64m */
+  },
+  { /* 1413 */
+    0,
+    /* SKINIT */
+  },
+  { /* 1414 */
+    59,
+    /* SLDT16m */
+  },
+  { /* 1415 */
+    60,
+    /* SLDT16r */
+  },
+  { /* 1416 */
+    60,
+    /* SLDT32r */
+  },
+  { /* 1417 */
+    59,
+    /* SLDT64m */
+  },
+  { /* 1418 */
+    62,
+    /* SLDT64r */
+  },
+  { /* 1419 */
+    59,
+    /* SMSW16m */
+  },
+  { /* 1420 */
+    60,
+    /* SMSW16r */
+  },
+  { /* 1421 */
+    60,
+    /* SMSW32r */
+  },
+  { /* 1422 */
+    62,
+    /* SMSW64r */
+  },
+  { /* 1423 */
+    0,
+    /* SS_PREFIX */
+  },
+  { /* 1424 */
+    0,
+    /* STAC */
+  },
+  { /* 1425 */
+    0,
+    /* STC */
+  },
+  { /* 1426 */
+    0,
+    /* STD */
+  },
+  { /* 1427 */
+    0,
+    /* STGI */
+  },
+  { /* 1428 */
+    0,
+    /* STI */
+  },
+  { /* 1429 */
+    97,
+    /* STOSB */
+  },
+  { /* 1430 */
+    96,
+    /* STOSL */
+  },
+  { /* 1431 */
+    154,
+    /* STOSQ */
+  },
+  { /* 1432 */
+    95,
+    /* STOSW */
+  },
+  { /* 1433 */
+    60,
+    /* STR16r */
+  },
+  { /* 1434 */
+    60,
+    /* STR32r */
+  },
+  { /* 1435 */
+    62,
+    /* STR64r */
+  },
+  { /* 1436 */
+    59,
+    /* STRm */
+  },
+  { /* 1437 */
+    2,
+    /* SUB16i16 */
+  },
+  { /* 1438 */
+    3,
+    /* SUB16mi */
+  },
+  { /* 1439 */
+    4,
+    /* SUB16mi8 */
+  },
+  { /* 1440 */
+    5,
+    /* SUB16mr */
+  },
+  { /* 1441 */
+    6,
+    /* SUB16ri */
+  },
+  { /* 1442 */
+    7,
+    /* SUB16ri8 */
+  },
+  { /* 1443 */
+    8,
+    /* SUB16rm */
+  },
+  { /* 1444 */
+    9,
+    /* SUB16rr */
+  },
+  { /* 1445 */
+    10,
+    /* SUB16rr_REV */
+  },
+  { /* 1446 */
+    2,
+    /* SUB32i32 */
+  },
+  { /* 1447 */
+    3,
+    /* SUB32mi */
+  },
+  { /* 1448 */
+    11,
+    /* SUB32mi8 */
+  },
+  { /* 1449 */
+    5,
+    /* SUB32mr */
+  },
+  { /* 1450 */
+    6,
+    /* SUB32ri */
+  },
+  { /* 1451 */
+    12,
+    /* SUB32ri8 */
+  },
+  { /* 1452 */
+    8,
+    /* SUB32rm */
+  },
+  { /* 1453 */
+    9,
+    /* SUB32rr */
+  },
+  { /* 1454 */
+    10,
+    /* SUB32rr_REV */
+  },
+  { /* 1455 */
+    13,
+    /* SUB64i32 */
+  },
+  { /* 1456 */
+    14,
+    /* SUB64mi32 */
+  },
+  { /* 1457 */
+    15,
+    /* SUB64mi8 */
+  },
+  { /* 1458 */
+    16,
+    /* SUB64mr */
+  },
+  { /* 1459 */
+    17,
+    /* SUB64ri32 */
+  },
+  { /* 1460 */
+    18,
+    /* SUB64ri8 */
+  },
+  { /* 1461 */
+    19,
+    /* SUB64rm */
+  },
+  { /* 1462 */
+    20,
+    /* SUB64rr */
+  },
+  { /* 1463 */
+    21,
+    /* SUB64rr_REV */
+  },
+  { /* 1464 */
+    1,
+    /* SUB8i8 */
+  },
+  { /* 1465 */
+    22,
+    /* SUB8mi */
+  },
+  { /* 1466 */
+    23,
+    /* SUB8mr */
+  },
+  { /* 1467 */
+    24,
+    /* SUB8ri */
+  },
+  { /* 1468 */
+    25,
+    /* SUB8rm */
+  },
+  { /* 1469 */
+    26,
+    /* SUB8rr */
+  },
+  { /* 1470 */
+    27,
+    /* SUB8rr_REV */
+  },
+  { /* 1471 */
+    0,
+    /* SWAPGS */
+  },
+  { /* 1472 */
+    0,
+    /* SYSCALL */
+  },
+  { /* 1473 */
+    0,
+    /* SYSENTER */
+  },
+  { /* 1474 */
+    0,
+    /* SYSEXIT */
+  },
+  { /* 1475 */
+    0,
+    /* SYSEXIT64 */
+  },
+  { /* 1476 */
+    0,
+    /* SYSRET */
+  },
+  { /* 1477 */
+    0,
+    /* SYSRET64 */
+  },
+  { /* 1478 */
+    46,
+    /* T1MSKC32rm */
+  },
+  { /* 1479 */
+    47,
+    /* T1MSKC32rr */
+  },
+  { /* 1480 */
+    48,
+    /* T1MSKC64rm */
+  },
+  { /* 1481 */
+    49,
+    /* T1MSKC64rr */
+  },
+  { /* 1482 */
+    0,
+    /*  */
+  },
+  { /* 1483 */
+    0,
+    /*  */
+  },
+  { /* 1484 */
+    0,
+    /*  */
+  },
+  { /* 1485 */
+    0,
+    /*  */
+  },
+  { /* 1486 */
+    0,
+    /*  */
+  },
+  { /* 1487 */
+    0,
+    /*  */
+  },
+  { /* 1488 */
+    0,
+    /*  */
+  },
+  { /* 1489 */
+    0,
+    /*  */
+  },
+  { /* 1490 */
+    0,
+    /*  */
+  },
+  { /* 1491 */
+    0,
+    /*  */
+  },
+  { /* 1492 */
+    0,
+    /*  */
+  },
+  { /* 1493 */
+    0,
+    /*  */
+  },
+  { /* 1494 */
+    2,
+    /* TEST16i16 */
+  },
+  { /* 1495 */
+    3,
+    /* TEST16mi */
+  },
+  { /* 1496 */
+    65,
+    /* TEST16ri */
+  },
+  { /* 1497 */
+    50,
+    /* TEST16rm */
+  },
+  { /* 1498 */
+    51,
+    /* TEST16rr */
+  },
+  { /* 1499 */
+    2,
+    /* TEST32i32 */
+  },
+  { /* 1500 */
+    3,
+    /* TEST32mi */
+  },
+  { /* 1501 */
+    65,
+    /* TEST32ri */
+  },
+  { /* 1502 */
+    50,
+    /* TEST32rm */
+  },
+  { /* 1503 */
+    51,
+    /* TEST32rr */
+  },
+  { /* 1504 */
+    13,
+    /* TEST64i32 */
+  },
+  { /* 1505 */
+    14,
+    /* TEST64mi32 */
+  },
+  { /* 1506 */
+    66,
+    /* TEST64ri32 */
+  },
+  { /* 1507 */
+    30,
+    /* TEST64rm */
+  },
+  { /* 1508 */
+    31,
+    /* TEST64rr */
+  },
+  { /* 1509 */
+    1,
+    /* TEST8i8 */
+  },
+  { /* 1510 */
+    22,
+    /* TEST8mi */
+  },
+  { /* 1511 */
+    67,
+    /* TEST8ri */
+  },
+  { /* 1512 */
+    0,
+    /*  */
+  },
+  { /* 1513 */
+    68,
+    /* TEST8rm */
+  },
+  { /* 1514 */
+    70,
+    /* TEST8rr */
+  },
+  { /* 1515 */
+    0,
+    /*  */
+  },
+  { /* 1516 */
+    0,
+    /*  */
+  },
+  { /* 1517 */
+    0,
+    /*  */
+  },
+  { /* 1518 */
+    0,
+    /*  */
+  },
+  { /* 1519 */
+    0,
+    /*  */
+  },
+  { /* 1520 */
+    0,
+    /*  */
+  },
+  { /* 1521 */
+    0,
+    /* TRAP */
+  },
+  { /* 1522 */
+    50,
+    /* TZCNT16rm */
+  },
+  { /* 1523 */
+    51,
+    /* TZCNT16rr */
+  },
+  { /* 1524 */
+    50,
+    /* TZCNT32rm */
+  },
+  { /* 1525 */
+    51,
+    /* TZCNT32rr */
+  },
+  { /* 1526 */
+    30,
+    /* TZCNT64rm */
+  },
+  { /* 1527 */
+    31,
+    /* TZCNT64rr */
+  },
+  { /* 1528 */
+    46,
+    /* TZMSK32rm */
+  },
+  { /* 1529 */
+    47,
+    /* TZMSK32rr */
+  },
+  { /* 1530 */
+    48,
+    /* TZMSK64rm */
+  },
+  { /* 1531 */
+    49,
+    /* TZMSK64rr */
+  },
+  { /* 1532 */
+    0,
+    /* UD2B */
+  },
+  { /* 1533 */
+    0,
+    /*  */
+  },
+  { /* 1534 */
+    0,
+    /*  */
+  },
+  { /* 1535 */
+    59,
+    /* VERRm */
+  },
+  { /* 1536 */
+    108,
+    /* VERRr */
+  },
+  { /* 1537 */
+    59,
+    /* VERWm */
+  },
+  { /* 1538 */
+    108,
+    /* VERWr */
+  },
+  { /* 1539 */
+    0,
+    /* VMCALL */
+  },
+  { /* 1540 */
+    59,
+    /* VMCLEARm */
+  },
+  { /* 1541 */
+    0,
+    /* VMFUNC */
+  },
+  { /* 1542 */
+    0,
+    /* VMLAUNCH */
+  },
+  { /* 1543 */
+    0,
+    /* VMLOAD32 */
+  },
+  { /* 1544 */
+    0,
+    /* VMLOAD64 */
+  },
+  { /* 1545 */
+    0,
+    /* VMMCALL */
+  },
+  { /* 1546 */
+    59,
+    /* VMPTRLDm */
+  },
+  { /* 1547 */
+    59,
+    /* VMPTRSTm */
+  },
+  { /* 1548 */
+    159,
+    /* VMREAD32rm */
+  },
+  { /* 1549 */
+    160,
+    /* VMREAD32rr */
+  },
+  { /* 1550 */
+    16,
+    /* VMREAD64rm */
+  },
+  { /* 1551 */
+    58,
+    /* VMREAD64rr */
+  },
+  { /* 1552 */
+    0,
+    /* VMRESUME */
+  },
+  { /* 1553 */
+    0,
+    /* VMRUN32 */
+  },
+  { /* 1554 */
+    0,
+    /* VMRUN64 */
+  },
+  { /* 1555 */
+    0,
+    /* VMSAVE32 */
+  },
+  { /* 1556 */
+    0,
+    /* VMSAVE64 */
+  },
+  { /* 1557 */
+    28,
+    /* VMWRITE32rm */
+  },
+  { /* 1558 */
+    29,
+    /* VMWRITE32rr */
+  },
+  { /* 1559 */
+    30,
+    /* VMWRITE64rm */
+  },
+  { /* 1560 */
+    31,
+    /* VMWRITE64rr */
+  },
+  { /* 1561 */
+    0,
+    /* VMXOFF */
+  },
+  { /* 1562 */
+    59,
+    /* VMXON */
+  },
+  { /* 1563 */
+    0,
+    /*  */
+  },
+  { /* 1564 */
+    0,
+    /* WBINVD */
+  },
+  { /* 1565 */
+    0,
+    /*  */
+  },
+  { /* 1566 */
+    0,
+    /*  */
+  },
+  { /* 1567 */
+    0,
+    /*  */
+  },
+  { /* 1568 */
+    149,
+    /* WRFSBASE */
+  },
+  { /* 1569 */
+    62,
+    /* WRFSBASE64 */
+  },
+  { /* 1570 */
+    149,
+    /* WRGSBASE */
+  },
+  { /* 1571 */
+    62,
+    /* WRGSBASE64 */
+  },
+  { /* 1572 */
+    0,
+    /* WRMSR */
+  },
+  { /* 1573 */
+    5,
+    /* XADD16rm */
+  },
+  { /* 1574 */
+    55,
+    /* XADD16rr */
+  },
+  { /* 1575 */
+    5,
+    /* XADD32rm */
+  },
+  { /* 1576 */
+    55,
+    /* XADD32rr */
+  },
+  { /* 1577 */
+    16,
+    /* XADD64rm */
+  },
+  { /* 1578 */
+    58,
+    /* XADD64rr */
+  },
+  { /* 1579 */
+    23,
+    /* XADD8rm */
+  },
+  { /* 1580 */
+    69,
+    /* XADD8rr */
+  },
+  { /* 1581 */
+    141,
+    /* XCHG16ar */
+  },
+  { /* 1582 */
+    8,
+    /* XCHG16rm */
+  },
+  { /* 1583 */
+    10,
+    /* XCHG16rr */
+  },
+  { /* 1584 */
+    141,
+    /* XCHG32ar */
+  },
+  { /* 1585 */
+    141,
+    /* XCHG32ar64 */
+  },
+  { /* 1586 */
+    8,
+    /* XCHG32rm */
+  },
+  { /* 1587 */
+    10,
+    /* XCHG32rr */
+  },
+  { /* 1588 */
+    142,
+    /* XCHG64ar */
+  },
+  { /* 1589 */
+    19,
+    /* XCHG64rm */
+  },
+  { /* 1590 */
+    21,
+    /* XCHG64rr */
+  },
+  { /* 1591 */
+    25,
+    /* XCHG8rm */
+  },
+  { /* 1592 */
+    27,
+    /* XCHG8rr */
+  },
+  { /* 1593 */
+    0,
+    /* XCRYPTCBC */
+  },
+  { /* 1594 */
+    0,
+    /* XCRYPTCFB */
+  },
+  { /* 1595 */
+    0,
+    /* XCRYPTCTR */
+  },
+  { /* 1596 */
+    0,
+    /* XCRYPTECB */
+  },
+  { /* 1597 */
+    0,
+    /* XCRYPTOFB */
+  },
+  { /* 1598 */
+    0,
+    /* XGETBV */
+  },
+  { /* 1599 */
+    0,
+    /* XLAT */
+  },
+  { /* 1600 */
+    2,
+    /* XOR16i16 */
+  },
+  { /* 1601 */
+    3,
+    /* XOR16mi */
+  },
+  { /* 1602 */
+    4,
+    /* XOR16mi8 */
+  },
+  { /* 1603 */
+    5,
+    /* XOR16mr */
+  },
+  { /* 1604 */
+    6,
+    /* XOR16ri */
+  },
+  { /* 1605 */
+    7,
+    /* XOR16ri8 */
+  },
+  { /* 1606 */
+    8,
+    /* XOR16rm */
+  },
+  { /* 1607 */
+    9,
+    /* XOR16rr */
+  },
+  { /* 1608 */
+    10,
+    /* XOR16rr_REV */
+  },
+  { /* 1609 */
+    2,
+    /* XOR32i32 */
+  },
+  { /* 1610 */
+    3,
+    /* XOR32mi */
+  },
+  { /* 1611 */
+    11,
+    /* XOR32mi8 */
+  },
+  { /* 1612 */
+    5,
+    /* XOR32mr */
+  },
+  { /* 1613 */
+    6,
+    /* XOR32ri */
+  },
+  { /* 1614 */
+    12,
+    /* XOR32ri8 */
+  },
+  { /* 1615 */
+    8,
+    /* XOR32rm */
+  },
+  { /* 1616 */
+    9,
+    /* XOR32rr */
+  },
+  { /* 1617 */
+    10,
+    /* XOR32rr_REV */
+  },
+  { /* 1618 */
+    13,
+    /* XOR64i32 */
+  },
+  { /* 1619 */
+    14,
+    /* XOR64mi32 */
+  },
+  { /* 1620 */
+    15,
+    /* XOR64mi8 */
+  },
+  { /* 1621 */
+    16,
+    /* XOR64mr */
+  },
+  { /* 1622 */
+    17,
+    /* XOR64ri32 */
+  },
+  { /* 1623 */
+    18,
+    /* XOR64ri8 */
+  },
+  { /* 1624 */
+    19,
+    /* XOR64rm */
+  },
+  { /* 1625 */
+    20,
+    /* XOR64rr */
+  },
+  { /* 1626 */
+    21,
+    /* XOR64rr_REV */
+  },
+  { /* 1627 */
+    1,
+    /* XOR8i8 */
+  },
+  { /* 1628 */
+    22,
+    /* XOR8mi */
+  },
+  { /* 1629 */
+    23,
+    /* XOR8mr */
+  },
+  { /* 1630 */
+    24,
+    /* XOR8ri */
+  },
+  { /* 1631 */
+    25,
+    /* XOR8rm */
+  },
+  { /* 1632 */
+    26,
+    /* XOR8rr */
+  },
+  { /* 1633 */
+    27,
+    /* XOR8rr_REV */
+  },
+  { /* 1634 */
+    161,
+    /* XRSTOR */
+  },
+  { /* 1635 */
+    161,
+    /* XRSTOR64 */
+  },
+  { /* 1636 */
+    161,
+    /* XSAVE */
+  },
+  { /* 1637 */
+    161,
+    /* XSAVE64 */
+  },
+  { /* 1638 */
+    161,
+    /* XSAVEOPT */
+  },
+  { /* 1639 */
+    161,
+    /* XSAVEOPT64 */
+  },
+  { /* 1640 */
+    0,
+    /* XSETBV */
+  },
+  { /* 1641 */
+    0,
+    /* XSHA1 */
+  },
+  { /* 1642 */
+    0,
+    /* XSHA256 */
+  },
+  { /* 1643 */
+    0,
+    /* XSTORE */
+  }
+};
+
+static const uint8_t x86DisassemblerContexts[16384] = {
+  IC, /* 0 */
+  IC_64BIT, /* 1 */
+  IC_XS, /* 2 */
+  IC_64BIT_XS, /* 3 */
+  IC_XD, /* 4 */
+  IC_64BIT_XD, /* 5 */
+  IC_XS, /* 6 */
+  IC_64BIT_XS, /* 7 */
+  IC, /* 8 */
+  IC_64BIT_REXW, /* 9 */
+  IC_XS, /* 10 */
+  IC_64BIT_REXW_XS, /* 11 */
+  IC_XD, /* 12 */
+  IC_64BIT_REXW_XD, /* 13 */
+  IC_XS, /* 14 */
+  IC_64BIT_REXW_XS, /* 15 */
+  IC_OPSIZE, /* 16 */
+  IC_64BIT_OPSIZE, /* 17 */
+  IC_XS_OPSIZE, /* 18 */
+  IC_64BIT_XS_OPSIZE, /* 19 */
+  IC_XD_OPSIZE, /* 20 */
+  IC_64BIT_XD_OPSIZE, /* 21 */
+  IC_XS_OPSIZE, /* 22 */
+  IC_64BIT_XD_OPSIZE, /* 23 */
+  IC_OPSIZE, /* 24 */
+  IC_64BIT_REXW_OPSIZE, /* 25 */
+  IC_XS_OPSIZE, /* 26 */
+  IC_64BIT_REXW_XS, /* 27 */
+  IC_XD_OPSIZE, /* 28 */
+  IC_64BIT_REXW_XD, /* 29 */
+  IC_XS_OPSIZE, /* 30 */
+  IC_64BIT_REXW_XS, /* 31 */
+  IC_ADSIZE, /* 32 */
+  IC_64BIT_ADSIZE, /* 33 */
+  IC_XS, /* 34 */
+  IC_64BIT_XS, /* 35 */
+  IC_XD, /* 36 */
+  IC_64BIT_XD, /* 37 */
+  IC_XS, /* 38 */
+  IC_64BIT_XS, /* 39 */
+  IC_ADSIZE, /* 40 */
+  IC_64BIT_ADSIZE, /* 41 */
+  IC_XS, /* 42 */
+  IC_64BIT_REXW_XS, /* 43 */
+  IC_XD, /* 44 */
+  IC_64BIT_REXW_XD, /* 45 */
+  IC_XS, /* 46 */
+  IC_64BIT_REXW_XS, /* 47 */
+  IC_OPSIZE, /* 48 */
+  IC_64BIT_OPSIZE, /* 49 */
+  IC_XS_OPSIZE, /* 50 */
+  IC_64BIT_XS_OPSIZE, /* 51 */
+  IC_XD_OPSIZE, /* 52 */
+  IC_64BIT_XD_OPSIZE, /* 53 */
+  IC_XS_OPSIZE, /* 54 */
+  IC_64BIT_XD_OPSIZE, /* 55 */
+  IC_OPSIZE, /* 56 */
+  IC_64BIT_REXW_OPSIZE, /* 57 */
+  IC_XS_OPSIZE, /* 58 */
+  IC_64BIT_REXW_XS, /* 59 */
+  IC_XD_OPSIZE, /* 60 */
+  IC_64BIT_REXW_XD, /* 61 */
+  IC_XS_OPSIZE, /* 62 */
+  IC_64BIT_REXW_XS, /* 63 */
+  IC_VEX, /* 64 */
+  IC_VEX, /* 65 */
+  IC_VEX_XS, /* 66 */
+  IC_VEX_XS, /* 67 */
+  IC_VEX_XD, /* 68 */
+  IC_VEX_XD, /* 69 */
+  IC_VEX_XD, /* 70 */
+  IC_VEX_XD, /* 71 */
+  IC_VEX_W, /* 72 */
+  IC_VEX_W, /* 73 */
+  IC_VEX_W_XS, /* 74 */
+  IC_VEX_W_XS, /* 75 */
+  IC_VEX_W_XD, /* 76 */
+  IC_VEX_W_XD, /* 77 */
+  IC_VEX_W_XD, /* 78 */
+  IC_VEX_W_XD, /* 79 */
+  IC_VEX_OPSIZE, /* 80 */
+  IC_VEX_OPSIZE, /* 81 */
+  IC_VEX_OPSIZE, /* 82 */
+  IC_VEX_OPSIZE, /* 83 */
+  IC_VEX_OPSIZE, /* 84 */
+  IC_VEX_OPSIZE, /* 85 */
+  IC_VEX_OPSIZE, /* 86 */
+  IC_VEX_OPSIZE, /* 87 */
+  IC_VEX_W_OPSIZE, /* 88 */
+  IC_VEX_W_OPSIZE, /* 89 */
+  IC_VEX_W_OPSIZE, /* 90 */
+  IC_VEX_W_OPSIZE, /* 91 */
+  IC_VEX_W_OPSIZE, /* 92 */
+  IC_VEX_W_OPSIZE, /* 93 */
+  IC_VEX_W_OPSIZE, /* 94 */
+  IC_VEX_W_OPSIZE, /* 95 */
+  IC_VEX, /* 96 */
+  IC_VEX, /* 97 */
+  IC_VEX_XS, /* 98 */
+  IC_VEX_XS, /* 99 */
+  IC_VEX_XD, /* 100 */
+  IC_VEX_XD, /* 101 */
+  IC_VEX_XD, /* 102 */
+  IC_VEX_XD, /* 103 */
+  IC_VEX_W, /* 104 */
+  IC_VEX_W, /* 105 */
+  IC_VEX_W_XS, /* 106 */
+  IC_VEX_W_XS, /* 107 */
+  IC_VEX_W_XD, /* 108 */
+  IC_VEX_W_XD, /* 109 */
+  IC_VEX_W_XD, /* 110 */
+  IC_VEX_W_XD, /* 111 */
+  IC_VEX_OPSIZE, /* 112 */
+  IC_VEX_OPSIZE, /* 113 */
+  IC_VEX_OPSIZE, /* 114 */
+  IC_VEX_OPSIZE, /* 115 */
+  IC_VEX_OPSIZE, /* 116 */
+  IC_VEX_OPSIZE, /* 117 */
+  IC_VEX_OPSIZE, /* 118 */
+  IC_VEX_OPSIZE, /* 119 */
+  IC_VEX_W_OPSIZE, /* 120 */
+  IC_VEX_W_OPSIZE, /* 121 */
+  IC_VEX_W_OPSIZE, /* 122 */
+  IC_VEX_W_OPSIZE, /* 123 */
+  IC_VEX_W_OPSIZE, /* 124 */
+  IC_VEX_W_OPSIZE, /* 125 */
+  IC_VEX_W_OPSIZE, /* 126 */
+  IC_VEX_W_OPSIZE, /* 127 */
+  IC_VEX_L, /* 128 */
+  IC_VEX_L, /* 129 */
+  IC_VEX_L_XS, /* 130 */
+  IC_VEX_L_XS, /* 131 */
+  IC_VEX_L_XD, /* 132 */
+  IC_VEX_L_XD, /* 133 */
+  IC_VEX_L_XD, /* 134 */
+  IC_VEX_L_XD, /* 135 */
+  IC_VEX_L_W, /* 136 */
+  IC_VEX_L_W, /* 137 */
+  IC_VEX_L_W_XS, /* 138 */
+  IC_VEX_L_W_XS, /* 139 */
+  IC_VEX_L_W_XD, /* 140 */
+  IC_VEX_L_W_XD, /* 141 */
+  IC_VEX_L_W_XD, /* 142 */
+  IC_VEX_L_W_XD, /* 143 */
+  IC_VEX_L_OPSIZE, /* 144 */
+  IC_VEX_L_OPSIZE, /* 145 */
+  IC_VEX_L_OPSIZE, /* 146 */
+  IC_VEX_L_OPSIZE, /* 147 */
+  IC_VEX_L_OPSIZE, /* 148 */
+  IC_VEX_L_OPSIZE, /* 149 */
+  IC_VEX_L_OPSIZE, /* 150 */
+  IC_VEX_L_OPSIZE, /* 151 */
+  IC_VEX_L_W_OPSIZE, /* 152 */
+  IC_VEX_L_W_OPSIZE, /* 153 */
+  IC_VEX_L_W_OPSIZE, /* 154 */
+  IC_VEX_L_W_OPSIZE, /* 155 */
+  IC_VEX_L_W_OPSIZE, /* 156 */
+  IC_VEX_L_W_OPSIZE, /* 157 */
+  IC_VEX_L_W_OPSIZE, /* 158 */
+  IC_VEX_L_W_OPSIZE, /* 159 */
+  IC_VEX_L, /* 160 */
+  IC_VEX_L, /* 161 */
+  IC_VEX_L_XS, /* 162 */
+  IC_VEX_L_XS, /* 163 */
+  IC_VEX_L_XD, /* 164 */
+  IC_VEX_L_XD, /* 165 */
+  IC_VEX_L_XD, /* 166 */
+  IC_VEX_L_XD, /* 167 */
+  IC_VEX_L_W, /* 168 */
+  IC_VEX_L_W, /* 169 */
+  IC_VEX_L_W_XS, /* 170 */
+  IC_VEX_L_W_XS, /* 171 */
+  IC_VEX_L_W_XD, /* 172 */
+  IC_VEX_L_W_XD, /* 173 */
+  IC_VEX_L_W_XD, /* 174 */
+  IC_VEX_L_W_XD, /* 175 */
+  IC_VEX_L_OPSIZE, /* 176 */
+  IC_VEX_L_OPSIZE, /* 177 */
+  IC_VEX_L_OPSIZE, /* 178 */
+  IC_VEX_L_OPSIZE, /* 179 */
+  IC_VEX_L_OPSIZE, /* 180 */
+  IC_VEX_L_OPSIZE, /* 181 */
+  IC_VEX_L_OPSIZE, /* 182 */
+  IC_VEX_L_OPSIZE, /* 183 */
+  IC_VEX_L_W_OPSIZE, /* 184 */
+  IC_VEX_L_W_OPSIZE, /* 185 */
+  IC_VEX_L_W_OPSIZE, /* 186 */
+  IC_VEX_L_W_OPSIZE, /* 187 */
+  IC_VEX_L_W_OPSIZE, /* 188 */
+  IC_VEX_L_W_OPSIZE, /* 189 */
+  IC_VEX_L_W_OPSIZE, /* 190 */
+  IC_VEX_L_W_OPSIZE, /* 191 */
+  IC_VEX_L, /* 192 */
+  IC_VEX_L, /* 193 */
+  IC_VEX_L_XS, /* 194 */
+  IC_VEX_L_XS, /* 195 */
+  IC_VEX_L_XD, /* 196 */
+  IC_VEX_L_XD, /* 197 */
+  IC_VEX_L_XD, /* 198 */
+  IC_VEX_L_XD, /* 199 */
+  IC_VEX_L_W, /* 200 */
+  IC_VEX_L_W, /* 201 */
+  IC_VEX_L_W_XS, /* 202 */
+  IC_VEX_L_W_XS, /* 203 */
+  IC_VEX_L_W_XD, /* 204 */
+  IC_VEX_L_W_XD, /* 205 */
+  IC_VEX_L_W_XD, /* 206 */
+  IC_VEX_L_W_XD, /* 207 */
+  IC_VEX_L_OPSIZE, /* 208 */
+  IC_VEX_L_OPSIZE, /* 209 */
+  IC_VEX_L_OPSIZE, /* 210 */
+  IC_VEX_L_OPSIZE, /* 211 */
+  IC_VEX_L_OPSIZE, /* 212 */
+  IC_VEX_L_OPSIZE, /* 213 */
+  IC_VEX_L_OPSIZE, /* 214 */
+  IC_VEX_L_OPSIZE, /* 215 */
+  IC_VEX_L_W_OPSIZE, /* 216 */
+  IC_VEX_L_W_OPSIZE, /* 217 */
+  IC_VEX_L_W_OPSIZE, /* 218 */
+  IC_VEX_L_W_OPSIZE, /* 219 */
+  IC_VEX_L_W_OPSIZE, /* 220 */
+  IC_VEX_L_W_OPSIZE, /* 221 */
+  IC_VEX_L_W_OPSIZE, /* 222 */
+  IC_VEX_L_W_OPSIZE, /* 223 */
+  IC_VEX_L, /* 224 */
+  IC_VEX_L, /* 225 */
+  IC_VEX_L_XS, /* 226 */
+  IC_VEX_L_XS, /* 227 */
+  IC_VEX_L_XD, /* 228 */
+  IC_VEX_L_XD, /* 229 */
+  IC_VEX_L_XD, /* 230 */
+  IC_VEX_L_XD, /* 231 */
+  IC_VEX_L_W, /* 232 */
+  IC_VEX_L_W, /* 233 */
+  IC_VEX_L_W_XS, /* 234 */
+  IC_VEX_L_W_XS, /* 235 */
+  IC_VEX_L_W_XD, /* 236 */
+  IC_VEX_L_W_XD, /* 237 */
+  IC_VEX_L_W_XD, /* 238 */
+  IC_VEX_L_W_XD, /* 239 */
+  IC_VEX_L_OPSIZE, /* 240 */
+  IC_VEX_L_OPSIZE, /* 241 */
+  IC_VEX_L_OPSIZE, /* 242 */
+  IC_VEX_L_OPSIZE, /* 243 */
+  IC_VEX_L_OPSIZE, /* 244 */
+  IC_VEX_L_OPSIZE, /* 245 */
+  IC_VEX_L_OPSIZE, /* 246 */
+  IC_VEX_L_OPSIZE, /* 247 */
+  IC_VEX_L_W_OPSIZE, /* 248 */
+  IC_VEX_L_W_OPSIZE, /* 249 */
+  IC_VEX_L_W_OPSIZE, /* 250 */
+  IC_VEX_L_W_OPSIZE, /* 251 */
+  IC_VEX_L_W_OPSIZE, /* 252 */
+  IC_VEX_L_W_OPSIZE, /* 253 */
+  IC_VEX_L_W_OPSIZE, /* 254 */
+  IC_VEX_L_W_OPSIZE, /* 255 */
+  IC_EVEX, /* 256 */
+  IC_EVEX, /* 257 */
+  IC_EVEX_XS, /* 258 */
+  IC_EVEX_XS, /* 259 */
+  IC_EVEX_XD, /* 260 */
+  IC_EVEX_XD, /* 261 */
+  IC_EVEX_XD, /* 262 */
+  IC_EVEX_XD, /* 263 */
+  IC_EVEX_W, /* 264 */
+  IC_EVEX_W, /* 265 */
+  IC_EVEX_W_XS, /* 266 */
+  IC_EVEX_W_XS, /* 267 */
+  IC_EVEX_W_XD, /* 268 */
+  IC_EVEX_W_XD, /* 269 */
+  IC_EVEX_W_XD, /* 270 */
+  IC_EVEX_W_XD, /* 271 */
+  IC_EVEX_OPSIZE, /* 272 */
+  IC_EVEX_OPSIZE, /* 273 */
+  IC_EVEX_OPSIZE, /* 274 */
+  IC_EVEX_OPSIZE, /* 275 */
+  IC_EVEX_OPSIZE, /* 276 */
+  IC_EVEX_OPSIZE, /* 277 */
+  IC_EVEX_OPSIZE, /* 278 */
+  IC_EVEX_OPSIZE, /* 279 */
+  IC_EVEX_W_OPSIZE, /* 280 */
+  IC_EVEX_W_OPSIZE, /* 281 */
+  IC_EVEX_W_OPSIZE, /* 282 */
+  IC_EVEX_W_OPSIZE, /* 283 */
+  IC_EVEX_W_OPSIZE, /* 284 */
+  IC_EVEX_W_OPSIZE, /* 285 */
+  IC_EVEX_W_OPSIZE, /* 286 */
+  IC_EVEX_W_OPSIZE, /* 287 */
+  IC_EVEX, /* 288 */
+  IC_EVEX, /* 289 */
+  IC_EVEX_XS, /* 290 */
+  IC_EVEX_XS, /* 291 */
+  IC_EVEX_XD, /* 292 */
+  IC_EVEX_XD, /* 293 */
+  IC_EVEX_XD, /* 294 */
+  IC_EVEX_XD, /* 295 */
+  IC_EVEX_W, /* 296 */
+  IC_EVEX_W, /* 297 */
+  IC_EVEX_W_XS, /* 298 */
+  IC_EVEX_W_XS, /* 299 */
+  IC_EVEX_W_XD, /* 300 */
+  IC_EVEX_W_XD, /* 301 */
+  IC_EVEX_W_XD, /* 302 */
+  IC_EVEX_W_XD, /* 303 */
+  IC_EVEX_OPSIZE, /* 304 */
+  IC_EVEX_OPSIZE, /* 305 */
+  IC_EVEX_OPSIZE, /* 306 */
+  IC_EVEX_OPSIZE, /* 307 */
+  IC_EVEX_OPSIZE, /* 308 */
+  IC_EVEX_OPSIZE, /* 309 */
+  IC_EVEX_OPSIZE, /* 310 */
+  IC_EVEX_OPSIZE, /* 311 */
+  IC_EVEX_W_OPSIZE, /* 312 */
+  IC_EVEX_W_OPSIZE, /* 313 */
+  IC_EVEX_W_OPSIZE, /* 314 */
+  IC_EVEX_W_OPSIZE, /* 315 */
+  IC_EVEX_W_OPSIZE, /* 316 */
+  IC_EVEX_W_OPSIZE, /* 317 */
+  IC_EVEX_W_OPSIZE, /* 318 */
+  IC_EVEX_W_OPSIZE, /* 319 */
+  IC_EVEX, /* 320 */
+  IC_EVEX, /* 321 */
+  IC_EVEX_XS, /* 322 */
+  IC_EVEX_XS, /* 323 */
+  IC_EVEX_XD, /* 324 */
+  IC_EVEX_XD, /* 325 */
+  IC_EVEX_XD, /* 326 */
+  IC_EVEX_XD, /* 327 */
+  IC_EVEX_W, /* 328 */
+  IC_EVEX_W, /* 329 */
+  IC_EVEX_W_XS, /* 330 */
+  IC_EVEX_W_XS, /* 331 */
+  IC_EVEX_W_XD, /* 332 */
+  IC_EVEX_W_XD, /* 333 */
+  IC_EVEX_W_XD, /* 334 */
+  IC_EVEX_W_XD, /* 335 */
+  IC_EVEX_OPSIZE, /* 336 */
+  IC_EVEX_OPSIZE, /* 337 */
+  IC_EVEX_OPSIZE, /* 338 */
+  IC_EVEX_OPSIZE, /* 339 */
+  IC_EVEX_OPSIZE, /* 340 */
+  IC_EVEX_OPSIZE, /* 341 */
+  IC_EVEX_OPSIZE, /* 342 */
+  IC_EVEX_OPSIZE, /* 343 */
+  IC_EVEX_W_OPSIZE, /* 344 */
+  IC_EVEX_W_OPSIZE, /* 345 */
+  IC_EVEX_W_OPSIZE, /* 346 */
+  IC_EVEX_W_OPSIZE, /* 347 */
+  IC_EVEX_W_OPSIZE, /* 348 */
+  IC_EVEX_W_OPSIZE, /* 349 */
+  IC_EVEX_W_OPSIZE, /* 350 */
+  IC_EVEX_W_OPSIZE, /* 351 */
+  IC_EVEX, /* 352 */
+  IC_EVEX, /* 353 */
+  IC_EVEX_XS, /* 354 */
+  IC_EVEX_XS, /* 355 */
+  IC_EVEX_XD, /* 356 */
+  IC_EVEX_XD, /* 357 */
+  IC_EVEX_XD, /* 358 */
+  IC_EVEX_XD, /* 359 */
+  IC_EVEX_W, /* 360 */
+  IC_EVEX_W, /* 361 */
+  IC_EVEX_W_XS, /* 362 */
+  IC_EVEX_W_XS, /* 363 */
+  IC_EVEX_W_XD, /* 364 */
+  IC_EVEX_W_XD, /* 365 */
+  IC_EVEX_W_XD, /* 366 */
+  IC_EVEX_W_XD, /* 367 */
+  IC_EVEX_OPSIZE, /* 368 */
+  IC_EVEX_OPSIZE, /* 369 */
+  IC_EVEX_OPSIZE, /* 370 */
+  IC_EVEX_OPSIZE, /* 371 */
+  IC_EVEX_OPSIZE, /* 372 */
+  IC_EVEX_OPSIZE, /* 373 */
+  IC_EVEX_OPSIZE, /* 374 */
+  IC_EVEX_OPSIZE, /* 375 */
+  IC_EVEX_W_OPSIZE, /* 376 */
+  IC_EVEX_W_OPSIZE, /* 377 */
+  IC_EVEX_W_OPSIZE, /* 378 */
+  IC_EVEX_W_OPSIZE, /* 379 */
+  IC_EVEX_W_OPSIZE, /* 380 */
+  IC_EVEX_W_OPSIZE, /* 381 */
+  IC_EVEX_W_OPSIZE, /* 382 */
+  IC_EVEX_W_OPSIZE, /* 383 */
+  IC_EVEX, /* 384 */
+  IC_EVEX, /* 385 */
+  IC_EVEX_XS, /* 386 */
+  IC_EVEX_XS, /* 387 */
+  IC_EVEX_XD, /* 388 */
+  IC_EVEX_XD, /* 389 */
+  IC_EVEX_XD, /* 390 */
+  IC_EVEX_XD, /* 391 */
+  IC_EVEX_W, /* 392 */
+  IC_EVEX_W, /* 393 */
+  IC_EVEX_W_XS, /* 394 */
+  IC_EVEX_W_XS, /* 395 */
+  IC_EVEX_W_XD, /* 396 */
+  IC_EVEX_W_XD, /* 397 */
+  IC_EVEX_W_XD, /* 398 */
+  IC_EVEX_W_XD, /* 399 */
+  IC_EVEX_OPSIZE, /* 400 */
+  IC_EVEX_OPSIZE, /* 401 */
+  IC_EVEX_OPSIZE, /* 402 */
+  IC_EVEX_OPSIZE, /* 403 */
+  IC_EVEX_OPSIZE, /* 404 */
+  IC_EVEX_OPSIZE, /* 405 */
+  IC_EVEX_OPSIZE, /* 406 */
+  IC_EVEX_OPSIZE, /* 407 */
+  IC_EVEX_W_OPSIZE, /* 408 */
+  IC_EVEX_W_OPSIZE, /* 409 */
+  IC_EVEX_W_OPSIZE, /* 410 */
+  IC_EVEX_W_OPSIZE, /* 411 */
+  IC_EVEX_W_OPSIZE, /* 412 */
+  IC_EVEX_W_OPSIZE, /* 413 */
+  IC_EVEX_W_OPSIZE, /* 414 */
+  IC_EVEX_W_OPSIZE, /* 415 */
+  IC_EVEX, /* 416 */
+  IC_EVEX, /* 417 */
+  IC_EVEX_XS, /* 418 */
+  IC_EVEX_XS, /* 419 */
+  IC_EVEX_XD, /* 420 */
+  IC_EVEX_XD, /* 421 */
+  IC_EVEX_XD, /* 422 */
+  IC_EVEX_XD, /* 423 */
+  IC_EVEX_W, /* 424 */
+  IC_EVEX_W, /* 425 */
+  IC_EVEX_W_XS, /* 426 */
+  IC_EVEX_W_XS, /* 427 */
+  IC_EVEX_W_XD, /* 428 */
+  IC_EVEX_W_XD, /* 429 */
+  IC_EVEX_W_XD, /* 430 */
+  IC_EVEX_W_XD, /* 431 */
+  IC_EVEX_OPSIZE, /* 432 */
+  IC_EVEX_OPSIZE, /* 433 */
+  IC_EVEX_OPSIZE, /* 434 */
+  IC_EVEX_OPSIZE, /* 435 */
+  IC_EVEX_OPSIZE, /* 436 */
+  IC_EVEX_OPSIZE, /* 437 */
+  IC_EVEX_OPSIZE, /* 438 */
+  IC_EVEX_OPSIZE, /* 439 */
+  IC_EVEX_W_OPSIZE, /* 440 */
+  IC_EVEX_W_OPSIZE, /* 441 */
+  IC_EVEX_W_OPSIZE, /* 442 */
+  IC_EVEX_W_OPSIZE, /* 443 */
+  IC_EVEX_W_OPSIZE, /* 444 */
+  IC_EVEX_W_OPSIZE, /* 445 */
+  IC_EVEX_W_OPSIZE, /* 446 */
+  IC_EVEX_W_OPSIZE, /* 447 */
+  IC_EVEX, /* 448 */
+  IC_EVEX, /* 449 */
+  IC_EVEX_XS, /* 450 */
+  IC_EVEX_XS, /* 451 */
+  IC_EVEX_XD, /* 452 */
+  IC_EVEX_XD, /* 453 */
+  IC_EVEX_XD, /* 454 */
+  IC_EVEX_XD, /* 455 */
+  IC_EVEX_W, /* 456 */
+  IC_EVEX_W, /* 457 */
+  IC_EVEX_W_XS, /* 458 */
+  IC_EVEX_W_XS, /* 459 */
+  IC_EVEX_W_XD, /* 460 */
+  IC_EVEX_W_XD, /* 461 */
+  IC_EVEX_W_XD, /* 462 */
+  IC_EVEX_W_XD, /* 463 */
+  IC_EVEX_OPSIZE, /* 464 */
+  IC_EVEX_OPSIZE, /* 465 */
+  IC_EVEX_OPSIZE, /* 466 */
+  IC_EVEX_OPSIZE, /* 467 */
+  IC_EVEX_OPSIZE, /* 468 */
+  IC_EVEX_OPSIZE, /* 469 */
+  IC_EVEX_OPSIZE, /* 470 */
+  IC_EVEX_OPSIZE, /* 471 */
+  IC_EVEX_W_OPSIZE, /* 472 */
+  IC_EVEX_W_OPSIZE, /* 473 */
+  IC_EVEX_W_OPSIZE, /* 474 */
+  IC_EVEX_W_OPSIZE, /* 475 */
+  IC_EVEX_W_OPSIZE, /* 476 */
+  IC_EVEX_W_OPSIZE, /* 477 */
+  IC_EVEX_W_OPSIZE, /* 478 */
+  IC_EVEX_W_OPSIZE, /* 479 */
+  IC_EVEX, /* 480 */
+  IC_EVEX, /* 481 */
+  IC_EVEX_XS, /* 482 */
+  IC_EVEX_XS, /* 483 */
+  IC_EVEX_XD, /* 484 */
+  IC_EVEX_XD, /* 485 */
+  IC_EVEX_XD, /* 486 */
+  IC_EVEX_XD, /* 487 */
+  IC_EVEX_W, /* 488 */
+  IC_EVEX_W, /* 489 */
+  IC_EVEX_W_XS, /* 490 */
+  IC_EVEX_W_XS, /* 491 */
+  IC_EVEX_W_XD, /* 492 */
+  IC_EVEX_W_XD, /* 493 */
+  IC_EVEX_W_XD, /* 494 */
+  IC_EVEX_W_XD, /* 495 */
+  IC_EVEX_OPSIZE, /* 496 */
+  IC_EVEX_OPSIZE, /* 497 */
+  IC_EVEX_OPSIZE, /* 498 */
+  IC_EVEX_OPSIZE, /* 499 */
+  IC_EVEX_OPSIZE, /* 500 */
+  IC_EVEX_OPSIZE, /* 501 */
+  IC_EVEX_OPSIZE, /* 502 */
+  IC_EVEX_OPSIZE, /* 503 */
+  IC_EVEX_W_OPSIZE, /* 504 */
+  IC_EVEX_W_OPSIZE, /* 505 */
+  IC_EVEX_W_OPSIZE, /* 506 */
+  IC_EVEX_W_OPSIZE, /* 507 */
+  IC_EVEX_W_OPSIZE, /* 508 */
+  IC_EVEX_W_OPSIZE, /* 509 */
+  IC_EVEX_W_OPSIZE, /* 510 */
+  IC_EVEX_W_OPSIZE, /* 511 */
+  IC, /* 512 */
+  IC_64BIT, /* 513 */
+  IC_XS, /* 514 */
+  IC_64BIT_XS, /* 515 */
+  IC_XD, /* 516 */
+  IC_64BIT_XD, /* 517 */
+  IC_XS, /* 518 */
+  IC_64BIT_XS, /* 519 */
+  IC, /* 520 */
+  IC_64BIT_REXW, /* 521 */
+  IC_XS, /* 522 */
+  IC_64BIT_REXW_XS, /* 523 */
+  IC_XD, /* 524 */
+  IC_64BIT_REXW_XD, /* 525 */
+  IC_XS, /* 526 */
+  IC_64BIT_REXW_XS, /* 527 */
+  IC_OPSIZE, /* 528 */
+  IC_64BIT_OPSIZE, /* 529 */
+  IC_XS_OPSIZE, /* 530 */
+  IC_64BIT_XS_OPSIZE, /* 531 */
+  IC_XD_OPSIZE, /* 532 */
+  IC_64BIT_XD_OPSIZE, /* 533 */
+  IC_XS_OPSIZE, /* 534 */
+  IC_64BIT_XD_OPSIZE, /* 535 */
+  IC_OPSIZE, /* 536 */
+  IC_64BIT_REXW_OPSIZE, /* 537 */
+  IC_XS_OPSIZE, /* 538 */
+  IC_64BIT_REXW_XS, /* 539 */
+  IC_XD_OPSIZE, /* 540 */
+  IC_64BIT_REXW_XD, /* 541 */
+  IC_XS_OPSIZE, /* 542 */
+  IC_64BIT_REXW_XS, /* 543 */
+  IC_ADSIZE, /* 544 */
+  IC_64BIT_ADSIZE, /* 545 */
+  IC_XS, /* 546 */
+  IC_64BIT_XS, /* 547 */
+  IC_XD, /* 548 */
+  IC_64BIT_XD, /* 549 */
+  IC_XS, /* 550 */
+  IC_64BIT_XS, /* 551 */
+  IC_ADSIZE, /* 552 */
+  IC_64BIT_ADSIZE, /* 553 */
+  IC_XS, /* 554 */
+  IC_64BIT_REXW_XS, /* 555 */
+  IC_XD, /* 556 */
+  IC_64BIT_REXW_XD, /* 557 */
+  IC_XS, /* 558 */
+  IC_64BIT_REXW_XS, /* 559 */
+  IC_OPSIZE, /* 560 */
+  IC_64BIT_OPSIZE, /* 561 */
+  IC_XS_OPSIZE, /* 562 */
+  IC_64BIT_XS_OPSIZE, /* 563 */
+  IC_XD_OPSIZE, /* 564 */
+  IC_64BIT_XD_OPSIZE, /* 565 */
+  IC_XS_OPSIZE, /* 566 */
+  IC_64BIT_XD_OPSIZE, /* 567 */
+  IC_OPSIZE, /* 568 */
+  IC_64BIT_REXW_OPSIZE, /* 569 */
+  IC_XS_OPSIZE, /* 570 */
+  IC_64BIT_REXW_XS, /* 571 */
+  IC_XD_OPSIZE, /* 572 */
+  IC_64BIT_REXW_XD, /* 573 */
+  IC_XS_OPSIZE, /* 574 */
+  IC_64BIT_REXW_XS, /* 575 */
+  IC_VEX, /* 576 */
+  IC_VEX, /* 577 */
+  IC_VEX_XS, /* 578 */
+  IC_VEX_XS, /* 579 */
+  IC_VEX_XD, /* 580 */
+  IC_VEX_XD, /* 581 */
+  IC_VEX_XD, /* 582 */
+  IC_VEX_XD, /* 583 */
+  IC_VEX_W, /* 584 */
+  IC_VEX_W, /* 585 */
+  IC_VEX_W_XS, /* 586 */
+  IC_VEX_W_XS, /* 587 */
+  IC_VEX_W_XD, /* 588 */
+  IC_VEX_W_XD, /* 589 */
+  IC_VEX_W_XD, /* 590 */
+  IC_VEX_W_XD, /* 591 */
+  IC_VEX_OPSIZE, /* 592 */
+  IC_VEX_OPSIZE, /* 593 */
+  IC_VEX_OPSIZE, /* 594 */
+  IC_VEX_OPSIZE, /* 595 */
+  IC_VEX_OPSIZE, /* 596 */
+  IC_VEX_OPSIZE, /* 597 */
+  IC_VEX_OPSIZE, /* 598 */
+  IC_VEX_OPSIZE, /* 599 */
+  IC_VEX_W_OPSIZE, /* 600 */
+  IC_VEX_W_OPSIZE, /* 601 */
+  IC_VEX_W_OPSIZE, /* 602 */
+  IC_VEX_W_OPSIZE, /* 603 */
+  IC_VEX_W_OPSIZE, /* 604 */
+  IC_VEX_W_OPSIZE, /* 605 */
+  IC_VEX_W_OPSIZE, /* 606 */
+  IC_VEX_W_OPSIZE, /* 607 */
+  IC_VEX, /* 608 */
+  IC_VEX, /* 609 */
+  IC_VEX_XS, /* 610 */
+  IC_VEX_XS, /* 611 */
+  IC_VEX_XD, /* 612 */
+  IC_VEX_XD, /* 613 */
+  IC_VEX_XD, /* 614 */
+  IC_VEX_XD, /* 615 */
+  IC_VEX_W, /* 616 */
+  IC_VEX_W, /* 617 */
+  IC_VEX_W_XS, /* 618 */
+  IC_VEX_W_XS, /* 619 */
+  IC_VEX_W_XD, /* 620 */
+  IC_VEX_W_XD, /* 621 */
+  IC_VEX_W_XD, /* 622 */
+  IC_VEX_W_XD, /* 623 */
+  IC_VEX_OPSIZE, /* 624 */
+  IC_VEX_OPSIZE, /* 625 */
+  IC_VEX_OPSIZE, /* 626 */
+  IC_VEX_OPSIZE, /* 627 */
+  IC_VEX_OPSIZE, /* 628 */
+  IC_VEX_OPSIZE, /* 629 */
+  IC_VEX_OPSIZE, /* 630 */
+  IC_VEX_OPSIZE, /* 631 */
+  IC_VEX_W_OPSIZE, /* 632 */
+  IC_VEX_W_OPSIZE, /* 633 */
+  IC_VEX_W_OPSIZE, /* 634 */
+  IC_VEX_W_OPSIZE, /* 635 */
+  IC_VEX_W_OPSIZE, /* 636 */
+  IC_VEX_W_OPSIZE, /* 637 */
+  IC_VEX_W_OPSIZE, /* 638 */
+  IC_VEX_W_OPSIZE, /* 639 */
+  IC_VEX_L, /* 640 */
+  IC_VEX_L, /* 641 */
+  IC_VEX_L_XS, /* 642 */
+  IC_VEX_L_XS, /* 643 */
+  IC_VEX_L_XD, /* 644 */
+  IC_VEX_L_XD, /* 645 */
+  IC_VEX_L_XD, /* 646 */
+  IC_VEX_L_XD, /* 647 */
+  IC_VEX_L_W, /* 648 */
+  IC_VEX_L_W, /* 649 */
+  IC_VEX_L_W_XS, /* 650 */
+  IC_VEX_L_W_XS, /* 651 */
+  IC_VEX_L_W_XD, /* 652 */
+  IC_VEX_L_W_XD, /* 653 */
+  IC_VEX_L_W_XD, /* 654 */
+  IC_VEX_L_W_XD, /* 655 */
+  IC_VEX_L_OPSIZE, /* 656 */
+  IC_VEX_L_OPSIZE, /* 657 */
+  IC_VEX_L_OPSIZE, /* 658 */
+  IC_VEX_L_OPSIZE, /* 659 */
+  IC_VEX_L_OPSIZE, /* 660 */
+  IC_VEX_L_OPSIZE, /* 661 */
+  IC_VEX_L_OPSIZE, /* 662 */
+  IC_VEX_L_OPSIZE, /* 663 */
+  IC_VEX_L_W_OPSIZE, /* 664 */
+  IC_VEX_L_W_OPSIZE, /* 665 */
+  IC_VEX_L_W_OPSIZE, /* 666 */
+  IC_VEX_L_W_OPSIZE, /* 667 */
+  IC_VEX_L_W_OPSIZE, /* 668 */
+  IC_VEX_L_W_OPSIZE, /* 669 */
+  IC_VEX_L_W_OPSIZE, /* 670 */
+  IC_VEX_L_W_OPSIZE, /* 671 */
+  IC_VEX_L, /* 672 */
+  IC_VEX_L, /* 673 */
+  IC_VEX_L_XS, /* 674 */
+  IC_VEX_L_XS, /* 675 */
+  IC_VEX_L_XD, /* 676 */
+  IC_VEX_L_XD, /* 677 */
+  IC_VEX_L_XD, /* 678 */
+  IC_VEX_L_XD, /* 679 */
+  IC_VEX_L_W, /* 680 */
+  IC_VEX_L_W, /* 681 */
+  IC_VEX_L_W_XS, /* 682 */
+  IC_VEX_L_W_XS, /* 683 */
+  IC_VEX_L_W_XD, /* 684 */
+  IC_VEX_L_W_XD, /* 685 */
+  IC_VEX_L_W_XD, /* 686 */
+  IC_VEX_L_W_XD, /* 687 */
+  IC_VEX_L_OPSIZE, /* 688 */
+  IC_VEX_L_OPSIZE, /* 689 */
+  IC_VEX_L_OPSIZE, /* 690 */
+  IC_VEX_L_OPSIZE, /* 691 */
+  IC_VEX_L_OPSIZE, /* 692 */
+  IC_VEX_L_OPSIZE, /* 693 */
+  IC_VEX_L_OPSIZE, /* 694 */
+  IC_VEX_L_OPSIZE, /* 695 */
+  IC_VEX_L_W_OPSIZE, /* 696 */
+  IC_VEX_L_W_OPSIZE, /* 697 */
+  IC_VEX_L_W_OPSIZE, /* 698 */
+  IC_VEX_L_W_OPSIZE, /* 699 */
+  IC_VEX_L_W_OPSIZE, /* 700 */
+  IC_VEX_L_W_OPSIZE, /* 701 */
+  IC_VEX_L_W_OPSIZE, /* 702 */
+  IC_VEX_L_W_OPSIZE, /* 703 */
+  IC_VEX_L, /* 704 */
+  IC_VEX_L, /* 705 */
+  IC_VEX_L_XS, /* 706 */
+  IC_VEX_L_XS, /* 707 */
+  IC_VEX_L_XD, /* 708 */
+  IC_VEX_L_XD, /* 709 */
+  IC_VEX_L_XD, /* 710 */
+  IC_VEX_L_XD, /* 711 */
+  IC_VEX_L_W, /* 712 */
+  IC_VEX_L_W, /* 713 */
+  IC_VEX_L_W_XS, /* 714 */
+  IC_VEX_L_W_XS, /* 715 */
+  IC_VEX_L_W_XD, /* 716 */
+  IC_VEX_L_W_XD, /* 717 */
+  IC_VEX_L_W_XD, /* 718 */
+  IC_VEX_L_W_XD, /* 719 */
+  IC_VEX_L_OPSIZE, /* 720 */
+  IC_VEX_L_OPSIZE, /* 721 */
+  IC_VEX_L_OPSIZE, /* 722 */
+  IC_VEX_L_OPSIZE, /* 723 */
+  IC_VEX_L_OPSIZE, /* 724 */
+  IC_VEX_L_OPSIZE, /* 725 */
+  IC_VEX_L_OPSIZE, /* 726 */
+  IC_VEX_L_OPSIZE, /* 727 */
+  IC_VEX_L_W_OPSIZE, /* 728 */
+  IC_VEX_L_W_OPSIZE, /* 729 */
+  IC_VEX_L_W_OPSIZE, /* 730 */
+  IC_VEX_L_W_OPSIZE, /* 731 */
+  IC_VEX_L_W_OPSIZE, /* 732 */
+  IC_VEX_L_W_OPSIZE, /* 733 */
+  IC_VEX_L_W_OPSIZE, /* 734 */
+  IC_VEX_L_W_OPSIZE, /* 735 */
+  IC_VEX_L, /* 736 */
+  IC_VEX_L, /* 737 */
+  IC_VEX_L_XS, /* 738 */
+  IC_VEX_L_XS, /* 739 */
+  IC_VEX_L_XD, /* 740 */
+  IC_VEX_L_XD, /* 741 */
+  IC_VEX_L_XD, /* 742 */
+  IC_VEX_L_XD, /* 743 */
+  IC_VEX_L_W, /* 744 */
+  IC_VEX_L_W, /* 745 */
+  IC_VEX_L_W_XS, /* 746 */
+  IC_VEX_L_W_XS, /* 747 */
+  IC_VEX_L_W_XD, /* 748 */
+  IC_VEX_L_W_XD, /* 749 */
+  IC_VEX_L_W_XD, /* 750 */
+  IC_VEX_L_W_XD, /* 751 */
+  IC_VEX_L_OPSIZE, /* 752 */
+  IC_VEX_L_OPSIZE, /* 753 */
+  IC_VEX_L_OPSIZE, /* 754 */
+  IC_VEX_L_OPSIZE, /* 755 */
+  IC_VEX_L_OPSIZE, /* 756 */
+  IC_VEX_L_OPSIZE, /* 757 */
+  IC_VEX_L_OPSIZE, /* 758 */
+  IC_VEX_L_OPSIZE, /* 759 */
+  IC_VEX_L_W_OPSIZE, /* 760 */
+  IC_VEX_L_W_OPSIZE, /* 761 */
+  IC_VEX_L_W_OPSIZE, /* 762 */
+  IC_VEX_L_W_OPSIZE, /* 763 */
+  IC_VEX_L_W_OPSIZE, /* 764 */
+  IC_VEX_L_W_OPSIZE, /* 765 */
+  IC_VEX_L_W_OPSIZE, /* 766 */
+  IC_VEX_L_W_OPSIZE, /* 767 */
+  IC_EVEX_L, /* 768 */
+  IC_EVEX_L, /* 769 */
+  IC_EVEX_L_XS, /* 770 */
+  IC_EVEX_L_XS, /* 771 */
+  IC_EVEX_L_XD, /* 772 */
+  IC_EVEX_L_XD, /* 773 */
+  IC_EVEX_L_XD, /* 774 */
+  IC_EVEX_L_XD, /* 775 */
+  IC_EVEX_L_W, /* 776 */
+  IC_EVEX_L_W, /* 777 */
+  IC_EVEX_L_W_XS, /* 778 */
+  IC_EVEX_L_W_XS, /* 779 */
+  IC_EVEX_L_W_XD, /* 780 */
+  IC_EVEX_L_W_XD, /* 781 */
+  IC_EVEX_L_W_XD, /* 782 */
+  IC_EVEX_L_W_XD, /* 783 */
+  IC_EVEX_L_OPSIZE, /* 784 */
+  IC_EVEX_L_OPSIZE, /* 785 */
+  IC_EVEX_L_OPSIZE, /* 786 */
+  IC_EVEX_L_OPSIZE, /* 787 */
+  IC_EVEX_L_OPSIZE, /* 788 */
+  IC_EVEX_L_OPSIZE, /* 789 */
+  IC_EVEX_L_OPSIZE, /* 790 */
+  IC_EVEX_L_OPSIZE, /* 791 */
+  IC_EVEX_L_W_OPSIZE, /* 792 */
+  IC_EVEX_L_W_OPSIZE, /* 793 */
+  IC_EVEX_L_W_OPSIZE, /* 794 */
+  IC_EVEX_L_W_OPSIZE, /* 795 */
+  IC_EVEX_L_W_OPSIZE, /* 796 */
+  IC_EVEX_L_W_OPSIZE, /* 797 */
+  IC_EVEX_L_W_OPSIZE, /* 798 */
+  IC_EVEX_L_W_OPSIZE, /* 799 */
+  IC_EVEX_L, /* 800 */
+  IC_EVEX_L, /* 801 */
+  IC_EVEX_L_XS, /* 802 */
+  IC_EVEX_L_XS, /* 803 */
+  IC_EVEX_L_XD, /* 804 */
+  IC_EVEX_L_XD, /* 805 */
+  IC_EVEX_L_XD, /* 806 */
+  IC_EVEX_L_XD, /* 807 */
+  IC_EVEX_L_W, /* 808 */
+  IC_EVEX_L_W, /* 809 */
+  IC_EVEX_L_W_XS, /* 810 */
+  IC_EVEX_L_W_XS, /* 811 */
+  IC_EVEX_L_W_XD, /* 812 */
+  IC_EVEX_L_W_XD, /* 813 */
+  IC_EVEX_L_W_XD, /* 814 */
+  IC_EVEX_L_W_XD, /* 815 */
+  IC_EVEX_L_OPSIZE, /* 816 */
+  IC_EVEX_L_OPSIZE, /* 817 */
+  IC_EVEX_L_OPSIZE, /* 818 */
+  IC_EVEX_L_OPSIZE, /* 819 */
+  IC_EVEX_L_OPSIZE, /* 820 */
+  IC_EVEX_L_OPSIZE, /* 821 */
+  IC_EVEX_L_OPSIZE, /* 822 */
+  IC_EVEX_L_OPSIZE, /* 823 */
+  IC_EVEX_L_W_OPSIZE, /* 824 */
+  IC_EVEX_L_W_OPSIZE, /* 825 */
+  IC_EVEX_L_W_OPSIZE, /* 826 */
+  IC_EVEX_L_W_OPSIZE, /* 827 */
+  IC_EVEX_L_W_OPSIZE, /* 828 */
+  IC_EVEX_L_W_OPSIZE, /* 829 */
+  IC_EVEX_L_W_OPSIZE, /* 830 */
+  IC_EVEX_L_W_OPSIZE, /* 831 */
+  IC_EVEX_L, /* 832 */
+  IC_EVEX_L, /* 833 */
+  IC_EVEX_L_XS, /* 834 */
+  IC_EVEX_L_XS, /* 835 */
+  IC_EVEX_L_XD, /* 836 */
+  IC_EVEX_L_XD, /* 837 */
+  IC_EVEX_L_XD, /* 838 */
+  IC_EVEX_L_XD, /* 839 */
+  IC_EVEX_L_W, /* 840 */
+  IC_EVEX_L_W, /* 841 */
+  IC_EVEX_L_W_XS, /* 842 */
+  IC_EVEX_L_W_XS, /* 843 */
+  IC_EVEX_L_W_XD, /* 844 */
+  IC_EVEX_L_W_XD, /* 845 */
+  IC_EVEX_L_W_XD, /* 846 */
+  IC_EVEX_L_W_XD, /* 847 */
+  IC_EVEX_L_OPSIZE, /* 848 */
+  IC_EVEX_L_OPSIZE, /* 849 */
+  IC_EVEX_L_OPSIZE, /* 850 */
+  IC_EVEX_L_OPSIZE, /* 851 */
+  IC_EVEX_L_OPSIZE, /* 852 */
+  IC_EVEX_L_OPSIZE, /* 853 */
+  IC_EVEX_L_OPSIZE, /* 854 */
+  IC_EVEX_L_OPSIZE, /* 855 */
+  IC_EVEX_L_W_OPSIZE, /* 856 */
+  IC_EVEX_L_W_OPSIZE, /* 857 */
+  IC_EVEX_L_W_OPSIZE, /* 858 */
+  IC_EVEX_L_W_OPSIZE, /* 859 */
+  IC_EVEX_L_W_OPSIZE, /* 860 */
+  IC_EVEX_L_W_OPSIZE, /* 861 */
+  IC_EVEX_L_W_OPSIZE, /* 862 */
+  IC_EVEX_L_W_OPSIZE, /* 863 */
+  IC_EVEX_L, /* 864 */
+  IC_EVEX_L, /* 865 */
+  IC_EVEX_L_XS, /* 866 */
+  IC_EVEX_L_XS, /* 867 */
+  IC_EVEX_L_XD, /* 868 */
+  IC_EVEX_L_XD, /* 869 */
+  IC_EVEX_L_XD, /* 870 */
+  IC_EVEX_L_XD, /* 871 */
+  IC_EVEX_L_W, /* 872 */
+  IC_EVEX_L_W, /* 873 */
+  IC_EVEX_L_W_XS, /* 874 */
+  IC_EVEX_L_W_XS, /* 875 */
+  IC_EVEX_L_W_XD, /* 876 */
+  IC_EVEX_L_W_XD, /* 877 */
+  IC_EVEX_L_W_XD, /* 878 */
+  IC_EVEX_L_W_XD, /* 879 */
+  IC_EVEX_L_OPSIZE, /* 880 */
+  IC_EVEX_L_OPSIZE, /* 881 */
+  IC_EVEX_L_OPSIZE, /* 882 */
+  IC_EVEX_L_OPSIZE, /* 883 */
+  IC_EVEX_L_OPSIZE, /* 884 */
+  IC_EVEX_L_OPSIZE, /* 885 */
+  IC_EVEX_L_OPSIZE, /* 886 */
+  IC_EVEX_L_OPSIZE, /* 887 */
+  IC_EVEX_L_W_OPSIZE, /* 888 */
+  IC_EVEX_L_W_OPSIZE, /* 889 */
+  IC_EVEX_L_W_OPSIZE, /* 890 */
+  IC_EVEX_L_W_OPSIZE, /* 891 */
+  IC_EVEX_L_W_OPSIZE, /* 892 */
+  IC_EVEX_L_W_OPSIZE, /* 893 */
+  IC_EVEX_L_W_OPSIZE, /* 894 */
+  IC_EVEX_L_W_OPSIZE, /* 895 */
+  IC_EVEX_L, /* 896 */
+  IC_EVEX_L, /* 897 */
+  IC_EVEX_L_XS, /* 898 */
+  IC_EVEX_L_XS, /* 899 */
+  IC_EVEX_L_XD, /* 900 */
+  IC_EVEX_L_XD, /* 901 */
+  IC_EVEX_L_XD, /* 902 */
+  IC_EVEX_L_XD, /* 903 */
+  IC_EVEX_L_W, /* 904 */
+  IC_EVEX_L_W, /* 905 */
+  IC_EVEX_L_W_XS, /* 906 */
+  IC_EVEX_L_W_XS, /* 907 */
+  IC_EVEX_L_W_XD, /* 908 */
+  IC_EVEX_L_W_XD, /* 909 */
+  IC_EVEX_L_W_XD, /* 910 */
+  IC_EVEX_L_W_XD, /* 911 */
+  IC_EVEX_L_OPSIZE, /* 912 */
+  IC_EVEX_L_OPSIZE, /* 913 */
+  IC_EVEX_L_OPSIZE, /* 914 */
+  IC_EVEX_L_OPSIZE, /* 915 */
+  IC_EVEX_L_OPSIZE, /* 916 */
+  IC_EVEX_L_OPSIZE, /* 917 */
+  IC_EVEX_L_OPSIZE, /* 918 */
+  IC_EVEX_L_OPSIZE, /* 919 */
+  IC_EVEX_L_W_OPSIZE, /* 920 */
+  IC_EVEX_L_W_OPSIZE, /* 921 */
+  IC_EVEX_L_W_OPSIZE, /* 922 */
+  IC_EVEX_L_W_OPSIZE, /* 923 */
+  IC_EVEX_L_W_OPSIZE, /* 924 */
+  IC_EVEX_L_W_OPSIZE, /* 925 */
+  IC_EVEX_L_W_OPSIZE, /* 926 */
+  IC_EVEX_L_W_OPSIZE, /* 927 */
+  IC_EVEX_L, /* 928 */
+  IC_EVEX_L, /* 929 */
+  IC_EVEX_L_XS, /* 930 */
+  IC_EVEX_L_XS, /* 931 */
+  IC_EVEX_L_XD, /* 932 */
+  IC_EVEX_L_XD, /* 933 */
+  IC_EVEX_L_XD, /* 934 */
+  IC_EVEX_L_XD, /* 935 */
+  IC_EVEX_L_W, /* 936 */
+  IC_EVEX_L_W, /* 937 */
+  IC_EVEX_L_W_XS, /* 938 */
+  IC_EVEX_L_W_XS, /* 939 */
+  IC_EVEX_L_W_XD, /* 940 */
+  IC_EVEX_L_W_XD, /* 941 */
+  IC_EVEX_L_W_XD, /* 942 */
+  IC_EVEX_L_W_XD, /* 943 */
+  IC_EVEX_L_OPSIZE, /* 944 */
+  IC_EVEX_L_OPSIZE, /* 945 */
+  IC_EVEX_L_OPSIZE, /* 946 */
+  IC_EVEX_L_OPSIZE, /* 947 */
+  IC_EVEX_L_OPSIZE, /* 948 */
+  IC_EVEX_L_OPSIZE, /* 949 */
+  IC_EVEX_L_OPSIZE, /* 950 */
+  IC_EVEX_L_OPSIZE, /* 951 */
+  IC_EVEX_L_W_OPSIZE, /* 952 */
+  IC_EVEX_L_W_OPSIZE, /* 953 */
+  IC_EVEX_L_W_OPSIZE, /* 954 */
+  IC_EVEX_L_W_OPSIZE, /* 955 */
+  IC_EVEX_L_W_OPSIZE, /* 956 */
+  IC_EVEX_L_W_OPSIZE, /* 957 */
+  IC_EVEX_L_W_OPSIZE, /* 958 */
+  IC_EVEX_L_W_OPSIZE, /* 959 */
+  IC_EVEX_L, /* 960 */
+  IC_EVEX_L, /* 961 */
+  IC_EVEX_L_XS, /* 962 */
+  IC_EVEX_L_XS, /* 963 */
+  IC_EVEX_L_XD, /* 964 */
+  IC_EVEX_L_XD, /* 965 */
+  IC_EVEX_L_XD, /* 966 */
+  IC_EVEX_L_XD, /* 967 */
+  IC_EVEX_L_W, /* 968 */
+  IC_EVEX_L_W, /* 969 */
+  IC_EVEX_L_W_XS, /* 970 */
+  IC_EVEX_L_W_XS, /* 971 */
+  IC_EVEX_L_W_XD, /* 972 */
+  IC_EVEX_L_W_XD, /* 973 */
+  IC_EVEX_L_W_XD, /* 974 */
+  IC_EVEX_L_W_XD, /* 975 */
+  IC_EVEX_L_OPSIZE, /* 976 */
+  IC_EVEX_L_OPSIZE, /* 977 */
+  IC_EVEX_L_OPSIZE, /* 978 */
+  IC_EVEX_L_OPSIZE, /* 979 */
+  IC_EVEX_L_OPSIZE, /* 980 */
+  IC_EVEX_L_OPSIZE, /* 981 */
+  IC_EVEX_L_OPSIZE, /* 982 */
+  IC_EVEX_L_OPSIZE, /* 983 */
+  IC_EVEX_L_W_OPSIZE, /* 984 */
+  IC_EVEX_L_W_OPSIZE, /* 985 */
+  IC_EVEX_L_W_OPSIZE, /* 986 */
+  IC_EVEX_L_W_OPSIZE, /* 987 */
+  IC_EVEX_L_W_OPSIZE, /* 988 */
+  IC_EVEX_L_W_OPSIZE, /* 989 */
+  IC_EVEX_L_W_OPSIZE, /* 990 */
+  IC_EVEX_L_W_OPSIZE, /* 991 */
+  IC_EVEX_L, /* 992 */
+  IC_EVEX_L, /* 993 */
+  IC_EVEX_L_XS, /* 994 */
+  IC_EVEX_L_XS, /* 995 */
+  IC_EVEX_L_XD, /* 996 */
+  IC_EVEX_L_XD, /* 997 */
+  IC_EVEX_L_XD, /* 998 */
+  IC_EVEX_L_XD, /* 999 */
+  IC_EVEX_L_W, /* 1000 */
+  IC_EVEX_L_W, /* 1001 */
+  IC_EVEX_L_W_XS, /* 1002 */
+  IC_EVEX_L_W_XS, /* 1003 */
+  IC_EVEX_L_W_XD, /* 1004 */
+  IC_EVEX_L_W_XD, /* 1005 */
+  IC_EVEX_L_W_XD, /* 1006 */
+  IC_EVEX_L_W_XD, /* 1007 */
+  IC_EVEX_L_OPSIZE, /* 1008 */
+  IC_EVEX_L_OPSIZE, /* 1009 */
+  IC_EVEX_L_OPSIZE, /* 1010 */
+  IC_EVEX_L_OPSIZE, /* 1011 */
+  IC_EVEX_L_OPSIZE, /* 1012 */
+  IC_EVEX_L_OPSIZE, /* 1013 */
+  IC_EVEX_L_OPSIZE, /* 1014 */
+  IC_EVEX_L_OPSIZE, /* 1015 */
+  IC_EVEX_L_W_OPSIZE, /* 1016 */
+  IC_EVEX_L_W_OPSIZE, /* 1017 */
+  IC_EVEX_L_W_OPSIZE, /* 1018 */
+  IC_EVEX_L_W_OPSIZE, /* 1019 */
+  IC_EVEX_L_W_OPSIZE, /* 1020 */
+  IC_EVEX_L_W_OPSIZE, /* 1021 */
+  IC_EVEX_L_W_OPSIZE, /* 1022 */
+  IC_EVEX_L_W_OPSIZE, /* 1023 */
+  IC, /* 1024 */
+  IC_64BIT, /* 1025 */
+  IC_XS, /* 1026 */
+  IC_64BIT_XS, /* 1027 */
+  IC_XD, /* 1028 */
+  IC_64BIT_XD, /* 1029 */
+  IC_XS, /* 1030 */
+  IC_64BIT_XS, /* 1031 */
+  IC, /* 1032 */
+  IC_64BIT_REXW, /* 1033 */
+  IC_XS, /* 1034 */
+  IC_64BIT_REXW_XS, /* 1035 */
+  IC_XD, /* 1036 */
+  IC_64BIT_REXW_XD, /* 1037 */
+  IC_XS, /* 1038 */
+  IC_64BIT_REXW_XS, /* 1039 */
+  IC_OPSIZE, /* 1040 */
+  IC_64BIT_OPSIZE, /* 1041 */
+  IC_XS_OPSIZE, /* 1042 */
+  IC_64BIT_XS_OPSIZE, /* 1043 */
+  IC_XD_OPSIZE, /* 1044 */
+  IC_64BIT_XD_OPSIZE, /* 1045 */
+  IC_XS_OPSIZE, /* 1046 */
+  IC_64BIT_XD_OPSIZE, /* 1047 */
+  IC_OPSIZE, /* 1048 */
+  IC_64BIT_REXW_OPSIZE, /* 1049 */
+  IC_XS_OPSIZE, /* 1050 */
+  IC_64BIT_REXW_XS, /* 1051 */
+  IC_XD_OPSIZE, /* 1052 */
+  IC_64BIT_REXW_XD, /* 1053 */
+  IC_XS_OPSIZE, /* 1054 */
+  IC_64BIT_REXW_XS, /* 1055 */
+  IC_ADSIZE, /* 1056 */
+  IC_64BIT_ADSIZE, /* 1057 */
+  IC_XS, /* 1058 */
+  IC_64BIT_XS, /* 1059 */
+  IC_XD, /* 1060 */
+  IC_64BIT_XD, /* 1061 */
+  IC_XS, /* 1062 */
+  IC_64BIT_XS, /* 1063 */
+  IC_ADSIZE, /* 1064 */
+  IC_64BIT_ADSIZE, /* 1065 */
+  IC_XS, /* 1066 */
+  IC_64BIT_REXW_XS, /* 1067 */
+  IC_XD, /* 1068 */
+  IC_64BIT_REXW_XD, /* 1069 */
+  IC_XS, /* 1070 */
+  IC_64BIT_REXW_XS, /* 1071 */
+  IC_OPSIZE, /* 1072 */
+  IC_64BIT_OPSIZE, /* 1073 */
+  IC_XS_OPSIZE, /* 1074 */
+  IC_64BIT_XS_OPSIZE, /* 1075 */
+  IC_XD_OPSIZE, /* 1076 */
+  IC_64BIT_XD_OPSIZE, /* 1077 */
+  IC_XS_OPSIZE, /* 1078 */
+  IC_64BIT_XD_OPSIZE, /* 1079 */
+  IC_OPSIZE, /* 1080 */
+  IC_64BIT_REXW_OPSIZE, /* 1081 */
+  IC_XS_OPSIZE, /* 1082 */
+  IC_64BIT_REXW_XS, /* 1083 */
+  IC_XD_OPSIZE, /* 1084 */
+  IC_64BIT_REXW_XD, /* 1085 */
+  IC_XS_OPSIZE, /* 1086 */
+  IC_64BIT_REXW_XS, /* 1087 */
+  IC_VEX, /* 1088 */
+  IC_VEX, /* 1089 */
+  IC_VEX_XS, /* 1090 */
+  IC_VEX_XS, /* 1091 */
+  IC_VEX_XD, /* 1092 */
+  IC_VEX_XD, /* 1093 */
+  IC_VEX_XD, /* 1094 */
+  IC_VEX_XD, /* 1095 */
+  IC_VEX_W, /* 1096 */
+  IC_VEX_W, /* 1097 */
+  IC_VEX_W_XS, /* 1098 */
+  IC_VEX_W_XS, /* 1099 */
+  IC_VEX_W_XD, /* 1100 */
+  IC_VEX_W_XD, /* 1101 */
+  IC_VEX_W_XD, /* 1102 */
+  IC_VEX_W_XD, /* 1103 */
+  IC_VEX_OPSIZE, /* 1104 */
+  IC_VEX_OPSIZE, /* 1105 */
+  IC_VEX_OPSIZE, /* 1106 */
+  IC_VEX_OPSIZE, /* 1107 */
+  IC_VEX_OPSIZE, /* 1108 */
+  IC_VEX_OPSIZE, /* 1109 */
+  IC_VEX_OPSIZE, /* 1110 */
+  IC_VEX_OPSIZE, /* 1111 */
+  IC_VEX_W_OPSIZE, /* 1112 */
+  IC_VEX_W_OPSIZE, /* 1113 */
+  IC_VEX_W_OPSIZE, /* 1114 */
+  IC_VEX_W_OPSIZE, /* 1115 */
+  IC_VEX_W_OPSIZE, /* 1116 */
+  IC_VEX_W_OPSIZE, /* 1117 */
+  IC_VEX_W_OPSIZE, /* 1118 */
+  IC_VEX_W_OPSIZE, /* 1119 */
+  IC_VEX, /* 1120 */
+  IC_VEX, /* 1121 */
+  IC_VEX_XS, /* 1122 */
+  IC_VEX_XS, /* 1123 */
+  IC_VEX_XD, /* 1124 */
+  IC_VEX_XD, /* 1125 */
+  IC_VEX_XD, /* 1126 */
+  IC_VEX_XD, /* 1127 */
+  IC_VEX_W, /* 1128 */
+  IC_VEX_W, /* 1129 */
+  IC_VEX_W_XS, /* 1130 */
+  IC_VEX_W_XS, /* 1131 */
+  IC_VEX_W_XD, /* 1132 */
+  IC_VEX_W_XD, /* 1133 */
+  IC_VEX_W_XD, /* 1134 */
+  IC_VEX_W_XD, /* 1135 */
+  IC_VEX_OPSIZE, /* 1136 */
+  IC_VEX_OPSIZE, /* 1137 */
+  IC_VEX_OPSIZE, /* 1138 */
+  IC_VEX_OPSIZE, /* 1139 */
+  IC_VEX_OPSIZE, /* 1140 */
+  IC_VEX_OPSIZE, /* 1141 */
+  IC_VEX_OPSIZE, /* 1142 */
+  IC_VEX_OPSIZE, /* 1143 */
+  IC_VEX_W_OPSIZE, /* 1144 */
+  IC_VEX_W_OPSIZE, /* 1145 */
+  IC_VEX_W_OPSIZE, /* 1146 */
+  IC_VEX_W_OPSIZE, /* 1147 */
+  IC_VEX_W_OPSIZE, /* 1148 */
+  IC_VEX_W_OPSIZE, /* 1149 */
+  IC_VEX_W_OPSIZE, /* 1150 */
+  IC_VEX_W_OPSIZE, /* 1151 */
+  IC_VEX_L, /* 1152 */
+  IC_VEX_L, /* 1153 */
+  IC_VEX_L_XS, /* 1154 */
+  IC_VEX_L_XS, /* 1155 */
+  IC_VEX_L_XD, /* 1156 */
+  IC_VEX_L_XD, /* 1157 */
+  IC_VEX_L_XD, /* 1158 */
+  IC_VEX_L_XD, /* 1159 */
+  IC_VEX_L_W, /* 1160 */
+  IC_VEX_L_W, /* 1161 */
+  IC_VEX_L_W_XS, /* 1162 */
+  IC_VEX_L_W_XS, /* 1163 */
+  IC_VEX_L_W_XD, /* 1164 */
+  IC_VEX_L_W_XD, /* 1165 */
+  IC_VEX_L_W_XD, /* 1166 */
+  IC_VEX_L_W_XD, /* 1167 */
+  IC_VEX_L_OPSIZE, /* 1168 */
+  IC_VEX_L_OPSIZE, /* 1169 */
+  IC_VEX_L_OPSIZE, /* 1170 */
+  IC_VEX_L_OPSIZE, /* 1171 */
+  IC_VEX_L_OPSIZE, /* 1172 */
+  IC_VEX_L_OPSIZE, /* 1173 */
+  IC_VEX_L_OPSIZE, /* 1174 */
+  IC_VEX_L_OPSIZE, /* 1175 */
+  IC_VEX_L_W_OPSIZE, /* 1176 */
+  IC_VEX_L_W_OPSIZE, /* 1177 */
+  IC_VEX_L_W_OPSIZE, /* 1178 */
+  IC_VEX_L_W_OPSIZE, /* 1179 */
+  IC_VEX_L_W_OPSIZE, /* 1180 */
+  IC_VEX_L_W_OPSIZE, /* 1181 */
+  IC_VEX_L_W_OPSIZE, /* 1182 */
+  IC_VEX_L_W_OPSIZE, /* 1183 */
+  IC_VEX_L, /* 1184 */
+  IC_VEX_L, /* 1185 */
+  IC_VEX_L_XS, /* 1186 */
+  IC_VEX_L_XS, /* 1187 */
+  IC_VEX_L_XD, /* 1188 */
+  IC_VEX_L_XD, /* 1189 */
+  IC_VEX_L_XD, /* 1190 */
+  IC_VEX_L_XD, /* 1191 */
+  IC_VEX_L_W, /* 1192 */
+  IC_VEX_L_W, /* 1193 */
+  IC_VEX_L_W_XS, /* 1194 */
+  IC_VEX_L_W_XS, /* 1195 */
+  IC_VEX_L_W_XD, /* 1196 */
+  IC_VEX_L_W_XD, /* 1197 */
+  IC_VEX_L_W_XD, /* 1198 */
+  IC_VEX_L_W_XD, /* 1199 */
+  IC_VEX_L_OPSIZE, /* 1200 */
+  IC_VEX_L_OPSIZE, /* 1201 */
+  IC_VEX_L_OPSIZE, /* 1202 */
+  IC_VEX_L_OPSIZE, /* 1203 */
+  IC_VEX_L_OPSIZE, /* 1204 */
+  IC_VEX_L_OPSIZE, /* 1205 */
+  IC_VEX_L_OPSIZE, /* 1206 */
+  IC_VEX_L_OPSIZE, /* 1207 */
+  IC_VEX_L_W_OPSIZE, /* 1208 */
+  IC_VEX_L_W_OPSIZE, /* 1209 */
+  IC_VEX_L_W_OPSIZE, /* 1210 */
+  IC_VEX_L_W_OPSIZE, /* 1211 */
+  IC_VEX_L_W_OPSIZE, /* 1212 */
+  IC_VEX_L_W_OPSIZE, /* 1213 */
+  IC_VEX_L_W_OPSIZE, /* 1214 */
+  IC_VEX_L_W_OPSIZE, /* 1215 */
+  IC_VEX_L, /* 1216 */
+  IC_VEX_L, /* 1217 */
+  IC_VEX_L_XS, /* 1218 */
+  IC_VEX_L_XS, /* 1219 */
+  IC_VEX_L_XD, /* 1220 */
+  IC_VEX_L_XD, /* 1221 */
+  IC_VEX_L_XD, /* 1222 */
+  IC_VEX_L_XD, /* 1223 */
+  IC_VEX_L_W, /* 1224 */
+  IC_VEX_L_W, /* 1225 */
+  IC_VEX_L_W_XS, /* 1226 */
+  IC_VEX_L_W_XS, /* 1227 */
+  IC_VEX_L_W_XD, /* 1228 */
+  IC_VEX_L_W_XD, /* 1229 */
+  IC_VEX_L_W_XD, /* 1230 */
+  IC_VEX_L_W_XD, /* 1231 */
+  IC_VEX_L_OPSIZE, /* 1232 */
+  IC_VEX_L_OPSIZE, /* 1233 */
+  IC_VEX_L_OPSIZE, /* 1234 */
+  IC_VEX_L_OPSIZE, /* 1235 */
+  IC_VEX_L_OPSIZE, /* 1236 */
+  IC_VEX_L_OPSIZE, /* 1237 */
+  IC_VEX_L_OPSIZE, /* 1238 */
+  IC_VEX_L_OPSIZE, /* 1239 */
+  IC_VEX_L_W_OPSIZE, /* 1240 */
+  IC_VEX_L_W_OPSIZE, /* 1241 */
+  IC_VEX_L_W_OPSIZE, /* 1242 */
+  IC_VEX_L_W_OPSIZE, /* 1243 */
+  IC_VEX_L_W_OPSIZE, /* 1244 */
+  IC_VEX_L_W_OPSIZE, /* 1245 */
+  IC_VEX_L_W_OPSIZE, /* 1246 */
+  IC_VEX_L_W_OPSIZE, /* 1247 */
+  IC_VEX_L, /* 1248 */
+  IC_VEX_L, /* 1249 */
+  IC_VEX_L_XS, /* 1250 */
+  IC_VEX_L_XS, /* 1251 */
+  IC_VEX_L_XD, /* 1252 */
+  IC_VEX_L_XD, /* 1253 */
+  IC_VEX_L_XD, /* 1254 */
+  IC_VEX_L_XD, /* 1255 */
+  IC_VEX_L_W, /* 1256 */
+  IC_VEX_L_W, /* 1257 */
+  IC_VEX_L_W_XS, /* 1258 */
+  IC_VEX_L_W_XS, /* 1259 */
+  IC_VEX_L_W_XD, /* 1260 */
+  IC_VEX_L_W_XD, /* 1261 */
+  IC_VEX_L_W_XD, /* 1262 */
+  IC_VEX_L_W_XD, /* 1263 */
+  IC_VEX_L_OPSIZE, /* 1264 */
+  IC_VEX_L_OPSIZE, /* 1265 */
+  IC_VEX_L_OPSIZE, /* 1266 */
+  IC_VEX_L_OPSIZE, /* 1267 */
+  IC_VEX_L_OPSIZE, /* 1268 */
+  IC_VEX_L_OPSIZE, /* 1269 */
+  IC_VEX_L_OPSIZE, /* 1270 */
+  IC_VEX_L_OPSIZE, /* 1271 */
+  IC_VEX_L_W_OPSIZE, /* 1272 */
+  IC_VEX_L_W_OPSIZE, /* 1273 */
+  IC_VEX_L_W_OPSIZE, /* 1274 */
+  IC_VEX_L_W_OPSIZE, /* 1275 */
+  IC_VEX_L_W_OPSIZE, /* 1276 */
+  IC_VEX_L_W_OPSIZE, /* 1277 */
+  IC_VEX_L_W_OPSIZE, /* 1278 */
+  IC_VEX_L_W_OPSIZE, /* 1279 */
+  IC_EVEX_L2, /* 1280 */
+  IC_EVEX_L2, /* 1281 */
+  IC_EVEX_L2_XS, /* 1282 */
+  IC_EVEX_L2_XS, /* 1283 */
+  IC_EVEX_L2_XD, /* 1284 */
+  IC_EVEX_L2_XD, /* 1285 */
+  IC_EVEX_L2_XD, /* 1286 */
+  IC_EVEX_L2_XD, /* 1287 */
+  IC_EVEX_L2_W, /* 1288 */
+  IC_EVEX_L2_W, /* 1289 */
+  IC_EVEX_L2_W_XS, /* 1290 */
+  IC_EVEX_L2_W_XS, /* 1291 */
+  IC_EVEX_L2_W_XD, /* 1292 */
+  IC_EVEX_L2_W_XD, /* 1293 */
+  IC_EVEX_L2_W_XD, /* 1294 */
+  IC_EVEX_L2_W_XD, /* 1295 */
+  IC_EVEX_L2_OPSIZE, /* 1296 */
+  IC_EVEX_L2_OPSIZE, /* 1297 */
+  IC_EVEX_L2_OPSIZE, /* 1298 */
+  IC_EVEX_L2_OPSIZE, /* 1299 */
+  IC_EVEX_L2_OPSIZE, /* 1300 */
+  IC_EVEX_L2_OPSIZE, /* 1301 */
+  IC_EVEX_L2_OPSIZE, /* 1302 */
+  IC_EVEX_L2_OPSIZE, /* 1303 */
+  IC_EVEX_L2_W_OPSIZE, /* 1304 */
+  IC_EVEX_L2_W_OPSIZE, /* 1305 */
+  IC_EVEX_L2_W_OPSIZE, /* 1306 */
+  IC_EVEX_L2_W_OPSIZE, /* 1307 */
+  IC_EVEX_L2_W_OPSIZE, /* 1308 */
+  IC_EVEX_L2_W_OPSIZE, /* 1309 */
+  IC_EVEX_L2_W_OPSIZE, /* 1310 */
+  IC_EVEX_L2_W_OPSIZE, /* 1311 */
+  IC_EVEX_L2, /* 1312 */
+  IC_EVEX_L2, /* 1313 */
+  IC_EVEX_L2_XS, /* 1314 */
+  IC_EVEX_L2_XS, /* 1315 */
+  IC_EVEX_L2_XD, /* 1316 */
+  IC_EVEX_L2_XD, /* 1317 */
+  IC_EVEX_L2_XD, /* 1318 */
+  IC_EVEX_L2_XD, /* 1319 */
+  IC_EVEX_L2_W, /* 1320 */
+  IC_EVEX_L2_W, /* 1321 */
+  IC_EVEX_L2_W_XS, /* 1322 */
+  IC_EVEX_L2_W_XS, /* 1323 */
+  IC_EVEX_L2_W_XD, /* 1324 */
+  IC_EVEX_L2_W_XD, /* 1325 */
+  IC_EVEX_L2_W_XD, /* 1326 */
+  IC_EVEX_L2_W_XD, /* 1327 */
+  IC_EVEX_L2_OPSIZE, /* 1328 */
+  IC_EVEX_L2_OPSIZE, /* 1329 */
+  IC_EVEX_L2_OPSIZE, /* 1330 */
+  IC_EVEX_L2_OPSIZE, /* 1331 */
+  IC_EVEX_L2_OPSIZE, /* 1332 */
+  IC_EVEX_L2_OPSIZE, /* 1333 */
+  IC_EVEX_L2_OPSIZE, /* 1334 */
+  IC_EVEX_L2_OPSIZE, /* 1335 */
+  IC_EVEX_L2_W_OPSIZE, /* 1336 */
+  IC_EVEX_L2_W_OPSIZE, /* 1337 */
+  IC_EVEX_L2_W_OPSIZE, /* 1338 */
+  IC_EVEX_L2_W_OPSIZE, /* 1339 */
+  IC_EVEX_L2_W_OPSIZE, /* 1340 */
+  IC_EVEX_L2_W_OPSIZE, /* 1341 */
+  IC_EVEX_L2_W_OPSIZE, /* 1342 */
+  IC_EVEX_L2_W_OPSIZE, /* 1343 */
+  IC_EVEX_L2, /* 1344 */
+  IC_EVEX_L2, /* 1345 */
+  IC_EVEX_L2_XS, /* 1346 */
+  IC_EVEX_L2_XS, /* 1347 */
+  IC_EVEX_L2_XD, /* 1348 */
+  IC_EVEX_L2_XD, /* 1349 */
+  IC_EVEX_L2_XD, /* 1350 */
+  IC_EVEX_L2_XD, /* 1351 */
+  IC_EVEX_L2_W, /* 1352 */
+  IC_EVEX_L2_W, /* 1353 */
+  IC_EVEX_L2_W_XS, /* 1354 */
+  IC_EVEX_L2_W_XS, /* 1355 */
+  IC_EVEX_L2_W_XD, /* 1356 */
+  IC_EVEX_L2_W_XD, /* 1357 */
+  IC_EVEX_L2_W_XD, /* 1358 */
+  IC_EVEX_L2_W_XD, /* 1359 */
+  IC_EVEX_L2_OPSIZE, /* 1360 */
+  IC_EVEX_L2_OPSIZE, /* 1361 */
+  IC_EVEX_L2_OPSIZE, /* 1362 */
+  IC_EVEX_L2_OPSIZE, /* 1363 */
+  IC_EVEX_L2_OPSIZE, /* 1364 */
+  IC_EVEX_L2_OPSIZE, /* 1365 */
+  IC_EVEX_L2_OPSIZE, /* 1366 */
+  IC_EVEX_L2_OPSIZE, /* 1367 */
+  IC_EVEX_L2_W_OPSIZE, /* 1368 */
+  IC_EVEX_L2_W_OPSIZE, /* 1369 */
+  IC_EVEX_L2_W_OPSIZE, /* 1370 */
+  IC_EVEX_L2_W_OPSIZE, /* 1371 */
+  IC_EVEX_L2_W_OPSIZE, /* 1372 */
+  IC_EVEX_L2_W_OPSIZE, /* 1373 */
+  IC_EVEX_L2_W_OPSIZE, /* 1374 */
+  IC_EVEX_L2_W_OPSIZE, /* 1375 */
+  IC_EVEX_L2, /* 1376 */
+  IC_EVEX_L2, /* 1377 */
+  IC_EVEX_L2_XS, /* 1378 */
+  IC_EVEX_L2_XS, /* 1379 */
+  IC_EVEX_L2_XD, /* 1380 */
+  IC_EVEX_L2_XD, /* 1381 */
+  IC_EVEX_L2_XD, /* 1382 */
+  IC_EVEX_L2_XD, /* 1383 */
+  IC_EVEX_L2_W, /* 1384 */
+  IC_EVEX_L2_W, /* 1385 */
+  IC_EVEX_L2_W_XS, /* 1386 */
+  IC_EVEX_L2_W_XS, /* 1387 */
+  IC_EVEX_L2_W_XD, /* 1388 */
+  IC_EVEX_L2_W_XD, /* 1389 */
+  IC_EVEX_L2_W_XD, /* 1390 */
+  IC_EVEX_L2_W_XD, /* 1391 */
+  IC_EVEX_L2_OPSIZE, /* 1392 */
+  IC_EVEX_L2_OPSIZE, /* 1393 */
+  IC_EVEX_L2_OPSIZE, /* 1394 */
+  IC_EVEX_L2_OPSIZE, /* 1395 */
+  IC_EVEX_L2_OPSIZE, /* 1396 */
+  IC_EVEX_L2_OPSIZE, /* 1397 */
+  IC_EVEX_L2_OPSIZE, /* 1398 */
+  IC_EVEX_L2_OPSIZE, /* 1399 */
+  IC_EVEX_L2_W_OPSIZE, /* 1400 */
+  IC_EVEX_L2_W_OPSIZE, /* 1401 */
+  IC_EVEX_L2_W_OPSIZE, /* 1402 */
+  IC_EVEX_L2_W_OPSIZE, /* 1403 */
+  IC_EVEX_L2_W_OPSIZE, /* 1404 */
+  IC_EVEX_L2_W_OPSIZE, /* 1405 */
+  IC_EVEX_L2_W_OPSIZE, /* 1406 */
+  IC_EVEX_L2_W_OPSIZE, /* 1407 */
+  IC_EVEX_L2, /* 1408 */
+  IC_EVEX_L2, /* 1409 */
+  IC_EVEX_L2_XS, /* 1410 */
+  IC_EVEX_L2_XS, /* 1411 */
+  IC_EVEX_L2_XD, /* 1412 */
+  IC_EVEX_L2_XD, /* 1413 */
+  IC_EVEX_L2_XD, /* 1414 */
+  IC_EVEX_L2_XD, /* 1415 */
+  IC_EVEX_L2_W, /* 1416 */
+  IC_EVEX_L2_W, /* 1417 */
+  IC_EVEX_L2_W_XS, /* 1418 */
+  IC_EVEX_L2_W_XS, /* 1419 */
+  IC_EVEX_L2_W_XD, /* 1420 */
+  IC_EVEX_L2_W_XD, /* 1421 */
+  IC_EVEX_L2_W_XD, /* 1422 */
+  IC_EVEX_L2_W_XD, /* 1423 */
+  IC_EVEX_L2_OPSIZE, /* 1424 */
+  IC_EVEX_L2_OPSIZE, /* 1425 */
+  IC_EVEX_L2_OPSIZE, /* 1426 */
+  IC_EVEX_L2_OPSIZE, /* 1427 */
+  IC_EVEX_L2_OPSIZE, /* 1428 */
+  IC_EVEX_L2_OPSIZE, /* 1429 */
+  IC_EVEX_L2_OPSIZE, /* 1430 */
+  IC_EVEX_L2_OPSIZE, /* 1431 */
+  IC_EVEX_L2_W_OPSIZE, /* 1432 */
+  IC_EVEX_L2_W_OPSIZE, /* 1433 */
+  IC_EVEX_L2_W_OPSIZE, /* 1434 */
+  IC_EVEX_L2_W_OPSIZE, /* 1435 */
+  IC_EVEX_L2_W_OPSIZE, /* 1436 */
+  IC_EVEX_L2_W_OPSIZE, /* 1437 */
+  IC_EVEX_L2_W_OPSIZE, /* 1438 */
+  IC_EVEX_L2_W_OPSIZE, /* 1439 */
+  IC_EVEX_L2, /* 1440 */
+  IC_EVEX_L2, /* 1441 */
+  IC_EVEX_L2_XS, /* 1442 */
+  IC_EVEX_L2_XS, /* 1443 */
+  IC_EVEX_L2_XD, /* 1444 */
+  IC_EVEX_L2_XD, /* 1445 */
+  IC_EVEX_L2_XD, /* 1446 */
+  IC_EVEX_L2_XD, /* 1447 */
+  IC_EVEX_L2_W, /* 1448 */
+  IC_EVEX_L2_W, /* 1449 */
+  IC_EVEX_L2_W_XS, /* 1450 */
+  IC_EVEX_L2_W_XS, /* 1451 */
+  IC_EVEX_L2_W_XD, /* 1452 */
+  IC_EVEX_L2_W_XD, /* 1453 */
+  IC_EVEX_L2_W_XD, /* 1454 */
+  IC_EVEX_L2_W_XD, /* 1455 */
+  IC_EVEX_L2_OPSIZE, /* 1456 */
+  IC_EVEX_L2_OPSIZE, /* 1457 */
+  IC_EVEX_L2_OPSIZE, /* 1458 */
+  IC_EVEX_L2_OPSIZE, /* 1459 */
+  IC_EVEX_L2_OPSIZE, /* 1460 */
+  IC_EVEX_L2_OPSIZE, /* 1461 */
+  IC_EVEX_L2_OPSIZE, /* 1462 */
+  IC_EVEX_L2_OPSIZE, /* 1463 */
+  IC_EVEX_L2_W_OPSIZE, /* 1464 */
+  IC_EVEX_L2_W_OPSIZE, /* 1465 */
+  IC_EVEX_L2_W_OPSIZE, /* 1466 */
+  IC_EVEX_L2_W_OPSIZE, /* 1467 */
+  IC_EVEX_L2_W_OPSIZE, /* 1468 */
+  IC_EVEX_L2_W_OPSIZE, /* 1469 */
+  IC_EVEX_L2_W_OPSIZE, /* 1470 */
+  IC_EVEX_L2_W_OPSIZE, /* 1471 */
+  IC_EVEX_L2, /* 1472 */
+  IC_EVEX_L2, /* 1473 */
+  IC_EVEX_L2_XS, /* 1474 */
+  IC_EVEX_L2_XS, /* 1475 */
+  IC_EVEX_L2_XD, /* 1476 */
+  IC_EVEX_L2_XD, /* 1477 */
+  IC_EVEX_L2_XD, /* 1478 */
+  IC_EVEX_L2_XD, /* 1479 */
+  IC_EVEX_L2_W, /* 1480 */
+  IC_EVEX_L2_W, /* 1481 */
+  IC_EVEX_L2_W_XS, /* 1482 */
+  IC_EVEX_L2_W_XS, /* 1483 */
+  IC_EVEX_L2_W_XD, /* 1484 */
+  IC_EVEX_L2_W_XD, /* 1485 */
+  IC_EVEX_L2_W_XD, /* 1486 */
+  IC_EVEX_L2_W_XD, /* 1487 */
+  IC_EVEX_L2_OPSIZE, /* 1488 */
+  IC_EVEX_L2_OPSIZE, /* 1489 */
+  IC_EVEX_L2_OPSIZE, /* 1490 */
+  IC_EVEX_L2_OPSIZE, /* 1491 */
+  IC_EVEX_L2_OPSIZE, /* 1492 */
+  IC_EVEX_L2_OPSIZE, /* 1493 */
+  IC_EVEX_L2_OPSIZE, /* 1494 */
+  IC_EVEX_L2_OPSIZE, /* 1495 */
+  IC_EVEX_L2_W_OPSIZE, /* 1496 */
+  IC_EVEX_L2_W_OPSIZE, /* 1497 */
+  IC_EVEX_L2_W_OPSIZE, /* 1498 */
+  IC_EVEX_L2_W_OPSIZE, /* 1499 */
+  IC_EVEX_L2_W_OPSIZE, /* 1500 */
+  IC_EVEX_L2_W_OPSIZE, /* 1501 */
+  IC_EVEX_L2_W_OPSIZE, /* 1502 */
+  IC_EVEX_L2_W_OPSIZE, /* 1503 */
+  IC_EVEX_L2, /* 1504 */
+  IC_EVEX_L2, /* 1505 */
+  IC_EVEX_L2_XS, /* 1506 */
+  IC_EVEX_L2_XS, /* 1507 */
+  IC_EVEX_L2_XD, /* 1508 */
+  IC_EVEX_L2_XD, /* 1509 */
+  IC_EVEX_L2_XD, /* 1510 */
+  IC_EVEX_L2_XD, /* 1511 */
+  IC_EVEX_L2_W, /* 1512 */
+  IC_EVEX_L2_W, /* 1513 */
+  IC_EVEX_L2_W_XS, /* 1514 */
+  IC_EVEX_L2_W_XS, /* 1515 */
+  IC_EVEX_L2_W_XD, /* 1516 */
+  IC_EVEX_L2_W_XD, /* 1517 */
+  IC_EVEX_L2_W_XD, /* 1518 */
+  IC_EVEX_L2_W_XD, /* 1519 */
+  IC_EVEX_L2_OPSIZE, /* 1520 */
+  IC_EVEX_L2_OPSIZE, /* 1521 */
+  IC_EVEX_L2_OPSIZE, /* 1522 */
+  IC_EVEX_L2_OPSIZE, /* 1523 */
+  IC_EVEX_L2_OPSIZE, /* 1524 */
+  IC_EVEX_L2_OPSIZE, /* 1525 */
+  IC_EVEX_L2_OPSIZE, /* 1526 */
+  IC_EVEX_L2_OPSIZE, /* 1527 */
+  IC_EVEX_L2_W_OPSIZE, /* 1528 */
+  IC_EVEX_L2_W_OPSIZE, /* 1529 */
+  IC_EVEX_L2_W_OPSIZE, /* 1530 */
+  IC_EVEX_L2_W_OPSIZE, /* 1531 */
+  IC_EVEX_L2_W_OPSIZE, /* 1532 */
+  IC_EVEX_L2_W_OPSIZE, /* 1533 */
+  IC_EVEX_L2_W_OPSIZE, /* 1534 */
+  IC_EVEX_L2_W_OPSIZE, /* 1535 */
+  IC, /* 1536 */
+  IC_64BIT, /* 1537 */
+  IC_XS, /* 1538 */
+  IC_64BIT_XS, /* 1539 */
+  IC_XD, /* 1540 */
+  IC_64BIT_XD, /* 1541 */
+  IC_XS, /* 1542 */
+  IC_64BIT_XS, /* 1543 */
+  IC, /* 1544 */
+  IC_64BIT_REXW, /* 1545 */
+  IC_XS, /* 1546 */
+  IC_64BIT_REXW_XS, /* 1547 */
+  IC_XD, /* 1548 */
+  IC_64BIT_REXW_XD, /* 1549 */
+  IC_XS, /* 1550 */
+  IC_64BIT_REXW_XS, /* 1551 */
+  IC_OPSIZE, /* 1552 */
+  IC_64BIT_OPSIZE, /* 1553 */
+  IC_XS_OPSIZE, /* 1554 */
+  IC_64BIT_XS_OPSIZE, /* 1555 */
+  IC_XD_OPSIZE, /* 1556 */
+  IC_64BIT_XD_OPSIZE, /* 1557 */
+  IC_XS_OPSIZE, /* 1558 */
+  IC_64BIT_XD_OPSIZE, /* 1559 */
+  IC_OPSIZE, /* 1560 */
+  IC_64BIT_REXW_OPSIZE, /* 1561 */
+  IC_XS_OPSIZE, /* 1562 */
+  IC_64BIT_REXW_XS, /* 1563 */
+  IC_XD_OPSIZE, /* 1564 */
+  IC_64BIT_REXW_XD, /* 1565 */
+  IC_XS_OPSIZE, /* 1566 */
+  IC_64BIT_REXW_XS, /* 1567 */
+  IC_ADSIZE, /* 1568 */
+  IC_64BIT_ADSIZE, /* 1569 */
+  IC_XS, /* 1570 */
+  IC_64BIT_XS, /* 1571 */
+  IC_XD, /* 1572 */
+  IC_64BIT_XD, /* 1573 */
+  IC_XS, /* 1574 */
+  IC_64BIT_XS, /* 1575 */
+  IC_ADSIZE, /* 1576 */
+  IC_64BIT_ADSIZE, /* 1577 */
+  IC_XS, /* 1578 */
+  IC_64BIT_REXW_XS, /* 1579 */
+  IC_XD, /* 1580 */
+  IC_64BIT_REXW_XD, /* 1581 */
+  IC_XS, /* 1582 */
+  IC_64BIT_REXW_XS, /* 1583 */
+  IC_OPSIZE, /* 1584 */
+  IC_64BIT_OPSIZE, /* 1585 */
+  IC_XS_OPSIZE, /* 1586 */
+  IC_64BIT_XS_OPSIZE, /* 1587 */
+  IC_XD_OPSIZE, /* 1588 */
+  IC_64BIT_XD_OPSIZE, /* 1589 */
+  IC_XS_OPSIZE, /* 1590 */
+  IC_64BIT_XD_OPSIZE, /* 1591 */
+  IC_OPSIZE, /* 1592 */
+  IC_64BIT_REXW_OPSIZE, /* 1593 */
+  IC_XS_OPSIZE, /* 1594 */
+  IC_64BIT_REXW_XS, /* 1595 */
+  IC_XD_OPSIZE, /* 1596 */
+  IC_64BIT_REXW_XD, /* 1597 */
+  IC_XS_OPSIZE, /* 1598 */
+  IC_64BIT_REXW_XS, /* 1599 */
+  IC_VEX, /* 1600 */
+  IC_VEX, /* 1601 */
+  IC_VEX_XS, /* 1602 */
+  IC_VEX_XS, /* 1603 */
+  IC_VEX_XD, /* 1604 */
+  IC_VEX_XD, /* 1605 */
+  IC_VEX_XD, /* 1606 */
+  IC_VEX_XD, /* 1607 */
+  IC_VEX_W, /* 1608 */
+  IC_VEX_W, /* 1609 */
+  IC_VEX_W_XS, /* 1610 */
+  IC_VEX_W_XS, /* 1611 */
+  IC_VEX_W_XD, /* 1612 */
+  IC_VEX_W_XD, /* 1613 */
+  IC_VEX_W_XD, /* 1614 */
+  IC_VEX_W_XD, /* 1615 */
+  IC_VEX_OPSIZE, /* 1616 */
+  IC_VEX_OPSIZE, /* 1617 */
+  IC_VEX_OPSIZE, /* 1618 */
+  IC_VEX_OPSIZE, /* 1619 */
+  IC_VEX_OPSIZE, /* 1620 */
+  IC_VEX_OPSIZE, /* 1621 */
+  IC_VEX_OPSIZE, /* 1622 */
+  IC_VEX_OPSIZE, /* 1623 */
+  IC_VEX_W_OPSIZE, /* 1624 */
+  IC_VEX_W_OPSIZE, /* 1625 */
+  IC_VEX_W_OPSIZE, /* 1626 */
+  IC_VEX_W_OPSIZE, /* 1627 */
+  IC_VEX_W_OPSIZE, /* 1628 */
+  IC_VEX_W_OPSIZE, /* 1629 */
+  IC_VEX_W_OPSIZE, /* 1630 */
+  IC_VEX_W_OPSIZE, /* 1631 */
+  IC_VEX, /* 1632 */
+  IC_VEX, /* 1633 */
+  IC_VEX_XS, /* 1634 */
+  IC_VEX_XS, /* 1635 */
+  IC_VEX_XD, /* 1636 */
+  IC_VEX_XD, /* 1637 */
+  IC_VEX_XD, /* 1638 */
+  IC_VEX_XD, /* 1639 */
+  IC_VEX_W, /* 1640 */
+  IC_VEX_W, /* 1641 */
+  IC_VEX_W_XS, /* 1642 */
+  IC_VEX_W_XS, /* 1643 */
+  IC_VEX_W_XD, /* 1644 */
+  IC_VEX_W_XD, /* 1645 */
+  IC_VEX_W_XD, /* 1646 */
+  IC_VEX_W_XD, /* 1647 */
+  IC_VEX_OPSIZE, /* 1648 */
+  IC_VEX_OPSIZE, /* 1649 */
+  IC_VEX_OPSIZE, /* 1650 */
+  IC_VEX_OPSIZE, /* 1651 */
+  IC_VEX_OPSIZE, /* 1652 */
+  IC_VEX_OPSIZE, /* 1653 */
+  IC_VEX_OPSIZE, /* 1654 */
+  IC_VEX_OPSIZE, /* 1655 */
+  IC_VEX_W_OPSIZE, /* 1656 */
+  IC_VEX_W_OPSIZE, /* 1657 */
+  IC_VEX_W_OPSIZE, /* 1658 */
+  IC_VEX_W_OPSIZE, /* 1659 */
+  IC_VEX_W_OPSIZE, /* 1660 */
+  IC_VEX_W_OPSIZE, /* 1661 */
+  IC_VEX_W_OPSIZE, /* 1662 */
+  IC_VEX_W_OPSIZE, /* 1663 */
+  IC_VEX_L, /* 1664 */
+  IC_VEX_L, /* 1665 */
+  IC_VEX_L_XS, /* 1666 */
+  IC_VEX_L_XS, /* 1667 */
+  IC_VEX_L_XD, /* 1668 */
+  IC_VEX_L_XD, /* 1669 */
+  IC_VEX_L_XD, /* 1670 */
+  IC_VEX_L_XD, /* 1671 */
+  IC_VEX_L_W, /* 1672 */
+  IC_VEX_L_W, /* 1673 */
+  IC_VEX_L_W_XS, /* 1674 */
+  IC_VEX_L_W_XS, /* 1675 */
+  IC_VEX_L_W_XD, /* 1676 */
+  IC_VEX_L_W_XD, /* 1677 */
+  IC_VEX_L_W_XD, /* 1678 */
+  IC_VEX_L_W_XD, /* 1679 */
+  IC_VEX_L_OPSIZE, /* 1680 */
+  IC_VEX_L_OPSIZE, /* 1681 */
+  IC_VEX_L_OPSIZE, /* 1682 */
+  IC_VEX_L_OPSIZE, /* 1683 */
+  IC_VEX_L_OPSIZE, /* 1684 */
+  IC_VEX_L_OPSIZE, /* 1685 */
+  IC_VEX_L_OPSIZE, /* 1686 */
+  IC_VEX_L_OPSIZE, /* 1687 */
+  IC_VEX_L_W_OPSIZE, /* 1688 */
+  IC_VEX_L_W_OPSIZE, /* 1689 */
+  IC_VEX_L_W_OPSIZE, /* 1690 */
+  IC_VEX_L_W_OPSIZE, /* 1691 */
+  IC_VEX_L_W_OPSIZE, /* 1692 */
+  IC_VEX_L_W_OPSIZE, /* 1693 */
+  IC_VEX_L_W_OPSIZE, /* 1694 */
+  IC_VEX_L_W_OPSIZE, /* 1695 */
+  IC_VEX_L, /* 1696 */
+  IC_VEX_L, /* 1697 */
+  IC_VEX_L_XS, /* 1698 */
+  IC_VEX_L_XS, /* 1699 */
+  IC_VEX_L_XD, /* 1700 */
+  IC_VEX_L_XD, /* 1701 */
+  IC_VEX_L_XD, /* 1702 */
+  IC_VEX_L_XD, /* 1703 */
+  IC_VEX_L_W, /* 1704 */
+  IC_VEX_L_W, /* 1705 */
+  IC_VEX_L_W_XS, /* 1706 */
+  IC_VEX_L_W_XS, /* 1707 */
+  IC_VEX_L_W_XD, /* 1708 */
+  IC_VEX_L_W_XD, /* 1709 */
+  IC_VEX_L_W_XD, /* 1710 */
+  IC_VEX_L_W_XD, /* 1711 */
+  IC_VEX_L_OPSIZE, /* 1712 */
+  IC_VEX_L_OPSIZE, /* 1713 */
+  IC_VEX_L_OPSIZE, /* 1714 */
+  IC_VEX_L_OPSIZE, /* 1715 */
+  IC_VEX_L_OPSIZE, /* 1716 */
+  IC_VEX_L_OPSIZE, /* 1717 */
+  IC_VEX_L_OPSIZE, /* 1718 */
+  IC_VEX_L_OPSIZE, /* 1719 */
+  IC_VEX_L_W_OPSIZE, /* 1720 */
+  IC_VEX_L_W_OPSIZE, /* 1721 */
+  IC_VEX_L_W_OPSIZE, /* 1722 */
+  IC_VEX_L_W_OPSIZE, /* 1723 */
+  IC_VEX_L_W_OPSIZE, /* 1724 */
+  IC_VEX_L_W_OPSIZE, /* 1725 */
+  IC_VEX_L_W_OPSIZE, /* 1726 */
+  IC_VEX_L_W_OPSIZE, /* 1727 */
+  IC_VEX_L, /* 1728 */
+  IC_VEX_L, /* 1729 */
+  IC_VEX_L_XS, /* 1730 */
+  IC_VEX_L_XS, /* 1731 */
+  IC_VEX_L_XD, /* 1732 */
+  IC_VEX_L_XD, /* 1733 */
+  IC_VEX_L_XD, /* 1734 */
+  IC_VEX_L_XD, /* 1735 */
+  IC_VEX_L_W, /* 1736 */
+  IC_VEX_L_W, /* 1737 */
+  IC_VEX_L_W_XS, /* 1738 */
+  IC_VEX_L_W_XS, /* 1739 */
+  IC_VEX_L_W_XD, /* 1740 */
+  IC_VEX_L_W_XD, /* 1741 */
+  IC_VEX_L_W_XD, /* 1742 */
+  IC_VEX_L_W_XD, /* 1743 */
+  IC_VEX_L_OPSIZE, /* 1744 */
+  IC_VEX_L_OPSIZE, /* 1745 */
+  IC_VEX_L_OPSIZE, /* 1746 */
+  IC_VEX_L_OPSIZE, /* 1747 */
+  IC_VEX_L_OPSIZE, /* 1748 */
+  IC_VEX_L_OPSIZE, /* 1749 */
+  IC_VEX_L_OPSIZE, /* 1750 */
+  IC_VEX_L_OPSIZE, /* 1751 */
+  IC_VEX_L_W_OPSIZE, /* 1752 */
+  IC_VEX_L_W_OPSIZE, /* 1753 */
+  IC_VEX_L_W_OPSIZE, /* 1754 */
+  IC_VEX_L_W_OPSIZE, /* 1755 */
+  IC_VEX_L_W_OPSIZE, /* 1756 */
+  IC_VEX_L_W_OPSIZE, /* 1757 */
+  IC_VEX_L_W_OPSIZE, /* 1758 */
+  IC_VEX_L_W_OPSIZE, /* 1759 */
+  IC_VEX_L, /* 1760 */
+  IC_VEX_L, /* 1761 */
+  IC_VEX_L_XS, /* 1762 */
+  IC_VEX_L_XS, /* 1763 */
+  IC_VEX_L_XD, /* 1764 */
+  IC_VEX_L_XD, /* 1765 */
+  IC_VEX_L_XD, /* 1766 */
+  IC_VEX_L_XD, /* 1767 */
+  IC_VEX_L_W, /* 1768 */
+  IC_VEX_L_W, /* 1769 */
+  IC_VEX_L_W_XS, /* 1770 */
+  IC_VEX_L_W_XS, /* 1771 */
+  IC_VEX_L_W_XD, /* 1772 */
+  IC_VEX_L_W_XD, /* 1773 */
+  IC_VEX_L_W_XD, /* 1774 */
+  IC_VEX_L_W_XD, /* 1775 */
+  IC_VEX_L_OPSIZE, /* 1776 */
+  IC_VEX_L_OPSIZE, /* 1777 */
+  IC_VEX_L_OPSIZE, /* 1778 */
+  IC_VEX_L_OPSIZE, /* 1779 */
+  IC_VEX_L_OPSIZE, /* 1780 */
+  IC_VEX_L_OPSIZE, /* 1781 */
+  IC_VEX_L_OPSIZE, /* 1782 */
+  IC_VEX_L_OPSIZE, /* 1783 */
+  IC_VEX_L_W_OPSIZE, /* 1784 */
+  IC_VEX_L_W_OPSIZE, /* 1785 */
+  IC_VEX_L_W_OPSIZE, /* 1786 */
+  IC_VEX_L_W_OPSIZE, /* 1787 */
+  IC_VEX_L_W_OPSIZE, /* 1788 */
+  IC_VEX_L_W_OPSIZE, /* 1789 */
+  IC_VEX_L_W_OPSIZE, /* 1790 */
+  IC_VEX_L_W_OPSIZE, /* 1791 */
+  IC_EVEX_L2, /* 1792 */
+  IC_EVEX_L2, /* 1793 */
+  IC_EVEX_L2_XS, /* 1794 */
+  IC_EVEX_L2_XS, /* 1795 */
+  IC_EVEX_L2_XD, /* 1796 */
+  IC_EVEX_L2_XD, /* 1797 */
+  IC_EVEX_L2_XD, /* 1798 */
+  IC_EVEX_L2_XD, /* 1799 */
+  IC_EVEX_L2_W, /* 1800 */
+  IC_EVEX_L2_W, /* 1801 */
+  IC_EVEX_L2_W_XS, /* 1802 */
+  IC_EVEX_L2_W_XS, /* 1803 */
+  IC_EVEX_L2_W_XD, /* 1804 */
+  IC_EVEX_L2_W_XD, /* 1805 */
+  IC_EVEX_L2_W_XD, /* 1806 */
+  IC_EVEX_L2_W_XD, /* 1807 */
+  IC_EVEX_L2_OPSIZE, /* 1808 */
+  IC_EVEX_L2_OPSIZE, /* 1809 */
+  IC_EVEX_L2_OPSIZE, /* 1810 */
+  IC_EVEX_L2_OPSIZE, /* 1811 */
+  IC_EVEX_L2_OPSIZE, /* 1812 */
+  IC_EVEX_L2_OPSIZE, /* 1813 */
+  IC_EVEX_L2_OPSIZE, /* 1814 */
+  IC_EVEX_L2_OPSIZE, /* 1815 */
+  IC_EVEX_L2_W_OPSIZE, /* 1816 */
+  IC_EVEX_L2_W_OPSIZE, /* 1817 */
+  IC_EVEX_L2_W_OPSIZE, /* 1818 */
+  IC_EVEX_L2_W_OPSIZE, /* 1819 */
+  IC_EVEX_L2_W_OPSIZE, /* 1820 */
+  IC_EVEX_L2_W_OPSIZE, /* 1821 */
+  IC_EVEX_L2_W_OPSIZE, /* 1822 */
+  IC_EVEX_L2_W_OPSIZE, /* 1823 */
+  IC_EVEX_L2, /* 1824 */
+  IC_EVEX_L2, /* 1825 */
+  IC_EVEX_L2_XS, /* 1826 */
+  IC_EVEX_L2_XS, /* 1827 */
+  IC_EVEX_L2_XD, /* 1828 */
+  IC_EVEX_L2_XD, /* 1829 */
+  IC_EVEX_L2_XD, /* 1830 */
+  IC_EVEX_L2_XD, /* 1831 */
+  IC_EVEX_L2_W, /* 1832 */
+  IC_EVEX_L2_W, /* 1833 */
+  IC_EVEX_L2_W_XS, /* 1834 */
+  IC_EVEX_L2_W_XS, /* 1835 */
+  IC_EVEX_L2_W_XD, /* 1836 */
+  IC_EVEX_L2_W_XD, /* 1837 */
+  IC_EVEX_L2_W_XD, /* 1838 */
+  IC_EVEX_L2_W_XD, /* 1839 */
+  IC_EVEX_L2_OPSIZE, /* 1840 */
+  IC_EVEX_L2_OPSIZE, /* 1841 */
+  IC_EVEX_L2_OPSIZE, /* 1842 */
+  IC_EVEX_L2_OPSIZE, /* 1843 */
+  IC_EVEX_L2_OPSIZE, /* 1844 */
+  IC_EVEX_L2_OPSIZE, /* 1845 */
+  IC_EVEX_L2_OPSIZE, /* 1846 */
+  IC_EVEX_L2_OPSIZE, /* 1847 */
+  IC_EVEX_L2_W_OPSIZE, /* 1848 */
+  IC_EVEX_L2_W_OPSIZE, /* 1849 */
+  IC_EVEX_L2_W_OPSIZE, /* 1850 */
+  IC_EVEX_L2_W_OPSIZE, /* 1851 */
+  IC_EVEX_L2_W_OPSIZE, /* 1852 */
+  IC_EVEX_L2_W_OPSIZE, /* 1853 */
+  IC_EVEX_L2_W_OPSIZE, /* 1854 */
+  IC_EVEX_L2_W_OPSIZE, /* 1855 */
+  IC_EVEX_L2, /* 1856 */
+  IC_EVEX_L2, /* 1857 */
+  IC_EVEX_L2_XS, /* 1858 */
+  IC_EVEX_L2_XS, /* 1859 */
+  IC_EVEX_L2_XD, /* 1860 */
+  IC_EVEX_L2_XD, /* 1861 */
+  IC_EVEX_L2_XD, /* 1862 */
+  IC_EVEX_L2_XD, /* 1863 */
+  IC_EVEX_L2_W, /* 1864 */
+  IC_EVEX_L2_W, /* 1865 */
+  IC_EVEX_L2_W_XS, /* 1866 */
+  IC_EVEX_L2_W_XS, /* 1867 */
+  IC_EVEX_L2_W_XD, /* 1868 */
+  IC_EVEX_L2_W_XD, /* 1869 */
+  IC_EVEX_L2_W_XD, /* 1870 */
+  IC_EVEX_L2_W_XD, /* 1871 */
+  IC_EVEX_L2_OPSIZE, /* 1872 */
+  IC_EVEX_L2_OPSIZE, /* 1873 */
+  IC_EVEX_L2_OPSIZE, /* 1874 */
+  IC_EVEX_L2_OPSIZE, /* 1875 */
+  IC_EVEX_L2_OPSIZE, /* 1876 */
+  IC_EVEX_L2_OPSIZE, /* 1877 */
+  IC_EVEX_L2_OPSIZE, /* 1878 */
+  IC_EVEX_L2_OPSIZE, /* 1879 */
+  IC_EVEX_L2_W_OPSIZE, /* 1880 */
+  IC_EVEX_L2_W_OPSIZE, /* 1881 */
+  IC_EVEX_L2_W_OPSIZE, /* 1882 */
+  IC_EVEX_L2_W_OPSIZE, /* 1883 */
+  IC_EVEX_L2_W_OPSIZE, /* 1884 */
+  IC_EVEX_L2_W_OPSIZE, /* 1885 */
+  IC_EVEX_L2_W_OPSIZE, /* 1886 */
+  IC_EVEX_L2_W_OPSIZE, /* 1887 */
+  IC_EVEX_L2, /* 1888 */
+  IC_EVEX_L2, /* 1889 */
+  IC_EVEX_L2_XS, /* 1890 */
+  IC_EVEX_L2_XS, /* 1891 */
+  IC_EVEX_L2_XD, /* 1892 */
+  IC_EVEX_L2_XD, /* 1893 */
+  IC_EVEX_L2_XD, /* 1894 */
+  IC_EVEX_L2_XD, /* 1895 */
+  IC_EVEX_L2_W, /* 1896 */
+  IC_EVEX_L2_W, /* 1897 */
+  IC_EVEX_L2_W_XS, /* 1898 */
+  IC_EVEX_L2_W_XS, /* 1899 */
+  IC_EVEX_L2_W_XD, /* 1900 */
+  IC_EVEX_L2_W_XD, /* 1901 */
+  IC_EVEX_L2_W_XD, /* 1902 */
+  IC_EVEX_L2_W_XD, /* 1903 */
+  IC_EVEX_L2_OPSIZE, /* 1904 */
+  IC_EVEX_L2_OPSIZE, /* 1905 */
+  IC_EVEX_L2_OPSIZE, /* 1906 */
+  IC_EVEX_L2_OPSIZE, /* 1907 */
+  IC_EVEX_L2_OPSIZE, /* 1908 */
+  IC_EVEX_L2_OPSIZE, /* 1909 */
+  IC_EVEX_L2_OPSIZE, /* 1910 */
+  IC_EVEX_L2_OPSIZE, /* 1911 */
+  IC_EVEX_L2_W_OPSIZE, /* 1912 */
+  IC_EVEX_L2_W_OPSIZE, /* 1913 */
+  IC_EVEX_L2_W_OPSIZE, /* 1914 */
+  IC_EVEX_L2_W_OPSIZE, /* 1915 */
+  IC_EVEX_L2_W_OPSIZE, /* 1916 */
+  IC_EVEX_L2_W_OPSIZE, /* 1917 */
+  IC_EVEX_L2_W_OPSIZE, /* 1918 */
+  IC_EVEX_L2_W_OPSIZE, /* 1919 */
+  IC_EVEX_L2, /* 1920 */
+  IC_EVEX_L2, /* 1921 */
+  IC_EVEX_L2_XS, /* 1922 */
+  IC_EVEX_L2_XS, /* 1923 */
+  IC_EVEX_L2_XD, /* 1924 */
+  IC_EVEX_L2_XD, /* 1925 */
+  IC_EVEX_L2_XD, /* 1926 */
+  IC_EVEX_L2_XD, /* 1927 */
+  IC_EVEX_L2_W, /* 1928 */
+  IC_EVEX_L2_W, /* 1929 */
+  IC_EVEX_L2_W_XS, /* 1930 */
+  IC_EVEX_L2_W_XS, /* 1931 */
+  IC_EVEX_L2_W_XD, /* 1932 */
+  IC_EVEX_L2_W_XD, /* 1933 */
+  IC_EVEX_L2_W_XD, /* 1934 */
+  IC_EVEX_L2_W_XD, /* 1935 */
+  IC_EVEX_L2_OPSIZE, /* 1936 */
+  IC_EVEX_L2_OPSIZE, /* 1937 */
+  IC_EVEX_L2_OPSIZE, /* 1938 */
+  IC_EVEX_L2_OPSIZE, /* 1939 */
+  IC_EVEX_L2_OPSIZE, /* 1940 */
+  IC_EVEX_L2_OPSIZE, /* 1941 */
+  IC_EVEX_L2_OPSIZE, /* 1942 */
+  IC_EVEX_L2_OPSIZE, /* 1943 */
+  IC_EVEX_L2_W_OPSIZE, /* 1944 */
+  IC_EVEX_L2_W_OPSIZE, /* 1945 */
+  IC_EVEX_L2_W_OPSIZE, /* 1946 */
+  IC_EVEX_L2_W_OPSIZE, /* 1947 */
+  IC_EVEX_L2_W_OPSIZE, /* 1948 */
+  IC_EVEX_L2_W_OPSIZE, /* 1949 */
+  IC_EVEX_L2_W_OPSIZE, /* 1950 */
+  IC_EVEX_L2_W_OPSIZE, /* 1951 */
+  IC_EVEX_L2, /* 1952 */
+  IC_EVEX_L2, /* 1953 */
+  IC_EVEX_L2_XS, /* 1954 */
+  IC_EVEX_L2_XS, /* 1955 */
+  IC_EVEX_L2_XD, /* 1956 */
+  IC_EVEX_L2_XD, /* 1957 */
+  IC_EVEX_L2_XD, /* 1958 */
+  IC_EVEX_L2_XD, /* 1959 */
+  IC_EVEX_L2_W, /* 1960 */
+  IC_EVEX_L2_W, /* 1961 */
+  IC_EVEX_L2_W_XS, /* 1962 */
+  IC_EVEX_L2_W_XS, /* 1963 */
+  IC_EVEX_L2_W_XD, /* 1964 */
+  IC_EVEX_L2_W_XD, /* 1965 */
+  IC_EVEX_L2_W_XD, /* 1966 */
+  IC_EVEX_L2_W_XD, /* 1967 */
+  IC_EVEX_L2_OPSIZE, /* 1968 */
+  IC_EVEX_L2_OPSIZE, /* 1969 */
+  IC_EVEX_L2_OPSIZE, /* 1970 */
+  IC_EVEX_L2_OPSIZE, /* 1971 */
+  IC_EVEX_L2_OPSIZE, /* 1972 */
+  IC_EVEX_L2_OPSIZE, /* 1973 */
+  IC_EVEX_L2_OPSIZE, /* 1974 */
+  IC_EVEX_L2_OPSIZE, /* 1975 */
+  IC_EVEX_L2_W_OPSIZE, /* 1976 */
+  IC_EVEX_L2_W_OPSIZE, /* 1977 */
+  IC_EVEX_L2_W_OPSIZE, /* 1978 */
+  IC_EVEX_L2_W_OPSIZE, /* 1979 */
+  IC_EVEX_L2_W_OPSIZE, /* 1980 */
+  IC_EVEX_L2_W_OPSIZE, /* 1981 */
+  IC_EVEX_L2_W_OPSIZE, /* 1982 */
+  IC_EVEX_L2_W_OPSIZE, /* 1983 */
+  IC_EVEX_L2, /* 1984 */
+  IC_EVEX_L2, /* 1985 */
+  IC_EVEX_L2_XS, /* 1986 */
+  IC_EVEX_L2_XS, /* 1987 */
+  IC_EVEX_L2_XD, /* 1988 */
+  IC_EVEX_L2_XD, /* 1989 */
+  IC_EVEX_L2_XD, /* 1990 */
+  IC_EVEX_L2_XD, /* 1991 */
+  IC_EVEX_L2_W, /* 1992 */
+  IC_EVEX_L2_W, /* 1993 */
+  IC_EVEX_L2_W_XS, /* 1994 */
+  IC_EVEX_L2_W_XS, /* 1995 */
+  IC_EVEX_L2_W_XD, /* 1996 */
+  IC_EVEX_L2_W_XD, /* 1997 */
+  IC_EVEX_L2_W_XD, /* 1998 */
+  IC_EVEX_L2_W_XD, /* 1999 */
+  IC_EVEX_L2_OPSIZE, /* 2000 */
+  IC_EVEX_L2_OPSIZE, /* 2001 */
+  IC_EVEX_L2_OPSIZE, /* 2002 */
+  IC_EVEX_L2_OPSIZE, /* 2003 */
+  IC_EVEX_L2_OPSIZE, /* 2004 */
+  IC_EVEX_L2_OPSIZE, /* 2005 */
+  IC_EVEX_L2_OPSIZE, /* 2006 */
+  IC_EVEX_L2_OPSIZE, /* 2007 */
+  IC_EVEX_L2_W_OPSIZE, /* 2008 */
+  IC_EVEX_L2_W_OPSIZE, /* 2009 */
+  IC_EVEX_L2_W_OPSIZE, /* 2010 */
+  IC_EVEX_L2_W_OPSIZE, /* 2011 */
+  IC_EVEX_L2_W_OPSIZE, /* 2012 */
+  IC_EVEX_L2_W_OPSIZE, /* 2013 */
+  IC_EVEX_L2_W_OPSIZE, /* 2014 */
+  IC_EVEX_L2_W_OPSIZE, /* 2015 */
+  IC_EVEX_L2, /* 2016 */
+  IC_EVEX_L2, /* 2017 */
+  IC_EVEX_L2_XS, /* 2018 */
+  IC_EVEX_L2_XS, /* 2019 */
+  IC_EVEX_L2_XD, /* 2020 */
+  IC_EVEX_L2_XD, /* 2021 */
+  IC_EVEX_L2_XD, /* 2022 */
+  IC_EVEX_L2_XD, /* 2023 */
+  IC_EVEX_L2_W, /* 2024 */
+  IC_EVEX_L2_W, /* 2025 */
+  IC_EVEX_L2_W_XS, /* 2026 */
+  IC_EVEX_L2_W_XS, /* 2027 */
+  IC_EVEX_L2_W_XD, /* 2028 */
+  IC_EVEX_L2_W_XD, /* 2029 */
+  IC_EVEX_L2_W_XD, /* 2030 */
+  IC_EVEX_L2_W_XD, /* 2031 */
+  IC_EVEX_L2_OPSIZE, /* 2032 */
+  IC_EVEX_L2_OPSIZE, /* 2033 */
+  IC_EVEX_L2_OPSIZE, /* 2034 */
+  IC_EVEX_L2_OPSIZE, /* 2035 */
+  IC_EVEX_L2_OPSIZE, /* 2036 */
+  IC_EVEX_L2_OPSIZE, /* 2037 */
+  IC_EVEX_L2_OPSIZE, /* 2038 */
+  IC_EVEX_L2_OPSIZE, /* 2039 */
+  IC_EVEX_L2_W_OPSIZE, /* 2040 */
+  IC_EVEX_L2_W_OPSIZE, /* 2041 */
+  IC_EVEX_L2_W_OPSIZE, /* 2042 */
+  IC_EVEX_L2_W_OPSIZE, /* 2043 */
+  IC_EVEX_L2_W_OPSIZE, /* 2044 */
+  IC_EVEX_L2_W_OPSIZE, /* 2045 */
+  IC_EVEX_L2_W_OPSIZE, /* 2046 */
+  IC_EVEX_L2_W_OPSIZE, /* 2047 */
+  IC, /* 2048 */
+  IC_64BIT, /* 2049 */
+  IC_XS, /* 2050 */
+  IC_64BIT_XS, /* 2051 */
+  IC_XD, /* 2052 */
+  IC_64BIT_XD, /* 2053 */
+  IC_XS, /* 2054 */
+  IC_64BIT_XS, /* 2055 */
+  IC, /* 2056 */
+  IC_64BIT_REXW, /* 2057 */
+  IC_XS, /* 2058 */
+  IC_64BIT_REXW_XS, /* 2059 */
+  IC_XD, /* 2060 */
+  IC_64BIT_REXW_XD, /* 2061 */
+  IC_XS, /* 2062 */
+  IC_64BIT_REXW_XS, /* 2063 */
+  IC_OPSIZE, /* 2064 */
+  IC_64BIT_OPSIZE, /* 2065 */
+  IC_XS_OPSIZE, /* 2066 */
+  IC_64BIT_XS_OPSIZE, /* 2067 */
+  IC_XD_OPSIZE, /* 2068 */
+  IC_64BIT_XD_OPSIZE, /* 2069 */
+  IC_XS_OPSIZE, /* 2070 */
+  IC_64BIT_XD_OPSIZE, /* 2071 */
+  IC_OPSIZE, /* 2072 */
+  IC_64BIT_REXW_OPSIZE, /* 2073 */
+  IC_XS_OPSIZE, /* 2074 */
+  IC_64BIT_REXW_XS, /* 2075 */
+  IC_XD_OPSIZE, /* 2076 */
+  IC_64BIT_REXW_XD, /* 2077 */
+  IC_XS_OPSIZE, /* 2078 */
+  IC_64BIT_REXW_XS, /* 2079 */
+  IC_ADSIZE, /* 2080 */
+  IC_64BIT_ADSIZE, /* 2081 */
+  IC_XS, /* 2082 */
+  IC_64BIT_XS, /* 2083 */
+  IC_XD, /* 2084 */
+  IC_64BIT_XD, /* 2085 */
+  IC_XS, /* 2086 */
+  IC_64BIT_XS, /* 2087 */
+  IC_ADSIZE, /* 2088 */
+  IC_64BIT_ADSIZE, /* 2089 */
+  IC_XS, /* 2090 */
+  IC_64BIT_REXW_XS, /* 2091 */
+  IC_XD, /* 2092 */
+  IC_64BIT_REXW_XD, /* 2093 */
+  IC_XS, /* 2094 */
+  IC_64BIT_REXW_XS, /* 2095 */
+  IC_OPSIZE, /* 2096 */
+  IC_64BIT_OPSIZE, /* 2097 */
+  IC_XS_OPSIZE, /* 2098 */
+  IC_64BIT_XS_OPSIZE, /* 2099 */
+  IC_XD_OPSIZE, /* 2100 */
+  IC_64BIT_XD_OPSIZE, /* 2101 */
+  IC_XS_OPSIZE, /* 2102 */
+  IC_64BIT_XD_OPSIZE, /* 2103 */
+  IC_OPSIZE, /* 2104 */
+  IC_64BIT_REXW_OPSIZE, /* 2105 */
+  IC_XS_OPSIZE, /* 2106 */
+  IC_64BIT_REXW_XS, /* 2107 */
+  IC_XD_OPSIZE, /* 2108 */
+  IC_64BIT_REXW_XD, /* 2109 */
+  IC_XS_OPSIZE, /* 2110 */
+  IC_64BIT_REXW_XS, /* 2111 */
+  IC_VEX, /* 2112 */
+  IC_VEX, /* 2113 */
+  IC_VEX_XS, /* 2114 */
+  IC_VEX_XS, /* 2115 */
+  IC_VEX_XD, /* 2116 */
+  IC_VEX_XD, /* 2117 */
+  IC_VEX_XD, /* 2118 */
+  IC_VEX_XD, /* 2119 */
+  IC_VEX_W, /* 2120 */
+  IC_VEX_W, /* 2121 */
+  IC_VEX_W_XS, /* 2122 */
+  IC_VEX_W_XS, /* 2123 */
+  IC_VEX_W_XD, /* 2124 */
+  IC_VEX_W_XD, /* 2125 */
+  IC_VEX_W_XD, /* 2126 */
+  IC_VEX_W_XD, /* 2127 */
+  IC_VEX_OPSIZE, /* 2128 */
+  IC_VEX_OPSIZE, /* 2129 */
+  IC_VEX_OPSIZE, /* 2130 */
+  IC_VEX_OPSIZE, /* 2131 */
+  IC_VEX_OPSIZE, /* 2132 */
+  IC_VEX_OPSIZE, /* 2133 */
+  IC_VEX_OPSIZE, /* 2134 */
+  IC_VEX_OPSIZE, /* 2135 */
+  IC_VEX_W_OPSIZE, /* 2136 */
+  IC_VEX_W_OPSIZE, /* 2137 */
+  IC_VEX_W_OPSIZE, /* 2138 */
+  IC_VEX_W_OPSIZE, /* 2139 */
+  IC_VEX_W_OPSIZE, /* 2140 */
+  IC_VEX_W_OPSIZE, /* 2141 */
+  IC_VEX_W_OPSIZE, /* 2142 */
+  IC_VEX_W_OPSIZE, /* 2143 */
+  IC_VEX, /* 2144 */
+  IC_VEX, /* 2145 */
+  IC_VEX_XS, /* 2146 */
+  IC_VEX_XS, /* 2147 */
+  IC_VEX_XD, /* 2148 */
+  IC_VEX_XD, /* 2149 */
+  IC_VEX_XD, /* 2150 */
+  IC_VEX_XD, /* 2151 */
+  IC_VEX_W, /* 2152 */
+  IC_VEX_W, /* 2153 */
+  IC_VEX_W_XS, /* 2154 */
+  IC_VEX_W_XS, /* 2155 */
+  IC_VEX_W_XD, /* 2156 */
+  IC_VEX_W_XD, /* 2157 */
+  IC_VEX_W_XD, /* 2158 */
+  IC_VEX_W_XD, /* 2159 */
+  IC_VEX_OPSIZE, /* 2160 */
+  IC_VEX_OPSIZE, /* 2161 */
+  IC_VEX_OPSIZE, /* 2162 */
+  IC_VEX_OPSIZE, /* 2163 */
+  IC_VEX_OPSIZE, /* 2164 */
+  IC_VEX_OPSIZE, /* 2165 */
+  IC_VEX_OPSIZE, /* 2166 */
+  IC_VEX_OPSIZE, /* 2167 */
+  IC_VEX_W_OPSIZE, /* 2168 */
+  IC_VEX_W_OPSIZE, /* 2169 */
+  IC_VEX_W_OPSIZE, /* 2170 */
+  IC_VEX_W_OPSIZE, /* 2171 */
+  IC_VEX_W_OPSIZE, /* 2172 */
+  IC_VEX_W_OPSIZE, /* 2173 */
+  IC_VEX_W_OPSIZE, /* 2174 */
+  IC_VEX_W_OPSIZE, /* 2175 */
+  IC_VEX_L, /* 2176 */
+  IC_VEX_L, /* 2177 */
+  IC_VEX_L_XS, /* 2178 */
+  IC_VEX_L_XS, /* 2179 */
+  IC_VEX_L_XD, /* 2180 */
+  IC_VEX_L_XD, /* 2181 */
+  IC_VEX_L_XD, /* 2182 */
+  IC_VEX_L_XD, /* 2183 */
+  IC_VEX_L_W, /* 2184 */
+  IC_VEX_L_W, /* 2185 */
+  IC_VEX_L_W_XS, /* 2186 */
+  IC_VEX_L_W_XS, /* 2187 */
+  IC_VEX_L_W_XD, /* 2188 */
+  IC_VEX_L_W_XD, /* 2189 */
+  IC_VEX_L_W_XD, /* 2190 */
+  IC_VEX_L_W_XD, /* 2191 */
+  IC_VEX_L_OPSIZE, /* 2192 */
+  IC_VEX_L_OPSIZE, /* 2193 */
+  IC_VEX_L_OPSIZE, /* 2194 */
+  IC_VEX_L_OPSIZE, /* 2195 */
+  IC_VEX_L_OPSIZE, /* 2196 */
+  IC_VEX_L_OPSIZE, /* 2197 */
+  IC_VEX_L_OPSIZE, /* 2198 */
+  IC_VEX_L_OPSIZE, /* 2199 */
+  IC_VEX_L_W_OPSIZE, /* 2200 */
+  IC_VEX_L_W_OPSIZE, /* 2201 */
+  IC_VEX_L_W_OPSIZE, /* 2202 */
+  IC_VEX_L_W_OPSIZE, /* 2203 */
+  IC_VEX_L_W_OPSIZE, /* 2204 */
+  IC_VEX_L_W_OPSIZE, /* 2205 */
+  IC_VEX_L_W_OPSIZE, /* 2206 */
+  IC_VEX_L_W_OPSIZE, /* 2207 */
+  IC_VEX_L, /* 2208 */
+  IC_VEX_L, /* 2209 */
+  IC_VEX_L_XS, /* 2210 */
+  IC_VEX_L_XS, /* 2211 */
+  IC_VEX_L_XD, /* 2212 */
+  IC_VEX_L_XD, /* 2213 */
+  IC_VEX_L_XD, /* 2214 */
+  IC_VEX_L_XD, /* 2215 */
+  IC_VEX_L_W, /* 2216 */
+  IC_VEX_L_W, /* 2217 */
+  IC_VEX_L_W_XS, /* 2218 */
+  IC_VEX_L_W_XS, /* 2219 */
+  IC_VEX_L_W_XD, /* 2220 */
+  IC_VEX_L_W_XD, /* 2221 */
+  IC_VEX_L_W_XD, /* 2222 */
+  IC_VEX_L_W_XD, /* 2223 */
+  IC_VEX_L_OPSIZE, /* 2224 */
+  IC_VEX_L_OPSIZE, /* 2225 */
+  IC_VEX_L_OPSIZE, /* 2226 */
+  IC_VEX_L_OPSIZE, /* 2227 */
+  IC_VEX_L_OPSIZE, /* 2228 */
+  IC_VEX_L_OPSIZE, /* 2229 */
+  IC_VEX_L_OPSIZE, /* 2230 */
+  IC_VEX_L_OPSIZE, /* 2231 */
+  IC_VEX_L_W_OPSIZE, /* 2232 */
+  IC_VEX_L_W_OPSIZE, /* 2233 */
+  IC_VEX_L_W_OPSIZE, /* 2234 */
+  IC_VEX_L_W_OPSIZE, /* 2235 */
+  IC_VEX_L_W_OPSIZE, /* 2236 */
+  IC_VEX_L_W_OPSIZE, /* 2237 */
+  IC_VEX_L_W_OPSIZE, /* 2238 */
+  IC_VEX_L_W_OPSIZE, /* 2239 */
+  IC_VEX_L, /* 2240 */
+  IC_VEX_L, /* 2241 */
+  IC_VEX_L_XS, /* 2242 */
+  IC_VEX_L_XS, /* 2243 */
+  IC_VEX_L_XD, /* 2244 */
+  IC_VEX_L_XD, /* 2245 */
+  IC_VEX_L_XD, /* 2246 */
+  IC_VEX_L_XD, /* 2247 */
+  IC_VEX_L_W, /* 2248 */
+  IC_VEX_L_W, /* 2249 */
+  IC_VEX_L_W_XS, /* 2250 */
+  IC_VEX_L_W_XS, /* 2251 */
+  IC_VEX_L_W_XD, /* 2252 */
+  IC_VEX_L_W_XD, /* 2253 */
+  IC_VEX_L_W_XD, /* 2254 */
+  IC_VEX_L_W_XD, /* 2255 */
+  IC_VEX_L_OPSIZE, /* 2256 */
+  IC_VEX_L_OPSIZE, /* 2257 */
+  IC_VEX_L_OPSIZE, /* 2258 */
+  IC_VEX_L_OPSIZE, /* 2259 */
+  IC_VEX_L_OPSIZE, /* 2260 */
+  IC_VEX_L_OPSIZE, /* 2261 */
+  IC_VEX_L_OPSIZE, /* 2262 */
+  IC_VEX_L_OPSIZE, /* 2263 */
+  IC_VEX_L_W_OPSIZE, /* 2264 */
+  IC_VEX_L_W_OPSIZE, /* 2265 */
+  IC_VEX_L_W_OPSIZE, /* 2266 */
+  IC_VEX_L_W_OPSIZE, /* 2267 */
+  IC_VEX_L_W_OPSIZE, /* 2268 */
+  IC_VEX_L_W_OPSIZE, /* 2269 */
+  IC_VEX_L_W_OPSIZE, /* 2270 */
+  IC_VEX_L_W_OPSIZE, /* 2271 */
+  IC_VEX_L, /* 2272 */
+  IC_VEX_L, /* 2273 */
+  IC_VEX_L_XS, /* 2274 */
+  IC_VEX_L_XS, /* 2275 */
+  IC_VEX_L_XD, /* 2276 */
+  IC_VEX_L_XD, /* 2277 */
+  IC_VEX_L_XD, /* 2278 */
+  IC_VEX_L_XD, /* 2279 */
+  IC_VEX_L_W, /* 2280 */
+  IC_VEX_L_W, /* 2281 */
+  IC_VEX_L_W_XS, /* 2282 */
+  IC_VEX_L_W_XS, /* 2283 */
+  IC_VEX_L_W_XD, /* 2284 */
+  IC_VEX_L_W_XD, /* 2285 */
+  IC_VEX_L_W_XD, /* 2286 */
+  IC_VEX_L_W_XD, /* 2287 */
+  IC_VEX_L_OPSIZE, /* 2288 */
+  IC_VEX_L_OPSIZE, /* 2289 */
+  IC_VEX_L_OPSIZE, /* 2290 */
+  IC_VEX_L_OPSIZE, /* 2291 */
+  IC_VEX_L_OPSIZE, /* 2292 */
+  IC_VEX_L_OPSIZE, /* 2293 */
+  IC_VEX_L_OPSIZE, /* 2294 */
+  IC_VEX_L_OPSIZE, /* 2295 */
+  IC_VEX_L_W_OPSIZE, /* 2296 */
+  IC_VEX_L_W_OPSIZE, /* 2297 */
+  IC_VEX_L_W_OPSIZE, /* 2298 */
+  IC_VEX_L_W_OPSIZE, /* 2299 */
+  IC_VEX_L_W_OPSIZE, /* 2300 */
+  IC_VEX_L_W_OPSIZE, /* 2301 */
+  IC_VEX_L_W_OPSIZE, /* 2302 */
+  IC_VEX_L_W_OPSIZE, /* 2303 */
+  IC_EVEX_K, /* 2304 */
+  IC_EVEX_K, /* 2305 */
+  IC_EVEX_XS_K, /* 2306 */
+  IC_EVEX_XS_K, /* 2307 */
+  IC_EVEX_XD_K, /* 2308 */
+  IC_EVEX_XD_K, /* 2309 */
+  IC_EVEX_XD_K, /* 2310 */
+  IC_EVEX_XD_K, /* 2311 */
+  IC_EVEX_W_K, /* 2312 */
+  IC_EVEX_W_K, /* 2313 */
+  IC_EVEX_W_XS_K, /* 2314 */
+  IC_EVEX_W_XS_K, /* 2315 */
+  IC_EVEX_W_XD_K, /* 2316 */
+  IC_EVEX_W_XD_K, /* 2317 */
+  IC_EVEX_W_XD_K, /* 2318 */
+  IC_EVEX_W_XD_K, /* 2319 */
+  IC_EVEX_OPSIZE_K, /* 2320 */
+  IC_EVEX_OPSIZE_K, /* 2321 */
+  IC_EVEX_OPSIZE_K, /* 2322 */
+  IC_EVEX_OPSIZE_K, /* 2323 */
+  IC_EVEX_OPSIZE_K, /* 2324 */
+  IC_EVEX_OPSIZE_K, /* 2325 */
+  IC_EVEX_OPSIZE_K, /* 2326 */
+  IC_EVEX_OPSIZE_K, /* 2327 */
+  IC_EVEX_W_OPSIZE_K, /* 2328 */
+  IC_EVEX_W_OPSIZE_K, /* 2329 */
+  IC_EVEX_W_OPSIZE_K, /* 2330 */
+  IC_EVEX_W_OPSIZE_K, /* 2331 */
+  IC_EVEX_W_OPSIZE_K, /* 2332 */
+  IC_EVEX_W_OPSIZE_K, /* 2333 */
+  IC_EVEX_W_OPSIZE_K, /* 2334 */
+  IC_EVEX_W_OPSIZE_K, /* 2335 */
+  IC_EVEX_K, /* 2336 */
+  IC_EVEX_K, /* 2337 */
+  IC_EVEX_XS_K, /* 2338 */
+  IC_EVEX_XS_K, /* 2339 */
+  IC_EVEX_XD_K, /* 2340 */
+  IC_EVEX_XD_K, /* 2341 */
+  IC_EVEX_XD_K, /* 2342 */
+  IC_EVEX_XD_K, /* 2343 */
+  IC_EVEX_W_K, /* 2344 */
+  IC_EVEX_W_K, /* 2345 */
+  IC_EVEX_W_XS_K, /* 2346 */
+  IC_EVEX_W_XS_K, /* 2347 */
+  IC_EVEX_W_XD_K, /* 2348 */
+  IC_EVEX_W_XD_K, /* 2349 */
+  IC_EVEX_W_XD_K, /* 2350 */
+  IC_EVEX_W_XD_K, /* 2351 */
+  IC_EVEX_OPSIZE_K, /* 2352 */
+  IC_EVEX_OPSIZE_K, /* 2353 */
+  IC_EVEX_OPSIZE_K, /* 2354 */
+  IC_EVEX_OPSIZE_K, /* 2355 */
+  IC_EVEX_OPSIZE_K, /* 2356 */
+  IC_EVEX_OPSIZE_K, /* 2357 */
+  IC_EVEX_OPSIZE_K, /* 2358 */
+  IC_EVEX_OPSIZE_K, /* 2359 */
+  IC_EVEX_W_OPSIZE_K, /* 2360 */
+  IC_EVEX_W_OPSIZE_K, /* 2361 */
+  IC_EVEX_W_OPSIZE_K, /* 2362 */
+  IC_EVEX_W_OPSIZE_K, /* 2363 */
+  IC_EVEX_W_OPSIZE_K, /* 2364 */
+  IC_EVEX_W_OPSIZE_K, /* 2365 */
+  IC_EVEX_W_OPSIZE_K, /* 2366 */
+  IC_EVEX_W_OPSIZE_K, /* 2367 */
+  IC_EVEX_K, /* 2368 */
+  IC_EVEX_K, /* 2369 */
+  IC_EVEX_XS_K, /* 2370 */
+  IC_EVEX_XS_K, /* 2371 */
+  IC_EVEX_XD_K, /* 2372 */
+  IC_EVEX_XD_K, /* 2373 */
+  IC_EVEX_XD_K, /* 2374 */
+  IC_EVEX_XD_K, /* 2375 */
+  IC_EVEX_W_K, /* 2376 */
+  IC_EVEX_W_K, /* 2377 */
+  IC_EVEX_W_XS_K, /* 2378 */
+  IC_EVEX_W_XS_K, /* 2379 */
+  IC_EVEX_W_XD_K, /* 2380 */
+  IC_EVEX_W_XD_K, /* 2381 */
+  IC_EVEX_W_XD_K, /* 2382 */
+  IC_EVEX_W_XD_K, /* 2383 */
+  IC_EVEX_OPSIZE_K, /* 2384 */
+  IC_EVEX_OPSIZE_K, /* 2385 */
+  IC_EVEX_OPSIZE_K, /* 2386 */
+  IC_EVEX_OPSIZE_K, /* 2387 */
+  IC_EVEX_OPSIZE_K, /* 2388 */
+  IC_EVEX_OPSIZE_K, /* 2389 */
+  IC_EVEX_OPSIZE_K, /* 2390 */
+  IC_EVEX_OPSIZE_K, /* 2391 */
+  IC_EVEX_W_OPSIZE_K, /* 2392 */
+  IC_EVEX_W_OPSIZE_K, /* 2393 */
+  IC_EVEX_W_OPSIZE_K, /* 2394 */
+  IC_EVEX_W_OPSIZE_K, /* 2395 */
+  IC_EVEX_W_OPSIZE_K, /* 2396 */
+  IC_EVEX_W_OPSIZE_K, /* 2397 */
+  IC_EVEX_W_OPSIZE_K, /* 2398 */
+  IC_EVEX_W_OPSIZE_K, /* 2399 */
+  IC_EVEX_K, /* 2400 */
+  IC_EVEX_K, /* 2401 */
+  IC_EVEX_XS_K, /* 2402 */
+  IC_EVEX_XS_K, /* 2403 */
+  IC_EVEX_XD_K, /* 2404 */
+  IC_EVEX_XD_K, /* 2405 */
+  IC_EVEX_XD_K, /* 2406 */
+  IC_EVEX_XD_K, /* 2407 */
+  IC_EVEX_W_K, /* 2408 */
+  IC_EVEX_W_K, /* 2409 */
+  IC_EVEX_W_XS_K, /* 2410 */
+  IC_EVEX_W_XS_K, /* 2411 */
+  IC_EVEX_W_XD_K, /* 2412 */
+  IC_EVEX_W_XD_K, /* 2413 */
+  IC_EVEX_W_XD_K, /* 2414 */
+  IC_EVEX_W_XD_K, /* 2415 */
+  IC_EVEX_OPSIZE_K, /* 2416 */
+  IC_EVEX_OPSIZE_K, /* 2417 */
+  IC_EVEX_OPSIZE_K, /* 2418 */
+  IC_EVEX_OPSIZE_K, /* 2419 */
+  IC_EVEX_OPSIZE_K, /* 2420 */
+  IC_EVEX_OPSIZE_K, /* 2421 */
+  IC_EVEX_OPSIZE_K, /* 2422 */
+  IC_EVEX_OPSIZE_K, /* 2423 */
+  IC_EVEX_W_OPSIZE_K, /* 2424 */
+  IC_EVEX_W_OPSIZE_K, /* 2425 */
+  IC_EVEX_W_OPSIZE_K, /* 2426 */
+  IC_EVEX_W_OPSIZE_K, /* 2427 */
+  IC_EVEX_W_OPSIZE_K, /* 2428 */
+  IC_EVEX_W_OPSIZE_K, /* 2429 */
+  IC_EVEX_W_OPSIZE_K, /* 2430 */
+  IC_EVEX_W_OPSIZE_K, /* 2431 */
+  IC_EVEX_K, /* 2432 */
+  IC_EVEX_K, /* 2433 */
+  IC_EVEX_XS_K, /* 2434 */
+  IC_EVEX_XS_K, /* 2435 */
+  IC_EVEX_XD_K, /* 2436 */
+  IC_EVEX_XD_K, /* 2437 */
+  IC_EVEX_XD_K, /* 2438 */
+  IC_EVEX_XD_K, /* 2439 */
+  IC_EVEX_W_K, /* 2440 */
+  IC_EVEX_W_K, /* 2441 */
+  IC_EVEX_W_XS_K, /* 2442 */
+  IC_EVEX_W_XS_K, /* 2443 */
+  IC_EVEX_W_XD_K, /* 2444 */
+  IC_EVEX_W_XD_K, /* 2445 */
+  IC_EVEX_W_XD_K, /* 2446 */
+  IC_EVEX_W_XD_K, /* 2447 */
+  IC_EVEX_OPSIZE_K, /* 2448 */
+  IC_EVEX_OPSIZE_K, /* 2449 */
+  IC_EVEX_OPSIZE_K, /* 2450 */
+  IC_EVEX_OPSIZE_K, /* 2451 */
+  IC_EVEX_OPSIZE_K, /* 2452 */
+  IC_EVEX_OPSIZE_K, /* 2453 */
+  IC_EVEX_OPSIZE_K, /* 2454 */
+  IC_EVEX_OPSIZE_K, /* 2455 */
+  IC_EVEX_W_OPSIZE_K, /* 2456 */
+  IC_EVEX_W_OPSIZE_K, /* 2457 */
+  IC_EVEX_W_OPSIZE_K, /* 2458 */
+  IC_EVEX_W_OPSIZE_K, /* 2459 */
+  IC_EVEX_W_OPSIZE_K, /* 2460 */
+  IC_EVEX_W_OPSIZE_K, /* 2461 */
+  IC_EVEX_W_OPSIZE_K, /* 2462 */
+  IC_EVEX_W_OPSIZE_K, /* 2463 */
+  IC_EVEX_K, /* 2464 */
+  IC_EVEX_K, /* 2465 */
+  IC_EVEX_XS_K, /* 2466 */
+  IC_EVEX_XS_K, /* 2467 */
+  IC_EVEX_XD_K, /* 2468 */
+  IC_EVEX_XD_K, /* 2469 */
+  IC_EVEX_XD_K, /* 2470 */
+  IC_EVEX_XD_K, /* 2471 */
+  IC_EVEX_W_K, /* 2472 */
+  IC_EVEX_W_K, /* 2473 */
+  IC_EVEX_W_XS_K, /* 2474 */
+  IC_EVEX_W_XS_K, /* 2475 */
+  IC_EVEX_W_XD_K, /* 2476 */
+  IC_EVEX_W_XD_K, /* 2477 */
+  IC_EVEX_W_XD_K, /* 2478 */
+  IC_EVEX_W_XD_K, /* 2479 */
+  IC_EVEX_OPSIZE_K, /* 2480 */
+  IC_EVEX_OPSIZE_K, /* 2481 */
+  IC_EVEX_OPSIZE_K, /* 2482 */
+  IC_EVEX_OPSIZE_K, /* 2483 */
+  IC_EVEX_OPSIZE_K, /* 2484 */
+  IC_EVEX_OPSIZE_K, /* 2485 */
+  IC_EVEX_OPSIZE_K, /* 2486 */
+  IC_EVEX_OPSIZE_K, /* 2487 */
+  IC_EVEX_W_OPSIZE_K, /* 2488 */
+  IC_EVEX_W_OPSIZE_K, /* 2489 */
+  IC_EVEX_W_OPSIZE_K, /* 2490 */
+  IC_EVEX_W_OPSIZE_K, /* 2491 */
+  IC_EVEX_W_OPSIZE_K, /* 2492 */
+  IC_EVEX_W_OPSIZE_K, /* 2493 */
+  IC_EVEX_W_OPSIZE_K, /* 2494 */
+  IC_EVEX_W_OPSIZE_K, /* 2495 */
+  IC_EVEX_K, /* 2496 */
+  IC_EVEX_K, /* 2497 */
+  IC_EVEX_XS_K, /* 2498 */
+  IC_EVEX_XS_K, /* 2499 */
+  IC_EVEX_XD_K, /* 2500 */
+  IC_EVEX_XD_K, /* 2501 */
+  IC_EVEX_XD_K, /* 2502 */
+  IC_EVEX_XD_K, /* 2503 */
+  IC_EVEX_W_K, /* 2504 */
+  IC_EVEX_W_K, /* 2505 */
+  IC_EVEX_W_XS_K, /* 2506 */
+  IC_EVEX_W_XS_K, /* 2507 */
+  IC_EVEX_W_XD_K, /* 2508 */
+  IC_EVEX_W_XD_K, /* 2509 */
+  IC_EVEX_W_XD_K, /* 2510 */
+  IC_EVEX_W_XD_K, /* 2511 */
+  IC_EVEX_OPSIZE_K, /* 2512 */
+  IC_EVEX_OPSIZE_K, /* 2513 */
+  IC_EVEX_OPSIZE_K, /* 2514 */
+  IC_EVEX_OPSIZE_K, /* 2515 */
+  IC_EVEX_OPSIZE_K, /* 2516 */
+  IC_EVEX_OPSIZE_K, /* 2517 */
+  IC_EVEX_OPSIZE_K, /* 2518 */
+  IC_EVEX_OPSIZE_K, /* 2519 */
+  IC_EVEX_W_OPSIZE_K, /* 2520 */
+  IC_EVEX_W_OPSIZE_K, /* 2521 */
+  IC_EVEX_W_OPSIZE_K, /* 2522 */
+  IC_EVEX_W_OPSIZE_K, /* 2523 */
+  IC_EVEX_W_OPSIZE_K, /* 2524 */
+  IC_EVEX_W_OPSIZE_K, /* 2525 */
+  IC_EVEX_W_OPSIZE_K, /* 2526 */
+  IC_EVEX_W_OPSIZE_K, /* 2527 */
+  IC_EVEX_K, /* 2528 */
+  IC_EVEX_K, /* 2529 */
+  IC_EVEX_XS_K, /* 2530 */
+  IC_EVEX_XS_K, /* 2531 */
+  IC_EVEX_XD_K, /* 2532 */
+  IC_EVEX_XD_K, /* 2533 */
+  IC_EVEX_XD_K, /* 2534 */
+  IC_EVEX_XD_K, /* 2535 */
+  IC_EVEX_W_K, /* 2536 */
+  IC_EVEX_W_K, /* 2537 */
+  IC_EVEX_W_XS_K, /* 2538 */
+  IC_EVEX_W_XS_K, /* 2539 */
+  IC_EVEX_W_XD_K, /* 2540 */
+  IC_EVEX_W_XD_K, /* 2541 */
+  IC_EVEX_W_XD_K, /* 2542 */
+  IC_EVEX_W_XD_K, /* 2543 */
+  IC_EVEX_OPSIZE_K, /* 2544 */
+  IC_EVEX_OPSIZE_K, /* 2545 */
+  IC_EVEX_OPSIZE_K, /* 2546 */
+  IC_EVEX_OPSIZE_K, /* 2547 */
+  IC_EVEX_OPSIZE_K, /* 2548 */
+  IC_EVEX_OPSIZE_K, /* 2549 */
+  IC_EVEX_OPSIZE_K, /* 2550 */
+  IC_EVEX_OPSIZE_K, /* 2551 */
+  IC_EVEX_W_OPSIZE_K, /* 2552 */
+  IC_EVEX_W_OPSIZE_K, /* 2553 */
+  IC_EVEX_W_OPSIZE_K, /* 2554 */
+  IC_EVEX_W_OPSIZE_K, /* 2555 */
+  IC_EVEX_W_OPSIZE_K, /* 2556 */
+  IC_EVEX_W_OPSIZE_K, /* 2557 */
+  IC_EVEX_W_OPSIZE_K, /* 2558 */
+  IC_EVEX_W_OPSIZE_K, /* 2559 */
+  IC, /* 2560 */
+  IC_64BIT, /* 2561 */
+  IC_XS, /* 2562 */
+  IC_64BIT_XS, /* 2563 */
+  IC_XD, /* 2564 */
+  IC_64BIT_XD, /* 2565 */
+  IC_XS, /* 2566 */
+  IC_64BIT_XS, /* 2567 */
+  IC, /* 2568 */
+  IC_64BIT_REXW, /* 2569 */
+  IC_XS, /* 2570 */
+  IC_64BIT_REXW_XS, /* 2571 */
+  IC_XD, /* 2572 */
+  IC_64BIT_REXW_XD, /* 2573 */
+  IC_XS, /* 2574 */
+  IC_64BIT_REXW_XS, /* 2575 */
+  IC_OPSIZE, /* 2576 */
+  IC_64BIT_OPSIZE, /* 2577 */
+  IC_XS_OPSIZE, /* 2578 */
+  IC_64BIT_XS_OPSIZE, /* 2579 */
+  IC_XD_OPSIZE, /* 2580 */
+  IC_64BIT_XD_OPSIZE, /* 2581 */
+  IC_XS_OPSIZE, /* 2582 */
+  IC_64BIT_XD_OPSIZE, /* 2583 */
+  IC_OPSIZE, /* 2584 */
+  IC_64BIT_REXW_OPSIZE, /* 2585 */
+  IC_XS_OPSIZE, /* 2586 */
+  IC_64BIT_REXW_XS, /* 2587 */
+  IC_XD_OPSIZE, /* 2588 */
+  IC_64BIT_REXW_XD, /* 2589 */
+  IC_XS_OPSIZE, /* 2590 */
+  IC_64BIT_REXW_XS, /* 2591 */
+  IC_ADSIZE, /* 2592 */
+  IC_64BIT_ADSIZE, /* 2593 */
+  IC_XS, /* 2594 */
+  IC_64BIT_XS, /* 2595 */
+  IC_XD, /* 2596 */
+  IC_64BIT_XD, /* 2597 */
+  IC_XS, /* 2598 */
+  IC_64BIT_XS, /* 2599 */
+  IC_ADSIZE, /* 2600 */
+  IC_64BIT_ADSIZE, /* 2601 */
+  IC_XS, /* 2602 */
+  IC_64BIT_REXW_XS, /* 2603 */
+  IC_XD, /* 2604 */
+  IC_64BIT_REXW_XD, /* 2605 */
+  IC_XS, /* 2606 */
+  IC_64BIT_REXW_XS, /* 2607 */
+  IC_OPSIZE, /* 2608 */
+  IC_64BIT_OPSIZE, /* 2609 */
+  IC_XS_OPSIZE, /* 2610 */
+  IC_64BIT_XS_OPSIZE, /* 2611 */
+  IC_XD_OPSIZE, /* 2612 */
+  IC_64BIT_XD_OPSIZE, /* 2613 */
+  IC_XS_OPSIZE, /* 2614 */
+  IC_64BIT_XD_OPSIZE, /* 2615 */
+  IC_OPSIZE, /* 2616 */
+  IC_64BIT_REXW_OPSIZE, /* 2617 */
+  IC_XS_OPSIZE, /* 2618 */
+  IC_64BIT_REXW_XS, /* 2619 */
+  IC_XD_OPSIZE, /* 2620 */
+  IC_64BIT_REXW_XD, /* 2621 */
+  IC_XS_OPSIZE, /* 2622 */
+  IC_64BIT_REXW_XS, /* 2623 */
+  IC_VEX, /* 2624 */
+  IC_VEX, /* 2625 */
+  IC_VEX_XS, /* 2626 */
+  IC_VEX_XS, /* 2627 */
+  IC_VEX_XD, /* 2628 */
+  IC_VEX_XD, /* 2629 */
+  IC_VEX_XD, /* 2630 */
+  IC_VEX_XD, /* 2631 */
+  IC_VEX_W, /* 2632 */
+  IC_VEX_W, /* 2633 */
+  IC_VEX_W_XS, /* 2634 */
+  IC_VEX_W_XS, /* 2635 */
+  IC_VEX_W_XD, /* 2636 */
+  IC_VEX_W_XD, /* 2637 */
+  IC_VEX_W_XD, /* 2638 */
+  IC_VEX_W_XD, /* 2639 */
+  IC_VEX_OPSIZE, /* 2640 */
+  IC_VEX_OPSIZE, /* 2641 */
+  IC_VEX_OPSIZE, /* 2642 */
+  IC_VEX_OPSIZE, /* 2643 */
+  IC_VEX_OPSIZE, /* 2644 */
+  IC_VEX_OPSIZE, /* 2645 */
+  IC_VEX_OPSIZE, /* 2646 */
+  IC_VEX_OPSIZE, /* 2647 */
+  IC_VEX_W_OPSIZE, /* 2648 */
+  IC_VEX_W_OPSIZE, /* 2649 */
+  IC_VEX_W_OPSIZE, /* 2650 */
+  IC_VEX_W_OPSIZE, /* 2651 */
+  IC_VEX_W_OPSIZE, /* 2652 */
+  IC_VEX_W_OPSIZE, /* 2653 */
+  IC_VEX_W_OPSIZE, /* 2654 */
+  IC_VEX_W_OPSIZE, /* 2655 */
+  IC_VEX, /* 2656 */
+  IC_VEX, /* 2657 */
+  IC_VEX_XS, /* 2658 */
+  IC_VEX_XS, /* 2659 */
+  IC_VEX_XD, /* 2660 */
+  IC_VEX_XD, /* 2661 */
+  IC_VEX_XD, /* 2662 */
+  IC_VEX_XD, /* 2663 */
+  IC_VEX_W, /* 2664 */
+  IC_VEX_W, /* 2665 */
+  IC_VEX_W_XS, /* 2666 */
+  IC_VEX_W_XS, /* 2667 */
+  IC_VEX_W_XD, /* 2668 */
+  IC_VEX_W_XD, /* 2669 */
+  IC_VEX_W_XD, /* 2670 */
+  IC_VEX_W_XD, /* 2671 */
+  IC_VEX_OPSIZE, /* 2672 */
+  IC_VEX_OPSIZE, /* 2673 */
+  IC_VEX_OPSIZE, /* 2674 */
+  IC_VEX_OPSIZE, /* 2675 */
+  IC_VEX_OPSIZE, /* 2676 */
+  IC_VEX_OPSIZE, /* 2677 */
+  IC_VEX_OPSIZE, /* 2678 */
+  IC_VEX_OPSIZE, /* 2679 */
+  IC_VEX_W_OPSIZE, /* 2680 */
+  IC_VEX_W_OPSIZE, /* 2681 */
+  IC_VEX_W_OPSIZE, /* 2682 */
+  IC_VEX_W_OPSIZE, /* 2683 */
+  IC_VEX_W_OPSIZE, /* 2684 */
+  IC_VEX_W_OPSIZE, /* 2685 */
+  IC_VEX_W_OPSIZE, /* 2686 */
+  IC_VEX_W_OPSIZE, /* 2687 */
+  IC_VEX_L, /* 2688 */
+  IC_VEX_L, /* 2689 */
+  IC_VEX_L_XS, /* 2690 */
+  IC_VEX_L_XS, /* 2691 */
+  IC_VEX_L_XD, /* 2692 */
+  IC_VEX_L_XD, /* 2693 */
+  IC_VEX_L_XD, /* 2694 */
+  IC_VEX_L_XD, /* 2695 */
+  IC_VEX_L_W, /* 2696 */
+  IC_VEX_L_W, /* 2697 */
+  IC_VEX_L_W_XS, /* 2698 */
+  IC_VEX_L_W_XS, /* 2699 */
+  IC_VEX_L_W_XD, /* 2700 */
+  IC_VEX_L_W_XD, /* 2701 */
+  IC_VEX_L_W_XD, /* 2702 */
+  IC_VEX_L_W_XD, /* 2703 */
+  IC_VEX_L_OPSIZE, /* 2704 */
+  IC_VEX_L_OPSIZE, /* 2705 */
+  IC_VEX_L_OPSIZE, /* 2706 */
+  IC_VEX_L_OPSIZE, /* 2707 */
+  IC_VEX_L_OPSIZE, /* 2708 */
+  IC_VEX_L_OPSIZE, /* 2709 */
+  IC_VEX_L_OPSIZE, /* 2710 */
+  IC_VEX_L_OPSIZE, /* 2711 */
+  IC_VEX_L_W_OPSIZE, /* 2712 */
+  IC_VEX_L_W_OPSIZE, /* 2713 */
+  IC_VEX_L_W_OPSIZE, /* 2714 */
+  IC_VEX_L_W_OPSIZE, /* 2715 */
+  IC_VEX_L_W_OPSIZE, /* 2716 */
+  IC_VEX_L_W_OPSIZE, /* 2717 */
+  IC_VEX_L_W_OPSIZE, /* 2718 */
+  IC_VEX_L_W_OPSIZE, /* 2719 */
+  IC_VEX_L, /* 2720 */
+  IC_VEX_L, /* 2721 */
+  IC_VEX_L_XS, /* 2722 */
+  IC_VEX_L_XS, /* 2723 */
+  IC_VEX_L_XD, /* 2724 */
+  IC_VEX_L_XD, /* 2725 */
+  IC_VEX_L_XD, /* 2726 */
+  IC_VEX_L_XD, /* 2727 */
+  IC_VEX_L_W, /* 2728 */
+  IC_VEX_L_W, /* 2729 */
+  IC_VEX_L_W_XS, /* 2730 */
+  IC_VEX_L_W_XS, /* 2731 */
+  IC_VEX_L_W_XD, /* 2732 */
+  IC_VEX_L_W_XD, /* 2733 */
+  IC_VEX_L_W_XD, /* 2734 */
+  IC_VEX_L_W_XD, /* 2735 */
+  IC_VEX_L_OPSIZE, /* 2736 */
+  IC_VEX_L_OPSIZE, /* 2737 */
+  IC_VEX_L_OPSIZE, /* 2738 */
+  IC_VEX_L_OPSIZE, /* 2739 */
+  IC_VEX_L_OPSIZE, /* 2740 */
+  IC_VEX_L_OPSIZE, /* 2741 */
+  IC_VEX_L_OPSIZE, /* 2742 */
+  IC_VEX_L_OPSIZE, /* 2743 */
+  IC_VEX_L_W_OPSIZE, /* 2744 */
+  IC_VEX_L_W_OPSIZE, /* 2745 */
+  IC_VEX_L_W_OPSIZE, /* 2746 */
+  IC_VEX_L_W_OPSIZE, /* 2747 */
+  IC_VEX_L_W_OPSIZE, /* 2748 */
+  IC_VEX_L_W_OPSIZE, /* 2749 */
+  IC_VEX_L_W_OPSIZE, /* 2750 */
+  IC_VEX_L_W_OPSIZE, /* 2751 */
+  IC_VEX_L, /* 2752 */
+  IC_VEX_L, /* 2753 */
+  IC_VEX_L_XS, /* 2754 */
+  IC_VEX_L_XS, /* 2755 */
+  IC_VEX_L_XD, /* 2756 */
+  IC_VEX_L_XD, /* 2757 */
+  IC_VEX_L_XD, /* 2758 */
+  IC_VEX_L_XD, /* 2759 */
+  IC_VEX_L_W, /* 2760 */
+  IC_VEX_L_W, /* 2761 */
+  IC_VEX_L_W_XS, /* 2762 */
+  IC_VEX_L_W_XS, /* 2763 */
+  IC_VEX_L_W_XD, /* 2764 */
+  IC_VEX_L_W_XD, /* 2765 */
+  IC_VEX_L_W_XD, /* 2766 */
+  IC_VEX_L_W_XD, /* 2767 */
+  IC_VEX_L_OPSIZE, /* 2768 */
+  IC_VEX_L_OPSIZE, /* 2769 */
+  IC_VEX_L_OPSIZE, /* 2770 */
+  IC_VEX_L_OPSIZE, /* 2771 */
+  IC_VEX_L_OPSIZE, /* 2772 */
+  IC_VEX_L_OPSIZE, /* 2773 */
+  IC_VEX_L_OPSIZE, /* 2774 */
+  IC_VEX_L_OPSIZE, /* 2775 */
+  IC_VEX_L_W_OPSIZE, /* 2776 */
+  IC_VEX_L_W_OPSIZE, /* 2777 */
+  IC_VEX_L_W_OPSIZE, /* 2778 */
+  IC_VEX_L_W_OPSIZE, /* 2779 */
+  IC_VEX_L_W_OPSIZE, /* 2780 */
+  IC_VEX_L_W_OPSIZE, /* 2781 */
+  IC_VEX_L_W_OPSIZE, /* 2782 */
+  IC_VEX_L_W_OPSIZE, /* 2783 */
+  IC_VEX_L, /* 2784 */
+  IC_VEX_L, /* 2785 */
+  IC_VEX_L_XS, /* 2786 */
+  IC_VEX_L_XS, /* 2787 */
+  IC_VEX_L_XD, /* 2788 */
+  IC_VEX_L_XD, /* 2789 */
+  IC_VEX_L_XD, /* 2790 */
+  IC_VEX_L_XD, /* 2791 */
+  IC_VEX_L_W, /* 2792 */
+  IC_VEX_L_W, /* 2793 */
+  IC_VEX_L_W_XS, /* 2794 */
+  IC_VEX_L_W_XS, /* 2795 */
+  IC_VEX_L_W_XD, /* 2796 */
+  IC_VEX_L_W_XD, /* 2797 */
+  IC_VEX_L_W_XD, /* 2798 */
+  IC_VEX_L_W_XD, /* 2799 */
+  IC_VEX_L_OPSIZE, /* 2800 */
+  IC_VEX_L_OPSIZE, /* 2801 */
+  IC_VEX_L_OPSIZE, /* 2802 */
+  IC_VEX_L_OPSIZE, /* 2803 */
+  IC_VEX_L_OPSIZE, /* 2804 */
+  IC_VEX_L_OPSIZE, /* 2805 */
+  IC_VEX_L_OPSIZE, /* 2806 */
+  IC_VEX_L_OPSIZE, /* 2807 */
+  IC_VEX_L_W_OPSIZE, /* 2808 */
+  IC_VEX_L_W_OPSIZE, /* 2809 */
+  IC_VEX_L_W_OPSIZE, /* 2810 */
+  IC_VEX_L_W_OPSIZE, /* 2811 */
+  IC_VEX_L_W_OPSIZE, /* 2812 */
+  IC_VEX_L_W_OPSIZE, /* 2813 */
+  IC_VEX_L_W_OPSIZE, /* 2814 */
+  IC_VEX_L_W_OPSIZE, /* 2815 */
+  IC_EVEX_L_K, /* 2816 */
+  IC_EVEX_L_K, /* 2817 */
+  IC_EVEX_L_XS_K, /* 2818 */
+  IC_EVEX_L_XS_K, /* 2819 */
+  IC_EVEX_L_XD_K, /* 2820 */
+  IC_EVEX_L_XD_K, /* 2821 */
+  IC_EVEX_L_XD_K, /* 2822 */
+  IC_EVEX_L_XD_K, /* 2823 */
+  IC_EVEX_L_W_K, /* 2824 */
+  IC_EVEX_L_W_K, /* 2825 */
+  IC_EVEX_L_W_XS_K, /* 2826 */
+  IC_EVEX_L_W_XS_K, /* 2827 */
+  IC_EVEX_L_W_XD_K, /* 2828 */
+  IC_EVEX_L_W_XD_K, /* 2829 */
+  IC_EVEX_L_W_XD_K, /* 2830 */
+  IC_EVEX_L_W_XD_K, /* 2831 */
+  IC_EVEX_L_OPSIZE_K, /* 2832 */
+  IC_EVEX_L_OPSIZE_K, /* 2833 */
+  IC_EVEX_L_OPSIZE_K, /* 2834 */
+  IC_EVEX_L_OPSIZE_K, /* 2835 */
+  IC_EVEX_L_OPSIZE_K, /* 2836 */
+  IC_EVEX_L_OPSIZE_K, /* 2837 */
+  IC_EVEX_L_OPSIZE_K, /* 2838 */
+  IC_EVEX_L_OPSIZE_K, /* 2839 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2840 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2841 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2842 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2843 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2844 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2845 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2846 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2847 */
+  IC_EVEX_L_K, /* 2848 */
+  IC_EVEX_L_K, /* 2849 */
+  IC_EVEX_L_XS_K, /* 2850 */
+  IC_EVEX_L_XS_K, /* 2851 */
+  IC_EVEX_L_XD_K, /* 2852 */
+  IC_EVEX_L_XD_K, /* 2853 */
+  IC_EVEX_L_XD_K, /* 2854 */
+  IC_EVEX_L_XD_K, /* 2855 */
+  IC_EVEX_L_W_K, /* 2856 */
+  IC_EVEX_L_W_K, /* 2857 */
+  IC_EVEX_L_W_XS_K, /* 2858 */
+  IC_EVEX_L_W_XS_K, /* 2859 */
+  IC_EVEX_L_W_XD_K, /* 2860 */
+  IC_EVEX_L_W_XD_K, /* 2861 */
+  IC_EVEX_L_W_XD_K, /* 2862 */
+  IC_EVEX_L_W_XD_K, /* 2863 */
+  IC_EVEX_L_OPSIZE_K, /* 2864 */
+  IC_EVEX_L_OPSIZE_K, /* 2865 */
+  IC_EVEX_L_OPSIZE_K, /* 2866 */
+  IC_EVEX_L_OPSIZE_K, /* 2867 */
+  IC_EVEX_L_OPSIZE_K, /* 2868 */
+  IC_EVEX_L_OPSIZE_K, /* 2869 */
+  IC_EVEX_L_OPSIZE_K, /* 2870 */
+  IC_EVEX_L_OPSIZE_K, /* 2871 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2872 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2873 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2874 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2875 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2876 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2877 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2878 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2879 */
+  IC_EVEX_L_K, /* 2880 */
+  IC_EVEX_L_K, /* 2881 */
+  IC_EVEX_L_XS_K, /* 2882 */
+  IC_EVEX_L_XS_K, /* 2883 */
+  IC_EVEX_L_XD_K, /* 2884 */
+  IC_EVEX_L_XD_K, /* 2885 */
+  IC_EVEX_L_XD_K, /* 2886 */
+  IC_EVEX_L_XD_K, /* 2887 */
+  IC_EVEX_L_W_K, /* 2888 */
+  IC_EVEX_L_W_K, /* 2889 */
+  IC_EVEX_L_W_XS_K, /* 2890 */
+  IC_EVEX_L_W_XS_K, /* 2891 */
+  IC_EVEX_L_W_XD_K, /* 2892 */
+  IC_EVEX_L_W_XD_K, /* 2893 */
+  IC_EVEX_L_W_XD_K, /* 2894 */
+  IC_EVEX_L_W_XD_K, /* 2895 */
+  IC_EVEX_L_OPSIZE_K, /* 2896 */
+  IC_EVEX_L_OPSIZE_K, /* 2897 */
+  IC_EVEX_L_OPSIZE_K, /* 2898 */
+  IC_EVEX_L_OPSIZE_K, /* 2899 */
+  IC_EVEX_L_OPSIZE_K, /* 2900 */
+  IC_EVEX_L_OPSIZE_K, /* 2901 */
+  IC_EVEX_L_OPSIZE_K, /* 2902 */
+  IC_EVEX_L_OPSIZE_K, /* 2903 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2904 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2905 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2906 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2907 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2908 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2909 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2910 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2911 */
+  IC_EVEX_L_K, /* 2912 */
+  IC_EVEX_L_K, /* 2913 */
+  IC_EVEX_L_XS_K, /* 2914 */
+  IC_EVEX_L_XS_K, /* 2915 */
+  IC_EVEX_L_XD_K, /* 2916 */
+  IC_EVEX_L_XD_K, /* 2917 */
+  IC_EVEX_L_XD_K, /* 2918 */
+  IC_EVEX_L_XD_K, /* 2919 */
+  IC_EVEX_L_W_K, /* 2920 */
+  IC_EVEX_L_W_K, /* 2921 */
+  IC_EVEX_L_W_XS_K, /* 2922 */
+  IC_EVEX_L_W_XS_K, /* 2923 */
+  IC_EVEX_L_W_XD_K, /* 2924 */
+  IC_EVEX_L_W_XD_K, /* 2925 */
+  IC_EVEX_L_W_XD_K, /* 2926 */
+  IC_EVEX_L_W_XD_K, /* 2927 */
+  IC_EVEX_L_OPSIZE_K, /* 2928 */
+  IC_EVEX_L_OPSIZE_K, /* 2929 */
+  IC_EVEX_L_OPSIZE_K, /* 2930 */
+  IC_EVEX_L_OPSIZE_K, /* 2931 */
+  IC_EVEX_L_OPSIZE_K, /* 2932 */
+  IC_EVEX_L_OPSIZE_K, /* 2933 */
+  IC_EVEX_L_OPSIZE_K, /* 2934 */
+  IC_EVEX_L_OPSIZE_K, /* 2935 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2936 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2937 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2938 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2939 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2940 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2941 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2942 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2943 */
+  IC_EVEX_L_K, /* 2944 */
+  IC_EVEX_L_K, /* 2945 */
+  IC_EVEX_L_XS_K, /* 2946 */
+  IC_EVEX_L_XS_K, /* 2947 */
+  IC_EVEX_L_XD_K, /* 2948 */
+  IC_EVEX_L_XD_K, /* 2949 */
+  IC_EVEX_L_XD_K, /* 2950 */
+  IC_EVEX_L_XD_K, /* 2951 */
+  IC_EVEX_L_W_K, /* 2952 */
+  IC_EVEX_L_W_K, /* 2953 */
+  IC_EVEX_L_W_XS_K, /* 2954 */
+  IC_EVEX_L_W_XS_K, /* 2955 */
+  IC_EVEX_L_W_XD_K, /* 2956 */
+  IC_EVEX_L_W_XD_K, /* 2957 */
+  IC_EVEX_L_W_XD_K, /* 2958 */
+  IC_EVEX_L_W_XD_K, /* 2959 */
+  IC_EVEX_L_OPSIZE_K, /* 2960 */
+  IC_EVEX_L_OPSIZE_K, /* 2961 */
+  IC_EVEX_L_OPSIZE_K, /* 2962 */
+  IC_EVEX_L_OPSIZE_K, /* 2963 */
+  IC_EVEX_L_OPSIZE_K, /* 2964 */
+  IC_EVEX_L_OPSIZE_K, /* 2965 */
+  IC_EVEX_L_OPSIZE_K, /* 2966 */
+  IC_EVEX_L_OPSIZE_K, /* 2967 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2968 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2969 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2970 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2971 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2972 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2973 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2974 */
+  IC_EVEX_L_W_OPSIZE_K, /* 2975 */
+  IC_EVEX_L_K, /* 2976 */
+  IC_EVEX_L_K, /* 2977 */
+  IC_EVEX_L_XS_K, /* 2978 */
+  IC_EVEX_L_XS_K, /* 2979 */
+  IC_EVEX_L_XD_K, /* 2980 */
+  IC_EVEX_L_XD_K, /* 2981 */
+  IC_EVEX_L_XD_K, /* 2982 */
+  IC_EVEX_L_XD_K, /* 2983 */
+  IC_EVEX_L_W_K, /* 2984 */
+  IC_EVEX_L_W_K, /* 2985 */
+  IC_EVEX_L_W_XS_K, /* 2986 */
+  IC_EVEX_L_W_XS_K, /* 2987 */
+  IC_EVEX_L_W_XD_K, /* 2988 */
+  IC_EVEX_L_W_XD_K, /* 2989 */
+  IC_EVEX_L_W_XD_K, /* 2990 */
+  IC_EVEX_L_W_XD_K, /* 2991 */
+  IC_EVEX_L_OPSIZE_K, /* 2992 */
+  IC_EVEX_L_OPSIZE_K, /* 2993 */
+  IC_EVEX_L_OPSIZE_K, /* 2994 */
+  IC_EVEX_L_OPSIZE_K, /* 2995 */
+  IC_EVEX_L_OPSIZE_K, /* 2996 */
+  IC_EVEX_L_OPSIZE_K, /* 2997 */
+  IC_EVEX_L_OPSIZE_K, /* 2998 */
+  IC_EVEX_L_OPSIZE_K, /* 2999 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3000 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3001 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3002 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3003 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3004 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3005 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3006 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3007 */
+  IC_EVEX_L_K, /* 3008 */
+  IC_EVEX_L_K, /* 3009 */
+  IC_EVEX_L_XS_K, /* 3010 */
+  IC_EVEX_L_XS_K, /* 3011 */
+  IC_EVEX_L_XD_K, /* 3012 */
+  IC_EVEX_L_XD_K, /* 3013 */
+  IC_EVEX_L_XD_K, /* 3014 */
+  IC_EVEX_L_XD_K, /* 3015 */
+  IC_EVEX_L_W_K, /* 3016 */
+  IC_EVEX_L_W_K, /* 3017 */
+  IC_EVEX_L_W_XS_K, /* 3018 */
+  IC_EVEX_L_W_XS_K, /* 3019 */
+  IC_EVEX_L_W_XD_K, /* 3020 */
+  IC_EVEX_L_W_XD_K, /* 3021 */
+  IC_EVEX_L_W_XD_K, /* 3022 */
+  IC_EVEX_L_W_XD_K, /* 3023 */
+  IC_EVEX_L_OPSIZE_K, /* 3024 */
+  IC_EVEX_L_OPSIZE_K, /* 3025 */
+  IC_EVEX_L_OPSIZE_K, /* 3026 */
+  IC_EVEX_L_OPSIZE_K, /* 3027 */
+  IC_EVEX_L_OPSIZE_K, /* 3028 */
+  IC_EVEX_L_OPSIZE_K, /* 3029 */
+  IC_EVEX_L_OPSIZE_K, /* 3030 */
+  IC_EVEX_L_OPSIZE_K, /* 3031 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3032 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3033 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3034 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3035 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3036 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3037 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3038 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3039 */
+  IC_EVEX_L_K, /* 3040 */
+  IC_EVEX_L_K, /* 3041 */
+  IC_EVEX_L_XS_K, /* 3042 */
+  IC_EVEX_L_XS_K, /* 3043 */
+  IC_EVEX_L_XD_K, /* 3044 */
+  IC_EVEX_L_XD_K, /* 3045 */
+  IC_EVEX_L_XD_K, /* 3046 */
+  IC_EVEX_L_XD_K, /* 3047 */
+  IC_EVEX_L_W_K, /* 3048 */
+  IC_EVEX_L_W_K, /* 3049 */
+  IC_EVEX_L_W_XS_K, /* 3050 */
+  IC_EVEX_L_W_XS_K, /* 3051 */
+  IC_EVEX_L_W_XD_K, /* 3052 */
+  IC_EVEX_L_W_XD_K, /* 3053 */
+  IC_EVEX_L_W_XD_K, /* 3054 */
+  IC_EVEX_L_W_XD_K, /* 3055 */
+  IC_EVEX_L_OPSIZE_K, /* 3056 */
+  IC_EVEX_L_OPSIZE_K, /* 3057 */
+  IC_EVEX_L_OPSIZE_K, /* 3058 */
+  IC_EVEX_L_OPSIZE_K, /* 3059 */
+  IC_EVEX_L_OPSIZE_K, /* 3060 */
+  IC_EVEX_L_OPSIZE_K, /* 3061 */
+  IC_EVEX_L_OPSIZE_K, /* 3062 */
+  IC_EVEX_L_OPSIZE_K, /* 3063 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3064 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3065 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3066 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3067 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3068 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3069 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3070 */
+  IC_EVEX_L_W_OPSIZE_K, /* 3071 */
+  IC, /* 3072 */
+  IC_64BIT, /* 3073 */
+  IC_XS, /* 3074 */
+  IC_64BIT_XS, /* 3075 */
+  IC_XD, /* 3076 */
+  IC_64BIT_XD, /* 3077 */
+  IC_XS, /* 3078 */
+  IC_64BIT_XS, /* 3079 */
+  IC, /* 3080 */
+  IC_64BIT_REXW, /* 3081 */
+  IC_XS, /* 3082 */
+  IC_64BIT_REXW_XS, /* 3083 */
+  IC_XD, /* 3084 */
+  IC_64BIT_REXW_XD, /* 3085 */
+  IC_XS, /* 3086 */
+  IC_64BIT_REXW_XS, /* 3087 */
+  IC_OPSIZE, /* 3088 */
+  IC_64BIT_OPSIZE, /* 3089 */
+  IC_XS_OPSIZE, /* 3090 */
+  IC_64BIT_XS_OPSIZE, /* 3091 */
+  IC_XD_OPSIZE, /* 3092 */
+  IC_64BIT_XD_OPSIZE, /* 3093 */
+  IC_XS_OPSIZE, /* 3094 */
+  IC_64BIT_XD_OPSIZE, /* 3095 */
+  IC_OPSIZE, /* 3096 */
+  IC_64BIT_REXW_OPSIZE, /* 3097 */
+  IC_XS_OPSIZE, /* 3098 */
+  IC_64BIT_REXW_XS, /* 3099 */
+  IC_XD_OPSIZE, /* 3100 */
+  IC_64BIT_REXW_XD, /* 3101 */
+  IC_XS_OPSIZE, /* 3102 */
+  IC_64BIT_REXW_XS, /* 3103 */
+  IC_ADSIZE, /* 3104 */
+  IC_64BIT_ADSIZE, /* 3105 */
+  IC_XS, /* 3106 */
+  IC_64BIT_XS, /* 3107 */
+  IC_XD, /* 3108 */
+  IC_64BIT_XD, /* 3109 */
+  IC_XS, /* 3110 */
+  IC_64BIT_XS, /* 3111 */
+  IC_ADSIZE, /* 3112 */
+  IC_64BIT_ADSIZE, /* 3113 */
+  IC_XS, /* 3114 */
+  IC_64BIT_REXW_XS, /* 3115 */
+  IC_XD, /* 3116 */
+  IC_64BIT_REXW_XD, /* 3117 */
+  IC_XS, /* 3118 */
+  IC_64BIT_REXW_XS, /* 3119 */
+  IC_OPSIZE, /* 3120 */
+  IC_64BIT_OPSIZE, /* 3121 */
+  IC_XS_OPSIZE, /* 3122 */
+  IC_64BIT_XS_OPSIZE, /* 3123 */
+  IC_XD_OPSIZE, /* 3124 */
+  IC_64BIT_XD_OPSIZE, /* 3125 */
+  IC_XS_OPSIZE, /* 3126 */
+  IC_64BIT_XD_OPSIZE, /* 3127 */
+  IC_OPSIZE, /* 3128 */
+  IC_64BIT_REXW_OPSIZE, /* 3129 */
+  IC_XS_OPSIZE, /* 3130 */
+  IC_64BIT_REXW_XS, /* 3131 */
+  IC_XD_OPSIZE, /* 3132 */
+  IC_64BIT_REXW_XD, /* 3133 */
+  IC_XS_OPSIZE, /* 3134 */
+  IC_64BIT_REXW_XS, /* 3135 */
+  IC_VEX, /* 3136 */
+  IC_VEX, /* 3137 */
+  IC_VEX_XS, /* 3138 */
+  IC_VEX_XS, /* 3139 */
+  IC_VEX_XD, /* 3140 */
+  IC_VEX_XD, /* 3141 */
+  IC_VEX_XD, /* 3142 */
+  IC_VEX_XD, /* 3143 */
+  IC_VEX_W, /* 3144 */
+  IC_VEX_W, /* 3145 */
+  IC_VEX_W_XS, /* 3146 */
+  IC_VEX_W_XS, /* 3147 */
+  IC_VEX_W_XD, /* 3148 */
+  IC_VEX_W_XD, /* 3149 */
+  IC_VEX_W_XD, /* 3150 */
+  IC_VEX_W_XD, /* 3151 */
+  IC_VEX_OPSIZE, /* 3152 */
+  IC_VEX_OPSIZE, /* 3153 */
+  IC_VEX_OPSIZE, /* 3154 */
+  IC_VEX_OPSIZE, /* 3155 */
+  IC_VEX_OPSIZE, /* 3156 */
+  IC_VEX_OPSIZE, /* 3157 */
+  IC_VEX_OPSIZE, /* 3158 */
+  IC_VEX_OPSIZE, /* 3159 */
+  IC_VEX_W_OPSIZE, /* 3160 */
+  IC_VEX_W_OPSIZE, /* 3161 */
+  IC_VEX_W_OPSIZE, /* 3162 */
+  IC_VEX_W_OPSIZE, /* 3163 */
+  IC_VEX_W_OPSIZE, /* 3164 */
+  IC_VEX_W_OPSIZE, /* 3165 */
+  IC_VEX_W_OPSIZE, /* 3166 */
+  IC_VEX_W_OPSIZE, /* 3167 */
+  IC_VEX, /* 3168 */
+  IC_VEX, /* 3169 */
+  IC_VEX_XS, /* 3170 */
+  IC_VEX_XS, /* 3171 */
+  IC_VEX_XD, /* 3172 */
+  IC_VEX_XD, /* 3173 */
+  IC_VEX_XD, /* 3174 */
+  IC_VEX_XD, /* 3175 */
+  IC_VEX_W, /* 3176 */
+  IC_VEX_W, /* 3177 */
+  IC_VEX_W_XS, /* 3178 */
+  IC_VEX_W_XS, /* 3179 */
+  IC_VEX_W_XD, /* 3180 */
+  IC_VEX_W_XD, /* 3181 */
+  IC_VEX_W_XD, /* 3182 */
+  IC_VEX_W_XD, /* 3183 */
+  IC_VEX_OPSIZE, /* 3184 */
+  IC_VEX_OPSIZE, /* 3185 */
+  IC_VEX_OPSIZE, /* 3186 */
+  IC_VEX_OPSIZE, /* 3187 */
+  IC_VEX_OPSIZE, /* 3188 */
+  IC_VEX_OPSIZE, /* 3189 */
+  IC_VEX_OPSIZE, /* 3190 */
+  IC_VEX_OPSIZE, /* 3191 */
+  IC_VEX_W_OPSIZE, /* 3192 */
+  IC_VEX_W_OPSIZE, /* 3193 */
+  IC_VEX_W_OPSIZE, /* 3194 */
+  IC_VEX_W_OPSIZE, /* 3195 */
+  IC_VEX_W_OPSIZE, /* 3196 */
+  IC_VEX_W_OPSIZE, /* 3197 */
+  IC_VEX_W_OPSIZE, /* 3198 */
+  IC_VEX_W_OPSIZE, /* 3199 */
+  IC_VEX_L, /* 3200 */
+  IC_VEX_L, /* 3201 */
+  IC_VEX_L_XS, /* 3202 */
+  IC_VEX_L_XS, /* 3203 */
+  IC_VEX_L_XD, /* 3204 */
+  IC_VEX_L_XD, /* 3205 */
+  IC_VEX_L_XD, /* 3206 */
+  IC_VEX_L_XD, /* 3207 */
+  IC_VEX_L_W, /* 3208 */
+  IC_VEX_L_W, /* 3209 */
+  IC_VEX_L_W_XS, /* 3210 */
+  IC_VEX_L_W_XS, /* 3211 */
+  IC_VEX_L_W_XD, /* 3212 */
+  IC_VEX_L_W_XD, /* 3213 */
+  IC_VEX_L_W_XD, /* 3214 */
+  IC_VEX_L_W_XD, /* 3215 */
+  IC_VEX_L_OPSIZE, /* 3216 */
+  IC_VEX_L_OPSIZE, /* 3217 */
+  IC_VEX_L_OPSIZE, /* 3218 */
+  IC_VEX_L_OPSIZE, /* 3219 */
+  IC_VEX_L_OPSIZE, /* 3220 */
+  IC_VEX_L_OPSIZE, /* 3221 */
+  IC_VEX_L_OPSIZE, /* 3222 */
+  IC_VEX_L_OPSIZE, /* 3223 */
+  IC_VEX_L_W_OPSIZE, /* 3224 */
+  IC_VEX_L_W_OPSIZE, /* 3225 */
+  IC_VEX_L_W_OPSIZE, /* 3226 */
+  IC_VEX_L_W_OPSIZE, /* 3227 */
+  IC_VEX_L_W_OPSIZE, /* 3228 */
+  IC_VEX_L_W_OPSIZE, /* 3229 */
+  IC_VEX_L_W_OPSIZE, /* 3230 */
+  IC_VEX_L_W_OPSIZE, /* 3231 */
+  IC_VEX_L, /* 3232 */
+  IC_VEX_L, /* 3233 */
+  IC_VEX_L_XS, /* 3234 */
+  IC_VEX_L_XS, /* 3235 */
+  IC_VEX_L_XD, /* 3236 */
+  IC_VEX_L_XD, /* 3237 */
+  IC_VEX_L_XD, /* 3238 */
+  IC_VEX_L_XD, /* 3239 */
+  IC_VEX_L_W, /* 3240 */
+  IC_VEX_L_W, /* 3241 */
+  IC_VEX_L_W_XS, /* 3242 */
+  IC_VEX_L_W_XS, /* 3243 */
+  IC_VEX_L_W_XD, /* 3244 */
+  IC_VEX_L_W_XD, /* 3245 */
+  IC_VEX_L_W_XD, /* 3246 */
+  IC_VEX_L_W_XD, /* 3247 */
+  IC_VEX_L_OPSIZE, /* 3248 */
+  IC_VEX_L_OPSIZE, /* 3249 */
+  IC_VEX_L_OPSIZE, /* 3250 */
+  IC_VEX_L_OPSIZE, /* 3251 */
+  IC_VEX_L_OPSIZE, /* 3252 */
+  IC_VEX_L_OPSIZE, /* 3253 */
+  IC_VEX_L_OPSIZE, /* 3254 */
+  IC_VEX_L_OPSIZE, /* 3255 */
+  IC_VEX_L_W_OPSIZE, /* 3256 */
+  IC_VEX_L_W_OPSIZE, /* 3257 */
+  IC_VEX_L_W_OPSIZE, /* 3258 */
+  IC_VEX_L_W_OPSIZE, /* 3259 */
+  IC_VEX_L_W_OPSIZE, /* 3260 */
+  IC_VEX_L_W_OPSIZE, /* 3261 */
+  IC_VEX_L_W_OPSIZE, /* 3262 */
+  IC_VEX_L_W_OPSIZE, /* 3263 */
+  IC_VEX_L, /* 3264 */
+  IC_VEX_L, /* 3265 */
+  IC_VEX_L_XS, /* 3266 */
+  IC_VEX_L_XS, /* 3267 */
+  IC_VEX_L_XD, /* 3268 */
+  IC_VEX_L_XD, /* 3269 */
+  IC_VEX_L_XD, /* 3270 */
+  IC_VEX_L_XD, /* 3271 */
+  IC_VEX_L_W, /* 3272 */
+  IC_VEX_L_W, /* 3273 */
+  IC_VEX_L_W_XS, /* 3274 */
+  IC_VEX_L_W_XS, /* 3275 */
+  IC_VEX_L_W_XD, /* 3276 */
+  IC_VEX_L_W_XD, /* 3277 */
+  IC_VEX_L_W_XD, /* 3278 */
+  IC_VEX_L_W_XD, /* 3279 */
+  IC_VEX_L_OPSIZE, /* 3280 */
+  IC_VEX_L_OPSIZE, /* 3281 */
+  IC_VEX_L_OPSIZE, /* 3282 */
+  IC_VEX_L_OPSIZE, /* 3283 */
+  IC_VEX_L_OPSIZE, /* 3284 */
+  IC_VEX_L_OPSIZE, /* 3285 */
+  IC_VEX_L_OPSIZE, /* 3286 */
+  IC_VEX_L_OPSIZE, /* 3287 */
+  IC_VEX_L_W_OPSIZE, /* 3288 */
+  IC_VEX_L_W_OPSIZE, /* 3289 */
+  IC_VEX_L_W_OPSIZE, /* 3290 */
+  IC_VEX_L_W_OPSIZE, /* 3291 */
+  IC_VEX_L_W_OPSIZE, /* 3292 */
+  IC_VEX_L_W_OPSIZE, /* 3293 */
+  IC_VEX_L_W_OPSIZE, /* 3294 */
+  IC_VEX_L_W_OPSIZE, /* 3295 */
+  IC_VEX_L, /* 3296 */
+  IC_VEX_L, /* 3297 */
+  IC_VEX_L_XS, /* 3298 */
+  IC_VEX_L_XS, /* 3299 */
+  IC_VEX_L_XD, /* 3300 */
+  IC_VEX_L_XD, /* 3301 */
+  IC_VEX_L_XD, /* 3302 */
+  IC_VEX_L_XD, /* 3303 */
+  IC_VEX_L_W, /* 3304 */
+  IC_VEX_L_W, /* 3305 */
+  IC_VEX_L_W_XS, /* 3306 */
+  IC_VEX_L_W_XS, /* 3307 */
+  IC_VEX_L_W_XD, /* 3308 */
+  IC_VEX_L_W_XD, /* 3309 */
+  IC_VEX_L_W_XD, /* 3310 */
+  IC_VEX_L_W_XD, /* 3311 */
+  IC_VEX_L_OPSIZE, /* 3312 */
+  IC_VEX_L_OPSIZE, /* 3313 */
+  IC_VEX_L_OPSIZE, /* 3314 */
+  IC_VEX_L_OPSIZE, /* 3315 */
+  IC_VEX_L_OPSIZE, /* 3316 */
+  IC_VEX_L_OPSIZE, /* 3317 */
+  IC_VEX_L_OPSIZE, /* 3318 */
+  IC_VEX_L_OPSIZE, /* 3319 */
+  IC_VEX_L_W_OPSIZE, /* 3320 */
+  IC_VEX_L_W_OPSIZE, /* 3321 */
+  IC_VEX_L_W_OPSIZE, /* 3322 */
+  IC_VEX_L_W_OPSIZE, /* 3323 */
+  IC_VEX_L_W_OPSIZE, /* 3324 */
+  IC_VEX_L_W_OPSIZE, /* 3325 */
+  IC_VEX_L_W_OPSIZE, /* 3326 */
+  IC_VEX_L_W_OPSIZE, /* 3327 */
+  IC_EVEX_L2_K, /* 3328 */
+  IC_EVEX_L2_K, /* 3329 */
+  IC_EVEX_L2_XS_K, /* 3330 */
+  IC_EVEX_L2_XS_K, /* 3331 */
+  IC_EVEX_L2_XD_K, /* 3332 */
+  IC_EVEX_L2_XD_K, /* 3333 */
+  IC_EVEX_L2_XD_K, /* 3334 */
+  IC_EVEX_L2_XD_K, /* 3335 */
+  IC_EVEX_L2_W_K, /* 3336 */
+  IC_EVEX_L2_W_K, /* 3337 */
+  IC_EVEX_L2_W_XS_K, /* 3338 */
+  IC_EVEX_L2_W_XS_K, /* 3339 */
+  IC_EVEX_L2_W_XD_K, /* 3340 */
+  IC_EVEX_L2_W_XD_K, /* 3341 */
+  IC_EVEX_L2_W_XD_K, /* 3342 */
+  IC_EVEX_L2_W_XD_K, /* 3343 */
+  IC_EVEX_L2_OPSIZE_K, /* 3344 */
+  IC_EVEX_L2_OPSIZE_K, /* 3345 */
+  IC_EVEX_L2_OPSIZE_K, /* 3346 */
+  IC_EVEX_L2_OPSIZE_K, /* 3347 */
+  IC_EVEX_L2_OPSIZE_K, /* 3348 */
+  IC_EVEX_L2_OPSIZE_K, /* 3349 */
+  IC_EVEX_L2_OPSIZE_K, /* 3350 */
+  IC_EVEX_L2_OPSIZE_K, /* 3351 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3352 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3353 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3354 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3355 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3356 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3357 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3358 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3359 */
+  IC_EVEX_L2_K, /* 3360 */
+  IC_EVEX_L2_K, /* 3361 */
+  IC_EVEX_L2_XS_K, /* 3362 */
+  IC_EVEX_L2_XS_K, /* 3363 */
+  IC_EVEX_L2_XD_K, /* 3364 */
+  IC_EVEX_L2_XD_K, /* 3365 */
+  IC_EVEX_L2_XD_K, /* 3366 */
+  IC_EVEX_L2_XD_K, /* 3367 */
+  IC_EVEX_L2_W_K, /* 3368 */
+  IC_EVEX_L2_W_K, /* 3369 */
+  IC_EVEX_L2_W_XS_K, /* 3370 */
+  IC_EVEX_L2_W_XS_K, /* 3371 */
+  IC_EVEX_L2_W_XD_K, /* 3372 */
+  IC_EVEX_L2_W_XD_K, /* 3373 */
+  IC_EVEX_L2_W_XD_K, /* 3374 */
+  IC_EVEX_L2_W_XD_K, /* 3375 */
+  IC_EVEX_L2_OPSIZE_K, /* 3376 */
+  IC_EVEX_L2_OPSIZE_K, /* 3377 */
+  IC_EVEX_L2_OPSIZE_K, /* 3378 */
+  IC_EVEX_L2_OPSIZE_K, /* 3379 */
+  IC_EVEX_L2_OPSIZE_K, /* 3380 */
+  IC_EVEX_L2_OPSIZE_K, /* 3381 */
+  IC_EVEX_L2_OPSIZE_K, /* 3382 */
+  IC_EVEX_L2_OPSIZE_K, /* 3383 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3384 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3385 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3386 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3387 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3388 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3389 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3390 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3391 */
+  IC_EVEX_L2_K, /* 3392 */
+  IC_EVEX_L2_K, /* 3393 */
+  IC_EVEX_L2_XS_K, /* 3394 */
+  IC_EVEX_L2_XS_K, /* 3395 */
+  IC_EVEX_L2_XD_K, /* 3396 */
+  IC_EVEX_L2_XD_K, /* 3397 */
+  IC_EVEX_L2_XD_K, /* 3398 */
+  IC_EVEX_L2_XD_K, /* 3399 */
+  IC_EVEX_L2_W_K, /* 3400 */
+  IC_EVEX_L2_W_K, /* 3401 */
+  IC_EVEX_L2_W_XS_K, /* 3402 */
+  IC_EVEX_L2_W_XS_K, /* 3403 */
+  IC_EVEX_L2_W_XD_K, /* 3404 */
+  IC_EVEX_L2_W_XD_K, /* 3405 */
+  IC_EVEX_L2_W_XD_K, /* 3406 */
+  IC_EVEX_L2_W_XD_K, /* 3407 */
+  IC_EVEX_L2_OPSIZE_K, /* 3408 */
+  IC_EVEX_L2_OPSIZE_K, /* 3409 */
+  IC_EVEX_L2_OPSIZE_K, /* 3410 */
+  IC_EVEX_L2_OPSIZE_K, /* 3411 */
+  IC_EVEX_L2_OPSIZE_K, /* 3412 */
+  IC_EVEX_L2_OPSIZE_K, /* 3413 */
+  IC_EVEX_L2_OPSIZE_K, /* 3414 */
+  IC_EVEX_L2_OPSIZE_K, /* 3415 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3416 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3417 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3418 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3419 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3420 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3421 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3422 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3423 */
+  IC_EVEX_L2_K, /* 3424 */
+  IC_EVEX_L2_K, /* 3425 */
+  IC_EVEX_L2_XS_K, /* 3426 */
+  IC_EVEX_L2_XS_K, /* 3427 */
+  IC_EVEX_L2_XD_K, /* 3428 */
+  IC_EVEX_L2_XD_K, /* 3429 */
+  IC_EVEX_L2_XD_K, /* 3430 */
+  IC_EVEX_L2_XD_K, /* 3431 */
+  IC_EVEX_L2_W_K, /* 3432 */
+  IC_EVEX_L2_W_K, /* 3433 */
+  IC_EVEX_L2_W_XS_K, /* 3434 */
+  IC_EVEX_L2_W_XS_K, /* 3435 */
+  IC_EVEX_L2_W_XD_K, /* 3436 */
+  IC_EVEX_L2_W_XD_K, /* 3437 */
+  IC_EVEX_L2_W_XD_K, /* 3438 */
+  IC_EVEX_L2_W_XD_K, /* 3439 */
+  IC_EVEX_L2_OPSIZE_K, /* 3440 */
+  IC_EVEX_L2_OPSIZE_K, /* 3441 */
+  IC_EVEX_L2_OPSIZE_K, /* 3442 */
+  IC_EVEX_L2_OPSIZE_K, /* 3443 */
+  IC_EVEX_L2_OPSIZE_K, /* 3444 */
+  IC_EVEX_L2_OPSIZE_K, /* 3445 */
+  IC_EVEX_L2_OPSIZE_K, /* 3446 */
+  IC_EVEX_L2_OPSIZE_K, /* 3447 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3448 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3449 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3450 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3451 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3452 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3453 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3454 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3455 */
+  IC_EVEX_L2_K, /* 3456 */
+  IC_EVEX_L2_K, /* 3457 */
+  IC_EVEX_L2_XS_K, /* 3458 */
+  IC_EVEX_L2_XS_K, /* 3459 */
+  IC_EVEX_L2_XD_K, /* 3460 */
+  IC_EVEX_L2_XD_K, /* 3461 */
+  IC_EVEX_L2_XD_K, /* 3462 */
+  IC_EVEX_L2_XD_K, /* 3463 */
+  IC_EVEX_L2_W_K, /* 3464 */
+  IC_EVEX_L2_W_K, /* 3465 */
+  IC_EVEX_L2_W_XS_K, /* 3466 */
+  IC_EVEX_L2_W_XS_K, /* 3467 */
+  IC_EVEX_L2_W_XD_K, /* 3468 */
+  IC_EVEX_L2_W_XD_K, /* 3469 */
+  IC_EVEX_L2_W_XD_K, /* 3470 */
+  IC_EVEX_L2_W_XD_K, /* 3471 */
+  IC_EVEX_L2_OPSIZE_K, /* 3472 */
+  IC_EVEX_L2_OPSIZE_K, /* 3473 */
+  IC_EVEX_L2_OPSIZE_K, /* 3474 */
+  IC_EVEX_L2_OPSIZE_K, /* 3475 */
+  IC_EVEX_L2_OPSIZE_K, /* 3476 */
+  IC_EVEX_L2_OPSIZE_K, /* 3477 */
+  IC_EVEX_L2_OPSIZE_K, /* 3478 */
+  IC_EVEX_L2_OPSIZE_K, /* 3479 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3480 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3481 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3482 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3483 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3484 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3485 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3486 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3487 */
+  IC_EVEX_L2_K, /* 3488 */
+  IC_EVEX_L2_K, /* 3489 */
+  IC_EVEX_L2_XS_K, /* 3490 */
+  IC_EVEX_L2_XS_K, /* 3491 */
+  IC_EVEX_L2_XD_K, /* 3492 */
+  IC_EVEX_L2_XD_K, /* 3493 */
+  IC_EVEX_L2_XD_K, /* 3494 */
+  IC_EVEX_L2_XD_K, /* 3495 */
+  IC_EVEX_L2_W_K, /* 3496 */
+  IC_EVEX_L2_W_K, /* 3497 */
+  IC_EVEX_L2_W_XS_K, /* 3498 */
+  IC_EVEX_L2_W_XS_K, /* 3499 */
+  IC_EVEX_L2_W_XD_K, /* 3500 */
+  IC_EVEX_L2_W_XD_K, /* 3501 */
+  IC_EVEX_L2_W_XD_K, /* 3502 */
+  IC_EVEX_L2_W_XD_K, /* 3503 */
+  IC_EVEX_L2_OPSIZE_K, /* 3504 */
+  IC_EVEX_L2_OPSIZE_K, /* 3505 */
+  IC_EVEX_L2_OPSIZE_K, /* 3506 */
+  IC_EVEX_L2_OPSIZE_K, /* 3507 */
+  IC_EVEX_L2_OPSIZE_K, /* 3508 */
+  IC_EVEX_L2_OPSIZE_K, /* 3509 */
+  IC_EVEX_L2_OPSIZE_K, /* 3510 */
+  IC_EVEX_L2_OPSIZE_K, /* 3511 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3512 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3513 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3514 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3515 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3516 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3517 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3518 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3519 */
+  IC_EVEX_L2_K, /* 3520 */
+  IC_EVEX_L2_K, /* 3521 */
+  IC_EVEX_L2_XS_K, /* 3522 */
+  IC_EVEX_L2_XS_K, /* 3523 */
+  IC_EVEX_L2_XD_K, /* 3524 */
+  IC_EVEX_L2_XD_K, /* 3525 */
+  IC_EVEX_L2_XD_K, /* 3526 */
+  IC_EVEX_L2_XD_K, /* 3527 */
+  IC_EVEX_L2_W_K, /* 3528 */
+  IC_EVEX_L2_W_K, /* 3529 */
+  IC_EVEX_L2_W_XS_K, /* 3530 */
+  IC_EVEX_L2_W_XS_K, /* 3531 */
+  IC_EVEX_L2_W_XD_K, /* 3532 */
+  IC_EVEX_L2_W_XD_K, /* 3533 */
+  IC_EVEX_L2_W_XD_K, /* 3534 */
+  IC_EVEX_L2_W_XD_K, /* 3535 */
+  IC_EVEX_L2_OPSIZE_K, /* 3536 */
+  IC_EVEX_L2_OPSIZE_K, /* 3537 */
+  IC_EVEX_L2_OPSIZE_K, /* 3538 */
+  IC_EVEX_L2_OPSIZE_K, /* 3539 */
+  IC_EVEX_L2_OPSIZE_K, /* 3540 */
+  IC_EVEX_L2_OPSIZE_K, /* 3541 */
+  IC_EVEX_L2_OPSIZE_K, /* 3542 */
+  IC_EVEX_L2_OPSIZE_K, /* 3543 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3544 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3545 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3546 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3547 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3548 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3549 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3550 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3551 */
+  IC_EVEX_L2_K, /* 3552 */
+  IC_EVEX_L2_K, /* 3553 */
+  IC_EVEX_L2_XS_K, /* 3554 */
+  IC_EVEX_L2_XS_K, /* 3555 */
+  IC_EVEX_L2_XD_K, /* 3556 */
+  IC_EVEX_L2_XD_K, /* 3557 */
+  IC_EVEX_L2_XD_K, /* 3558 */
+  IC_EVEX_L2_XD_K, /* 3559 */
+  IC_EVEX_L2_W_K, /* 3560 */
+  IC_EVEX_L2_W_K, /* 3561 */
+  IC_EVEX_L2_W_XS_K, /* 3562 */
+  IC_EVEX_L2_W_XS_K, /* 3563 */
+  IC_EVEX_L2_W_XD_K, /* 3564 */
+  IC_EVEX_L2_W_XD_K, /* 3565 */
+  IC_EVEX_L2_W_XD_K, /* 3566 */
+  IC_EVEX_L2_W_XD_K, /* 3567 */
+  IC_EVEX_L2_OPSIZE_K, /* 3568 */
+  IC_EVEX_L2_OPSIZE_K, /* 3569 */
+  IC_EVEX_L2_OPSIZE_K, /* 3570 */
+  IC_EVEX_L2_OPSIZE_K, /* 3571 */
+  IC_EVEX_L2_OPSIZE_K, /* 3572 */
+  IC_EVEX_L2_OPSIZE_K, /* 3573 */
+  IC_EVEX_L2_OPSIZE_K, /* 3574 */
+  IC_EVEX_L2_OPSIZE_K, /* 3575 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3576 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3577 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3578 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3579 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3580 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3581 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3582 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3583 */
+  IC, /* 3584 */
+  IC_64BIT, /* 3585 */
+  IC_XS, /* 3586 */
+  IC_64BIT_XS, /* 3587 */
+  IC_XD, /* 3588 */
+  IC_64BIT_XD, /* 3589 */
+  IC_XS, /* 3590 */
+  IC_64BIT_XS, /* 3591 */
+  IC, /* 3592 */
+  IC_64BIT_REXW, /* 3593 */
+  IC_XS, /* 3594 */
+  IC_64BIT_REXW_XS, /* 3595 */
+  IC_XD, /* 3596 */
+  IC_64BIT_REXW_XD, /* 3597 */
+  IC_XS, /* 3598 */
+  IC_64BIT_REXW_XS, /* 3599 */
+  IC_OPSIZE, /* 3600 */
+  IC_64BIT_OPSIZE, /* 3601 */
+  IC_XS_OPSIZE, /* 3602 */
+  IC_64BIT_XS_OPSIZE, /* 3603 */
+  IC_XD_OPSIZE, /* 3604 */
+  IC_64BIT_XD_OPSIZE, /* 3605 */
+  IC_XS_OPSIZE, /* 3606 */
+  IC_64BIT_XD_OPSIZE, /* 3607 */
+  IC_OPSIZE, /* 3608 */
+  IC_64BIT_REXW_OPSIZE, /* 3609 */
+  IC_XS_OPSIZE, /* 3610 */
+  IC_64BIT_REXW_XS, /* 3611 */
+  IC_XD_OPSIZE, /* 3612 */
+  IC_64BIT_REXW_XD, /* 3613 */
+  IC_XS_OPSIZE, /* 3614 */
+  IC_64BIT_REXW_XS, /* 3615 */
+  IC_ADSIZE, /* 3616 */
+  IC_64BIT_ADSIZE, /* 3617 */
+  IC_XS, /* 3618 */
+  IC_64BIT_XS, /* 3619 */
+  IC_XD, /* 3620 */
+  IC_64BIT_XD, /* 3621 */
+  IC_XS, /* 3622 */
+  IC_64BIT_XS, /* 3623 */
+  IC_ADSIZE, /* 3624 */
+  IC_64BIT_ADSIZE, /* 3625 */
+  IC_XS, /* 3626 */
+  IC_64BIT_REXW_XS, /* 3627 */
+  IC_XD, /* 3628 */
+  IC_64BIT_REXW_XD, /* 3629 */
+  IC_XS, /* 3630 */
+  IC_64BIT_REXW_XS, /* 3631 */
+  IC_OPSIZE, /* 3632 */
+  IC_64BIT_OPSIZE, /* 3633 */
+  IC_XS_OPSIZE, /* 3634 */
+  IC_64BIT_XS_OPSIZE, /* 3635 */
+  IC_XD_OPSIZE, /* 3636 */
+  IC_64BIT_XD_OPSIZE, /* 3637 */
+  IC_XS_OPSIZE, /* 3638 */
+  IC_64BIT_XD_OPSIZE, /* 3639 */
+  IC_OPSIZE, /* 3640 */
+  IC_64BIT_REXW_OPSIZE, /* 3641 */
+  IC_XS_OPSIZE, /* 3642 */
+  IC_64BIT_REXW_XS, /* 3643 */
+  IC_XD_OPSIZE, /* 3644 */
+  IC_64BIT_REXW_XD, /* 3645 */
+  IC_XS_OPSIZE, /* 3646 */
+  IC_64BIT_REXW_XS, /* 3647 */
+  IC_VEX, /* 3648 */
+  IC_VEX, /* 3649 */
+  IC_VEX_XS, /* 3650 */
+  IC_VEX_XS, /* 3651 */
+  IC_VEX_XD, /* 3652 */
+  IC_VEX_XD, /* 3653 */
+  IC_VEX_XD, /* 3654 */
+  IC_VEX_XD, /* 3655 */
+  IC_VEX_W, /* 3656 */
+  IC_VEX_W, /* 3657 */
+  IC_VEX_W_XS, /* 3658 */
+  IC_VEX_W_XS, /* 3659 */
+  IC_VEX_W_XD, /* 3660 */
+  IC_VEX_W_XD, /* 3661 */
+  IC_VEX_W_XD, /* 3662 */
+  IC_VEX_W_XD, /* 3663 */
+  IC_VEX_OPSIZE, /* 3664 */
+  IC_VEX_OPSIZE, /* 3665 */
+  IC_VEX_OPSIZE, /* 3666 */
+  IC_VEX_OPSIZE, /* 3667 */
+  IC_VEX_OPSIZE, /* 3668 */
+  IC_VEX_OPSIZE, /* 3669 */
+  IC_VEX_OPSIZE, /* 3670 */
+  IC_VEX_OPSIZE, /* 3671 */
+  IC_VEX_W_OPSIZE, /* 3672 */
+  IC_VEX_W_OPSIZE, /* 3673 */
+  IC_VEX_W_OPSIZE, /* 3674 */
+  IC_VEX_W_OPSIZE, /* 3675 */
+  IC_VEX_W_OPSIZE, /* 3676 */
+  IC_VEX_W_OPSIZE, /* 3677 */
+  IC_VEX_W_OPSIZE, /* 3678 */
+  IC_VEX_W_OPSIZE, /* 3679 */
+  IC_VEX, /* 3680 */
+  IC_VEX, /* 3681 */
+  IC_VEX_XS, /* 3682 */
+  IC_VEX_XS, /* 3683 */
+  IC_VEX_XD, /* 3684 */
+  IC_VEX_XD, /* 3685 */
+  IC_VEX_XD, /* 3686 */
+  IC_VEX_XD, /* 3687 */
+  IC_VEX_W, /* 3688 */
+  IC_VEX_W, /* 3689 */
+  IC_VEX_W_XS, /* 3690 */
+  IC_VEX_W_XS, /* 3691 */
+  IC_VEX_W_XD, /* 3692 */
+  IC_VEX_W_XD, /* 3693 */
+  IC_VEX_W_XD, /* 3694 */
+  IC_VEX_W_XD, /* 3695 */
+  IC_VEX_OPSIZE, /* 3696 */
+  IC_VEX_OPSIZE, /* 3697 */
+  IC_VEX_OPSIZE, /* 3698 */
+  IC_VEX_OPSIZE, /* 3699 */
+  IC_VEX_OPSIZE, /* 3700 */
+  IC_VEX_OPSIZE, /* 3701 */
+  IC_VEX_OPSIZE, /* 3702 */
+  IC_VEX_OPSIZE, /* 3703 */
+  IC_VEX_W_OPSIZE, /* 3704 */
+  IC_VEX_W_OPSIZE, /* 3705 */
+  IC_VEX_W_OPSIZE, /* 3706 */
+  IC_VEX_W_OPSIZE, /* 3707 */
+  IC_VEX_W_OPSIZE, /* 3708 */
+  IC_VEX_W_OPSIZE, /* 3709 */
+  IC_VEX_W_OPSIZE, /* 3710 */
+  IC_VEX_W_OPSIZE, /* 3711 */
+  IC_VEX_L, /* 3712 */
+  IC_VEX_L, /* 3713 */
+  IC_VEX_L_XS, /* 3714 */
+  IC_VEX_L_XS, /* 3715 */
+  IC_VEX_L_XD, /* 3716 */
+  IC_VEX_L_XD, /* 3717 */
+  IC_VEX_L_XD, /* 3718 */
+  IC_VEX_L_XD, /* 3719 */
+  IC_VEX_L_W, /* 3720 */
+  IC_VEX_L_W, /* 3721 */
+  IC_VEX_L_W_XS, /* 3722 */
+  IC_VEX_L_W_XS, /* 3723 */
+  IC_VEX_L_W_XD, /* 3724 */
+  IC_VEX_L_W_XD, /* 3725 */
+  IC_VEX_L_W_XD, /* 3726 */
+  IC_VEX_L_W_XD, /* 3727 */
+  IC_VEX_L_OPSIZE, /* 3728 */
+  IC_VEX_L_OPSIZE, /* 3729 */
+  IC_VEX_L_OPSIZE, /* 3730 */
+  IC_VEX_L_OPSIZE, /* 3731 */
+  IC_VEX_L_OPSIZE, /* 3732 */
+  IC_VEX_L_OPSIZE, /* 3733 */
+  IC_VEX_L_OPSIZE, /* 3734 */
+  IC_VEX_L_OPSIZE, /* 3735 */
+  IC_VEX_L_W_OPSIZE, /* 3736 */
+  IC_VEX_L_W_OPSIZE, /* 3737 */
+  IC_VEX_L_W_OPSIZE, /* 3738 */
+  IC_VEX_L_W_OPSIZE, /* 3739 */
+  IC_VEX_L_W_OPSIZE, /* 3740 */
+  IC_VEX_L_W_OPSIZE, /* 3741 */
+  IC_VEX_L_W_OPSIZE, /* 3742 */
+  IC_VEX_L_W_OPSIZE, /* 3743 */
+  IC_VEX_L, /* 3744 */
+  IC_VEX_L, /* 3745 */
+  IC_VEX_L_XS, /* 3746 */
+  IC_VEX_L_XS, /* 3747 */
+  IC_VEX_L_XD, /* 3748 */
+  IC_VEX_L_XD, /* 3749 */
+  IC_VEX_L_XD, /* 3750 */
+  IC_VEX_L_XD, /* 3751 */
+  IC_VEX_L_W, /* 3752 */
+  IC_VEX_L_W, /* 3753 */
+  IC_VEX_L_W_XS, /* 3754 */
+  IC_VEX_L_W_XS, /* 3755 */
+  IC_VEX_L_W_XD, /* 3756 */
+  IC_VEX_L_W_XD, /* 3757 */
+  IC_VEX_L_W_XD, /* 3758 */
+  IC_VEX_L_W_XD, /* 3759 */
+  IC_VEX_L_OPSIZE, /* 3760 */
+  IC_VEX_L_OPSIZE, /* 3761 */
+  IC_VEX_L_OPSIZE, /* 3762 */
+  IC_VEX_L_OPSIZE, /* 3763 */
+  IC_VEX_L_OPSIZE, /* 3764 */
+  IC_VEX_L_OPSIZE, /* 3765 */
+  IC_VEX_L_OPSIZE, /* 3766 */
+  IC_VEX_L_OPSIZE, /* 3767 */
+  IC_VEX_L_W_OPSIZE, /* 3768 */
+  IC_VEX_L_W_OPSIZE, /* 3769 */
+  IC_VEX_L_W_OPSIZE, /* 3770 */
+  IC_VEX_L_W_OPSIZE, /* 3771 */
+  IC_VEX_L_W_OPSIZE, /* 3772 */
+  IC_VEX_L_W_OPSIZE, /* 3773 */
+  IC_VEX_L_W_OPSIZE, /* 3774 */
+  IC_VEX_L_W_OPSIZE, /* 3775 */
+  IC_VEX_L, /* 3776 */
+  IC_VEX_L, /* 3777 */
+  IC_VEX_L_XS, /* 3778 */
+  IC_VEX_L_XS, /* 3779 */
+  IC_VEX_L_XD, /* 3780 */
+  IC_VEX_L_XD, /* 3781 */
+  IC_VEX_L_XD, /* 3782 */
+  IC_VEX_L_XD, /* 3783 */
+  IC_VEX_L_W, /* 3784 */
+  IC_VEX_L_W, /* 3785 */
+  IC_VEX_L_W_XS, /* 3786 */
+  IC_VEX_L_W_XS, /* 3787 */
+  IC_VEX_L_W_XD, /* 3788 */
+  IC_VEX_L_W_XD, /* 3789 */
+  IC_VEX_L_W_XD, /* 3790 */
+  IC_VEX_L_W_XD, /* 3791 */
+  IC_VEX_L_OPSIZE, /* 3792 */
+  IC_VEX_L_OPSIZE, /* 3793 */
+  IC_VEX_L_OPSIZE, /* 3794 */
+  IC_VEX_L_OPSIZE, /* 3795 */
+  IC_VEX_L_OPSIZE, /* 3796 */
+  IC_VEX_L_OPSIZE, /* 3797 */
+  IC_VEX_L_OPSIZE, /* 3798 */
+  IC_VEX_L_OPSIZE, /* 3799 */
+  IC_VEX_L_W_OPSIZE, /* 3800 */
+  IC_VEX_L_W_OPSIZE, /* 3801 */
+  IC_VEX_L_W_OPSIZE, /* 3802 */
+  IC_VEX_L_W_OPSIZE, /* 3803 */
+  IC_VEX_L_W_OPSIZE, /* 3804 */
+  IC_VEX_L_W_OPSIZE, /* 3805 */
+  IC_VEX_L_W_OPSIZE, /* 3806 */
+  IC_VEX_L_W_OPSIZE, /* 3807 */
+  IC_VEX_L, /* 3808 */
+  IC_VEX_L, /* 3809 */
+  IC_VEX_L_XS, /* 3810 */
+  IC_VEX_L_XS, /* 3811 */
+  IC_VEX_L_XD, /* 3812 */
+  IC_VEX_L_XD, /* 3813 */
+  IC_VEX_L_XD, /* 3814 */
+  IC_VEX_L_XD, /* 3815 */
+  IC_VEX_L_W, /* 3816 */
+  IC_VEX_L_W, /* 3817 */
+  IC_VEX_L_W_XS, /* 3818 */
+  IC_VEX_L_W_XS, /* 3819 */
+  IC_VEX_L_W_XD, /* 3820 */
+  IC_VEX_L_W_XD, /* 3821 */
+  IC_VEX_L_W_XD, /* 3822 */
+  IC_VEX_L_W_XD, /* 3823 */
+  IC_VEX_L_OPSIZE, /* 3824 */
+  IC_VEX_L_OPSIZE, /* 3825 */
+  IC_VEX_L_OPSIZE, /* 3826 */
+  IC_VEX_L_OPSIZE, /* 3827 */
+  IC_VEX_L_OPSIZE, /* 3828 */
+  IC_VEX_L_OPSIZE, /* 3829 */
+  IC_VEX_L_OPSIZE, /* 3830 */
+  IC_VEX_L_OPSIZE, /* 3831 */
+  IC_VEX_L_W_OPSIZE, /* 3832 */
+  IC_VEX_L_W_OPSIZE, /* 3833 */
+  IC_VEX_L_W_OPSIZE, /* 3834 */
+  IC_VEX_L_W_OPSIZE, /* 3835 */
+  IC_VEX_L_W_OPSIZE, /* 3836 */
+  IC_VEX_L_W_OPSIZE, /* 3837 */
+  IC_VEX_L_W_OPSIZE, /* 3838 */
+  IC_VEX_L_W_OPSIZE, /* 3839 */
+  IC_EVEX_L2_K, /* 3840 */
+  IC_EVEX_L2_K, /* 3841 */
+  IC_EVEX_L2_XS_K, /* 3842 */
+  IC_EVEX_L2_XS_K, /* 3843 */
+  IC_EVEX_L2_XD_K, /* 3844 */
+  IC_EVEX_L2_XD_K, /* 3845 */
+  IC_EVEX_L2_XD_K, /* 3846 */
+  IC_EVEX_L2_XD_K, /* 3847 */
+  IC_EVEX_L2_W_K, /* 3848 */
+  IC_EVEX_L2_W_K, /* 3849 */
+  IC_EVEX_L2_W_XS_K, /* 3850 */
+  IC_EVEX_L2_W_XS_K, /* 3851 */
+  IC_EVEX_L2_W_XD_K, /* 3852 */
+  IC_EVEX_L2_W_XD_K, /* 3853 */
+  IC_EVEX_L2_W_XD_K, /* 3854 */
+  IC_EVEX_L2_W_XD_K, /* 3855 */
+  IC_EVEX_L2_OPSIZE_K, /* 3856 */
+  IC_EVEX_L2_OPSIZE_K, /* 3857 */
+  IC_EVEX_L2_OPSIZE_K, /* 3858 */
+  IC_EVEX_L2_OPSIZE_K, /* 3859 */
+  IC_EVEX_L2_OPSIZE_K, /* 3860 */
+  IC_EVEX_L2_OPSIZE_K, /* 3861 */
+  IC_EVEX_L2_OPSIZE_K, /* 3862 */
+  IC_EVEX_L2_OPSIZE_K, /* 3863 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3864 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3865 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3866 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3867 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3868 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3869 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3870 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3871 */
+  IC_EVEX_L2_K, /* 3872 */
+  IC_EVEX_L2_K, /* 3873 */
+  IC_EVEX_L2_XS_K, /* 3874 */
+  IC_EVEX_L2_XS_K, /* 3875 */
+  IC_EVEX_L2_XD_K, /* 3876 */
+  IC_EVEX_L2_XD_K, /* 3877 */
+  IC_EVEX_L2_XD_K, /* 3878 */
+  IC_EVEX_L2_XD_K, /* 3879 */
+  IC_EVEX_L2_W_K, /* 3880 */
+  IC_EVEX_L2_W_K, /* 3881 */
+  IC_EVEX_L2_W_XS_K, /* 3882 */
+  IC_EVEX_L2_W_XS_K, /* 3883 */
+  IC_EVEX_L2_W_XD_K, /* 3884 */
+  IC_EVEX_L2_W_XD_K, /* 3885 */
+  IC_EVEX_L2_W_XD_K, /* 3886 */
+  IC_EVEX_L2_W_XD_K, /* 3887 */
+  IC_EVEX_L2_OPSIZE_K, /* 3888 */
+  IC_EVEX_L2_OPSIZE_K, /* 3889 */
+  IC_EVEX_L2_OPSIZE_K, /* 3890 */
+  IC_EVEX_L2_OPSIZE_K, /* 3891 */
+  IC_EVEX_L2_OPSIZE_K, /* 3892 */
+  IC_EVEX_L2_OPSIZE_K, /* 3893 */
+  IC_EVEX_L2_OPSIZE_K, /* 3894 */
+  IC_EVEX_L2_OPSIZE_K, /* 3895 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3896 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3897 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3898 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3899 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3900 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3901 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3902 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3903 */
+  IC_EVEX_L2_K, /* 3904 */
+  IC_EVEX_L2_K, /* 3905 */
+  IC_EVEX_L2_XS_K, /* 3906 */
+  IC_EVEX_L2_XS_K, /* 3907 */
+  IC_EVEX_L2_XD_K, /* 3908 */
+  IC_EVEX_L2_XD_K, /* 3909 */
+  IC_EVEX_L2_XD_K, /* 3910 */
+  IC_EVEX_L2_XD_K, /* 3911 */
+  IC_EVEX_L2_W_K, /* 3912 */
+  IC_EVEX_L2_W_K, /* 3913 */
+  IC_EVEX_L2_W_XS_K, /* 3914 */
+  IC_EVEX_L2_W_XS_K, /* 3915 */
+  IC_EVEX_L2_W_XD_K, /* 3916 */
+  IC_EVEX_L2_W_XD_K, /* 3917 */
+  IC_EVEX_L2_W_XD_K, /* 3918 */
+  IC_EVEX_L2_W_XD_K, /* 3919 */
+  IC_EVEX_L2_OPSIZE_K, /* 3920 */
+  IC_EVEX_L2_OPSIZE_K, /* 3921 */
+  IC_EVEX_L2_OPSIZE_K, /* 3922 */
+  IC_EVEX_L2_OPSIZE_K, /* 3923 */
+  IC_EVEX_L2_OPSIZE_K, /* 3924 */
+  IC_EVEX_L2_OPSIZE_K, /* 3925 */
+  IC_EVEX_L2_OPSIZE_K, /* 3926 */
+  IC_EVEX_L2_OPSIZE_K, /* 3927 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3928 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3929 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3930 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3931 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3932 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3933 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3934 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3935 */
+  IC_EVEX_L2_K, /* 3936 */
+  IC_EVEX_L2_K, /* 3937 */
+  IC_EVEX_L2_XS_K, /* 3938 */
+  IC_EVEX_L2_XS_K, /* 3939 */
+  IC_EVEX_L2_XD_K, /* 3940 */
+  IC_EVEX_L2_XD_K, /* 3941 */
+  IC_EVEX_L2_XD_K, /* 3942 */
+  IC_EVEX_L2_XD_K, /* 3943 */
+  IC_EVEX_L2_W_K, /* 3944 */
+  IC_EVEX_L2_W_K, /* 3945 */
+  IC_EVEX_L2_W_XS_K, /* 3946 */
+  IC_EVEX_L2_W_XS_K, /* 3947 */
+  IC_EVEX_L2_W_XD_K, /* 3948 */
+  IC_EVEX_L2_W_XD_K, /* 3949 */
+  IC_EVEX_L2_W_XD_K, /* 3950 */
+  IC_EVEX_L2_W_XD_K, /* 3951 */
+  IC_EVEX_L2_OPSIZE_K, /* 3952 */
+  IC_EVEX_L2_OPSIZE_K, /* 3953 */
+  IC_EVEX_L2_OPSIZE_K, /* 3954 */
+  IC_EVEX_L2_OPSIZE_K, /* 3955 */
+  IC_EVEX_L2_OPSIZE_K, /* 3956 */
+  IC_EVEX_L2_OPSIZE_K, /* 3957 */
+  IC_EVEX_L2_OPSIZE_K, /* 3958 */
+  IC_EVEX_L2_OPSIZE_K, /* 3959 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3960 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3961 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3962 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3963 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3964 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3965 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3966 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3967 */
+  IC_EVEX_L2_K, /* 3968 */
+  IC_EVEX_L2_K, /* 3969 */
+  IC_EVEX_L2_XS_K, /* 3970 */
+  IC_EVEX_L2_XS_K, /* 3971 */
+  IC_EVEX_L2_XD_K, /* 3972 */
+  IC_EVEX_L2_XD_K, /* 3973 */
+  IC_EVEX_L2_XD_K, /* 3974 */
+  IC_EVEX_L2_XD_K, /* 3975 */
+  IC_EVEX_L2_W_K, /* 3976 */
+  IC_EVEX_L2_W_K, /* 3977 */
+  IC_EVEX_L2_W_XS_K, /* 3978 */
+  IC_EVEX_L2_W_XS_K, /* 3979 */
+  IC_EVEX_L2_W_XD_K, /* 3980 */
+  IC_EVEX_L2_W_XD_K, /* 3981 */
+  IC_EVEX_L2_W_XD_K, /* 3982 */
+  IC_EVEX_L2_W_XD_K, /* 3983 */
+  IC_EVEX_L2_OPSIZE_K, /* 3984 */
+  IC_EVEX_L2_OPSIZE_K, /* 3985 */
+  IC_EVEX_L2_OPSIZE_K, /* 3986 */
+  IC_EVEX_L2_OPSIZE_K, /* 3987 */
+  IC_EVEX_L2_OPSIZE_K, /* 3988 */
+  IC_EVEX_L2_OPSIZE_K, /* 3989 */
+  IC_EVEX_L2_OPSIZE_K, /* 3990 */
+  IC_EVEX_L2_OPSIZE_K, /* 3991 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3992 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3993 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3994 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3995 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3996 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3997 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3998 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 3999 */
+  IC_EVEX_L2_K, /* 4000 */
+  IC_EVEX_L2_K, /* 4001 */
+  IC_EVEX_L2_XS_K, /* 4002 */
+  IC_EVEX_L2_XS_K, /* 4003 */
+  IC_EVEX_L2_XD_K, /* 4004 */
+  IC_EVEX_L2_XD_K, /* 4005 */
+  IC_EVEX_L2_XD_K, /* 4006 */
+  IC_EVEX_L2_XD_K, /* 4007 */
+  IC_EVEX_L2_W_K, /* 4008 */
+  IC_EVEX_L2_W_K, /* 4009 */
+  IC_EVEX_L2_W_XS_K, /* 4010 */
+  IC_EVEX_L2_W_XS_K, /* 4011 */
+  IC_EVEX_L2_W_XD_K, /* 4012 */
+  IC_EVEX_L2_W_XD_K, /* 4013 */
+  IC_EVEX_L2_W_XD_K, /* 4014 */
+  IC_EVEX_L2_W_XD_K, /* 4015 */
+  IC_EVEX_L2_OPSIZE_K, /* 4016 */
+  IC_EVEX_L2_OPSIZE_K, /* 4017 */
+  IC_EVEX_L2_OPSIZE_K, /* 4018 */
+  IC_EVEX_L2_OPSIZE_K, /* 4019 */
+  IC_EVEX_L2_OPSIZE_K, /* 4020 */
+  IC_EVEX_L2_OPSIZE_K, /* 4021 */
+  IC_EVEX_L2_OPSIZE_K, /* 4022 */
+  IC_EVEX_L2_OPSIZE_K, /* 4023 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4024 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4025 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4026 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4027 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4028 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4029 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4030 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4031 */
+  IC_EVEX_L2_K, /* 4032 */
+  IC_EVEX_L2_K, /* 4033 */
+  IC_EVEX_L2_XS_K, /* 4034 */
+  IC_EVEX_L2_XS_K, /* 4035 */
+  IC_EVEX_L2_XD_K, /* 4036 */
+  IC_EVEX_L2_XD_K, /* 4037 */
+  IC_EVEX_L2_XD_K, /* 4038 */
+  IC_EVEX_L2_XD_K, /* 4039 */
+  IC_EVEX_L2_W_K, /* 4040 */
+  IC_EVEX_L2_W_K, /* 4041 */
+  IC_EVEX_L2_W_XS_K, /* 4042 */
+  IC_EVEX_L2_W_XS_K, /* 4043 */
+  IC_EVEX_L2_W_XD_K, /* 4044 */
+  IC_EVEX_L2_W_XD_K, /* 4045 */
+  IC_EVEX_L2_W_XD_K, /* 4046 */
+  IC_EVEX_L2_W_XD_K, /* 4047 */
+  IC_EVEX_L2_OPSIZE_K, /* 4048 */
+  IC_EVEX_L2_OPSIZE_K, /* 4049 */
+  IC_EVEX_L2_OPSIZE_K, /* 4050 */
+  IC_EVEX_L2_OPSIZE_K, /* 4051 */
+  IC_EVEX_L2_OPSIZE_K, /* 4052 */
+  IC_EVEX_L2_OPSIZE_K, /* 4053 */
+  IC_EVEX_L2_OPSIZE_K, /* 4054 */
+  IC_EVEX_L2_OPSIZE_K, /* 4055 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4056 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4057 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4058 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4059 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4060 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4061 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4062 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4063 */
+  IC_EVEX_L2_K, /* 4064 */
+  IC_EVEX_L2_K, /* 4065 */
+  IC_EVEX_L2_XS_K, /* 4066 */
+  IC_EVEX_L2_XS_K, /* 4067 */
+  IC_EVEX_L2_XD_K, /* 4068 */
+  IC_EVEX_L2_XD_K, /* 4069 */
+  IC_EVEX_L2_XD_K, /* 4070 */
+  IC_EVEX_L2_XD_K, /* 4071 */
+  IC_EVEX_L2_W_K, /* 4072 */
+  IC_EVEX_L2_W_K, /* 4073 */
+  IC_EVEX_L2_W_XS_K, /* 4074 */
+  IC_EVEX_L2_W_XS_K, /* 4075 */
+  IC_EVEX_L2_W_XD_K, /* 4076 */
+  IC_EVEX_L2_W_XD_K, /* 4077 */
+  IC_EVEX_L2_W_XD_K, /* 4078 */
+  IC_EVEX_L2_W_XD_K, /* 4079 */
+  IC_EVEX_L2_OPSIZE_K, /* 4080 */
+  IC_EVEX_L2_OPSIZE_K, /* 4081 */
+  IC_EVEX_L2_OPSIZE_K, /* 4082 */
+  IC_EVEX_L2_OPSIZE_K, /* 4083 */
+  IC_EVEX_L2_OPSIZE_K, /* 4084 */
+  IC_EVEX_L2_OPSIZE_K, /* 4085 */
+  IC_EVEX_L2_OPSIZE_K, /* 4086 */
+  IC_EVEX_L2_OPSIZE_K, /* 4087 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4088 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4089 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4090 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4091 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4092 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4093 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4094 */
+  IC_EVEX_L2_W_OPSIZE_K, /* 4095 */
+  IC, /* 4096 */
+  IC_64BIT, /* 4097 */
+  IC_XS, /* 4098 */
+  IC_64BIT_XS, /* 4099 */
+  IC_XD, /* 4100 */
+  IC_64BIT_XD, /* 4101 */
+  IC_XS, /* 4102 */
+  IC_64BIT_XS, /* 4103 */
+  IC, /* 4104 */
+  IC_64BIT_REXW, /* 4105 */
+  IC_XS, /* 4106 */
+  IC_64BIT_REXW_XS, /* 4107 */
+  IC_XD, /* 4108 */
+  IC_64BIT_REXW_XD, /* 4109 */
+  IC_XS, /* 4110 */
+  IC_64BIT_REXW_XS, /* 4111 */
+  IC_OPSIZE, /* 4112 */
+  IC_64BIT_OPSIZE, /* 4113 */
+  IC_XS_OPSIZE, /* 4114 */
+  IC_64BIT_XS_OPSIZE, /* 4115 */
+  IC_XD_OPSIZE, /* 4116 */
+  IC_64BIT_XD_OPSIZE, /* 4117 */
+  IC_XS_OPSIZE, /* 4118 */
+  IC_64BIT_XD_OPSIZE, /* 4119 */
+  IC_OPSIZE, /* 4120 */
+  IC_64BIT_REXW_OPSIZE, /* 4121 */
+  IC_XS_OPSIZE, /* 4122 */
+  IC_64BIT_REXW_XS, /* 4123 */
+  IC_XD_OPSIZE, /* 4124 */
+  IC_64BIT_REXW_XD, /* 4125 */
+  IC_XS_OPSIZE, /* 4126 */
+  IC_64BIT_REXW_XS, /* 4127 */
+  IC_ADSIZE, /* 4128 */
+  IC_64BIT_ADSIZE, /* 4129 */
+  IC_XS, /* 4130 */
+  IC_64BIT_XS, /* 4131 */
+  IC_XD, /* 4132 */
+  IC_64BIT_XD, /* 4133 */
+  IC_XS, /* 4134 */
+  IC_64BIT_XS, /* 4135 */
+  IC_ADSIZE, /* 4136 */
+  IC_64BIT_ADSIZE, /* 4137 */
+  IC_XS, /* 4138 */
+  IC_64BIT_REXW_XS, /* 4139 */
+  IC_XD, /* 4140 */
+  IC_64BIT_REXW_XD, /* 4141 */
+  IC_XS, /* 4142 */
+  IC_64BIT_REXW_XS, /* 4143 */
+  IC_OPSIZE, /* 4144 */
+  IC_64BIT_OPSIZE, /* 4145 */
+  IC_XS_OPSIZE, /* 4146 */
+  IC_64BIT_XS_OPSIZE, /* 4147 */
+  IC_XD_OPSIZE, /* 4148 */
+  IC_64BIT_XD_OPSIZE, /* 4149 */
+  IC_XS_OPSIZE, /* 4150 */
+  IC_64BIT_XD_OPSIZE, /* 4151 */
+  IC_OPSIZE, /* 4152 */
+  IC_64BIT_REXW_OPSIZE, /* 4153 */
+  IC_XS_OPSIZE, /* 4154 */
+  IC_64BIT_REXW_XS, /* 4155 */
+  IC_XD_OPSIZE, /* 4156 */
+  IC_64BIT_REXW_XD, /* 4157 */
+  IC_XS_OPSIZE, /* 4158 */
+  IC_64BIT_REXW_XS, /* 4159 */
+  IC_VEX, /* 4160 */
+  IC_VEX, /* 4161 */
+  IC_VEX_XS, /* 4162 */
+  IC_VEX_XS, /* 4163 */
+  IC_VEX_XD, /* 4164 */
+  IC_VEX_XD, /* 4165 */
+  IC_VEX_XD, /* 4166 */
+  IC_VEX_XD, /* 4167 */
+  IC_VEX_W, /* 4168 */
+  IC_VEX_W, /* 4169 */
+  IC_VEX_W_XS, /* 4170 */
+  IC_VEX_W_XS, /* 4171 */
+  IC_VEX_W_XD, /* 4172 */
+  IC_VEX_W_XD, /* 4173 */
+  IC_VEX_W_XD, /* 4174 */
+  IC_VEX_W_XD, /* 4175 */
+  IC_VEX_OPSIZE, /* 4176 */
+  IC_VEX_OPSIZE, /* 4177 */
+  IC_VEX_OPSIZE, /* 4178 */
+  IC_VEX_OPSIZE, /* 4179 */
+  IC_VEX_OPSIZE, /* 4180 */
+  IC_VEX_OPSIZE, /* 4181 */
+  IC_VEX_OPSIZE, /* 4182 */
+  IC_VEX_OPSIZE, /* 4183 */
+  IC_VEX_W_OPSIZE, /* 4184 */
+  IC_VEX_W_OPSIZE, /* 4185 */
+  IC_VEX_W_OPSIZE, /* 4186 */
+  IC_VEX_W_OPSIZE, /* 4187 */
+  IC_VEX_W_OPSIZE, /* 4188 */
+  IC_VEX_W_OPSIZE, /* 4189 */
+  IC_VEX_W_OPSIZE, /* 4190 */
+  IC_VEX_W_OPSIZE, /* 4191 */
+  IC_VEX, /* 4192 */
+  IC_VEX, /* 4193 */
+  IC_VEX_XS, /* 4194 */
+  IC_VEX_XS, /* 4195 */
+  IC_VEX_XD, /* 4196 */
+  IC_VEX_XD, /* 4197 */
+  IC_VEX_XD, /* 4198 */
+  IC_VEX_XD, /* 4199 */
+  IC_VEX_W, /* 4200 */
+  IC_VEX_W, /* 4201 */
+  IC_VEX_W_XS, /* 4202 */
+  IC_VEX_W_XS, /* 4203 */
+  IC_VEX_W_XD, /* 4204 */
+  IC_VEX_W_XD, /* 4205 */
+  IC_VEX_W_XD, /* 4206 */
+  IC_VEX_W_XD, /* 4207 */
+  IC_VEX_OPSIZE, /* 4208 */
+  IC_VEX_OPSIZE, /* 4209 */
+  IC_VEX_OPSIZE, /* 4210 */
+  IC_VEX_OPSIZE, /* 4211 */
+  IC_VEX_OPSIZE, /* 4212 */
+  IC_VEX_OPSIZE, /* 4213 */
+  IC_VEX_OPSIZE, /* 4214 */
+  IC_VEX_OPSIZE, /* 4215 */
+  IC_VEX_W_OPSIZE, /* 4216 */
+  IC_VEX_W_OPSIZE, /* 4217 */
+  IC_VEX_W_OPSIZE, /* 4218 */
+  IC_VEX_W_OPSIZE, /* 4219 */
+  IC_VEX_W_OPSIZE, /* 4220 */
+  IC_VEX_W_OPSIZE, /* 4221 */
+  IC_VEX_W_OPSIZE, /* 4222 */
+  IC_VEX_W_OPSIZE, /* 4223 */
+  IC_VEX_L, /* 4224 */
+  IC_VEX_L, /* 4225 */
+  IC_VEX_L_XS, /* 4226 */
+  IC_VEX_L_XS, /* 4227 */
+  IC_VEX_L_XD, /* 4228 */
+  IC_VEX_L_XD, /* 4229 */
+  IC_VEX_L_XD, /* 4230 */
+  IC_VEX_L_XD, /* 4231 */
+  IC_VEX_L_W, /* 4232 */
+  IC_VEX_L_W, /* 4233 */
+  IC_VEX_L_W_XS, /* 4234 */
+  IC_VEX_L_W_XS, /* 4235 */
+  IC_VEX_L_W_XD, /* 4236 */
+  IC_VEX_L_W_XD, /* 4237 */
+  IC_VEX_L_W_XD, /* 4238 */
+  IC_VEX_L_W_XD, /* 4239 */
+  IC_VEX_L_OPSIZE, /* 4240 */
+  IC_VEX_L_OPSIZE, /* 4241 */
+  IC_VEX_L_OPSIZE, /* 4242 */
+  IC_VEX_L_OPSIZE, /* 4243 */
+  IC_VEX_L_OPSIZE, /* 4244 */
+  IC_VEX_L_OPSIZE, /* 4245 */
+  IC_VEX_L_OPSIZE, /* 4246 */
+  IC_VEX_L_OPSIZE, /* 4247 */
+  IC_VEX_L_W_OPSIZE, /* 4248 */
+  IC_VEX_L_W_OPSIZE, /* 4249 */
+  IC_VEX_L_W_OPSIZE, /* 4250 */
+  IC_VEX_L_W_OPSIZE, /* 4251 */
+  IC_VEX_L_W_OPSIZE, /* 4252 */
+  IC_VEX_L_W_OPSIZE, /* 4253 */
+  IC_VEX_L_W_OPSIZE, /* 4254 */
+  IC_VEX_L_W_OPSIZE, /* 4255 */
+  IC_VEX_L, /* 4256 */
+  IC_VEX_L, /* 4257 */
+  IC_VEX_L_XS, /* 4258 */
+  IC_VEX_L_XS, /* 4259 */
+  IC_VEX_L_XD, /* 4260 */
+  IC_VEX_L_XD, /* 4261 */
+  IC_VEX_L_XD, /* 4262 */
+  IC_VEX_L_XD, /* 4263 */
+  IC_VEX_L_W, /* 4264 */
+  IC_VEX_L_W, /* 4265 */
+  IC_VEX_L_W_XS, /* 4266 */
+  IC_VEX_L_W_XS, /* 4267 */
+  IC_VEX_L_W_XD, /* 4268 */
+  IC_VEX_L_W_XD, /* 4269 */
+  IC_VEX_L_W_XD, /* 4270 */
+  IC_VEX_L_W_XD, /* 4271 */
+  IC_VEX_L_OPSIZE, /* 4272 */
+  IC_VEX_L_OPSIZE, /* 4273 */
+  IC_VEX_L_OPSIZE, /* 4274 */
+  IC_VEX_L_OPSIZE, /* 4275 */
+  IC_VEX_L_OPSIZE, /* 4276 */
+  IC_VEX_L_OPSIZE, /* 4277 */
+  IC_VEX_L_OPSIZE, /* 4278 */
+  IC_VEX_L_OPSIZE, /* 4279 */
+  IC_VEX_L_W_OPSIZE, /* 4280 */
+  IC_VEX_L_W_OPSIZE, /* 4281 */
+  IC_VEX_L_W_OPSIZE, /* 4282 */
+  IC_VEX_L_W_OPSIZE, /* 4283 */
+  IC_VEX_L_W_OPSIZE, /* 4284 */
+  IC_VEX_L_W_OPSIZE, /* 4285 */
+  IC_VEX_L_W_OPSIZE, /* 4286 */
+  IC_VEX_L_W_OPSIZE, /* 4287 */
+  IC_VEX_L, /* 4288 */
+  IC_VEX_L, /* 4289 */
+  IC_VEX_L_XS, /* 4290 */
+  IC_VEX_L_XS, /* 4291 */
+  IC_VEX_L_XD, /* 4292 */
+  IC_VEX_L_XD, /* 4293 */
+  IC_VEX_L_XD, /* 4294 */
+  IC_VEX_L_XD, /* 4295 */
+  IC_VEX_L_W, /* 4296 */
+  IC_VEX_L_W, /* 4297 */
+  IC_VEX_L_W_XS, /* 4298 */
+  IC_VEX_L_W_XS, /* 4299 */
+  IC_VEX_L_W_XD, /* 4300 */
+  IC_VEX_L_W_XD, /* 4301 */
+  IC_VEX_L_W_XD, /* 4302 */
+  IC_VEX_L_W_XD, /* 4303 */
+  IC_VEX_L_OPSIZE, /* 4304 */
+  IC_VEX_L_OPSIZE, /* 4305 */
+  IC_VEX_L_OPSIZE, /* 4306 */
+  IC_VEX_L_OPSIZE, /* 4307 */
+  IC_VEX_L_OPSIZE, /* 4308 */
+  IC_VEX_L_OPSIZE, /* 4309 */
+  IC_VEX_L_OPSIZE, /* 4310 */
+  IC_VEX_L_OPSIZE, /* 4311 */
+  IC_VEX_L_W_OPSIZE, /* 4312 */
+  IC_VEX_L_W_OPSIZE, /* 4313 */
+  IC_VEX_L_W_OPSIZE, /* 4314 */
+  IC_VEX_L_W_OPSIZE, /* 4315 */
+  IC_VEX_L_W_OPSIZE, /* 4316 */
+  IC_VEX_L_W_OPSIZE, /* 4317 */
+  IC_VEX_L_W_OPSIZE, /* 4318 */
+  IC_VEX_L_W_OPSIZE, /* 4319 */
+  IC_VEX_L, /* 4320 */
+  IC_VEX_L, /* 4321 */
+  IC_VEX_L_XS, /* 4322 */
+  IC_VEX_L_XS, /* 4323 */
+  IC_VEX_L_XD, /* 4324 */
+  IC_VEX_L_XD, /* 4325 */
+  IC_VEX_L_XD, /* 4326 */
+  IC_VEX_L_XD, /* 4327 */
+  IC_VEX_L_W, /* 4328 */
+  IC_VEX_L_W, /* 4329 */
+  IC_VEX_L_W_XS, /* 4330 */
+  IC_VEX_L_W_XS, /* 4331 */
+  IC_VEX_L_W_XD, /* 4332 */
+  IC_VEX_L_W_XD, /* 4333 */
+  IC_VEX_L_W_XD, /* 4334 */
+  IC_VEX_L_W_XD, /* 4335 */
+  IC_VEX_L_OPSIZE, /* 4336 */
+  IC_VEX_L_OPSIZE, /* 4337 */
+  IC_VEX_L_OPSIZE, /* 4338 */
+  IC_VEX_L_OPSIZE, /* 4339 */
+  IC_VEX_L_OPSIZE, /* 4340 */
+  IC_VEX_L_OPSIZE, /* 4341 */
+  IC_VEX_L_OPSIZE, /* 4342 */
+  IC_VEX_L_OPSIZE, /* 4343 */
+  IC_VEX_L_W_OPSIZE, /* 4344 */
+  IC_VEX_L_W_OPSIZE, /* 4345 */
+  IC_VEX_L_W_OPSIZE, /* 4346 */
+  IC_VEX_L_W_OPSIZE, /* 4347 */
+  IC_VEX_L_W_OPSIZE, /* 4348 */
+  IC_VEX_L_W_OPSIZE, /* 4349 */
+  IC_VEX_L_W_OPSIZE, /* 4350 */
+  IC_VEX_L_W_OPSIZE, /* 4351 */
+  IC_EVEX_KZ, /* 4352 */
+  IC_EVEX_KZ, /* 4353 */
+  IC_EVEX_XS_KZ, /* 4354 */
+  IC_EVEX_XS_KZ, /* 4355 */
+  IC_EVEX_XD_KZ, /* 4356 */
+  IC_EVEX_XD_KZ, /* 4357 */
+  IC_EVEX_XD_KZ, /* 4358 */
+  IC_EVEX_XD_KZ, /* 4359 */
+  IC_EVEX_W_KZ, /* 4360 */
+  IC_EVEX_W_KZ, /* 4361 */
+  IC_EVEX_W_XS_KZ, /* 4362 */
+  IC_EVEX_W_XS_KZ, /* 4363 */
+  IC_EVEX_W_XD_KZ, /* 4364 */
+  IC_EVEX_W_XD_KZ, /* 4365 */
+  IC_EVEX_W_XD_KZ, /* 4366 */
+  IC_EVEX_W_XD_KZ, /* 4367 */
+  IC_EVEX_OPSIZE_KZ, /* 4368 */
+  IC_EVEX_OPSIZE_KZ, /* 4369 */
+  IC_EVEX_OPSIZE_KZ, /* 4370 */
+  IC_EVEX_OPSIZE_KZ, /* 4371 */
+  IC_EVEX_OPSIZE_KZ, /* 4372 */
+  IC_EVEX_OPSIZE_KZ, /* 4373 */
+  IC_EVEX_OPSIZE_KZ, /* 4374 */
+  IC_EVEX_OPSIZE_KZ, /* 4375 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4376 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4377 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4378 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4379 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4380 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4381 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4382 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4383 */
+  IC_EVEX_KZ, /* 4384 */
+  IC_EVEX_KZ, /* 4385 */
+  IC_EVEX_XS_KZ, /* 4386 */
+  IC_EVEX_XS_KZ, /* 4387 */
+  IC_EVEX_XD_KZ, /* 4388 */
+  IC_EVEX_XD_KZ, /* 4389 */
+  IC_EVEX_XD_KZ, /* 4390 */
+  IC_EVEX_XD_KZ, /* 4391 */
+  IC_EVEX_W_KZ, /* 4392 */
+  IC_EVEX_W_KZ, /* 4393 */
+  IC_EVEX_W_XS_KZ, /* 4394 */
+  IC_EVEX_W_XS_KZ, /* 4395 */
+  IC_EVEX_W_XD_KZ, /* 4396 */
+  IC_EVEX_W_XD_KZ, /* 4397 */
+  IC_EVEX_W_XD_KZ, /* 4398 */
+  IC_EVEX_W_XD_KZ, /* 4399 */
+  IC_EVEX_OPSIZE_KZ, /* 4400 */
+  IC_EVEX_OPSIZE_KZ, /* 4401 */
+  IC_EVEX_OPSIZE_KZ, /* 4402 */
+  IC_EVEX_OPSIZE_KZ, /* 4403 */
+  IC_EVEX_OPSIZE_KZ, /* 4404 */
+  IC_EVEX_OPSIZE_KZ, /* 4405 */
+  IC_EVEX_OPSIZE_KZ, /* 4406 */
+  IC_EVEX_OPSIZE_KZ, /* 4407 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4408 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4409 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4410 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4411 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4412 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4413 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4414 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4415 */
+  IC_EVEX_KZ, /* 4416 */
+  IC_EVEX_KZ, /* 4417 */
+  IC_EVEX_XS_KZ, /* 4418 */
+  IC_EVEX_XS_KZ, /* 4419 */
+  IC_EVEX_XD_KZ, /* 4420 */
+  IC_EVEX_XD_KZ, /* 4421 */
+  IC_EVEX_XD_KZ, /* 4422 */
+  IC_EVEX_XD_KZ, /* 4423 */
+  IC_EVEX_W_KZ, /* 4424 */
+  IC_EVEX_W_KZ, /* 4425 */
+  IC_EVEX_W_XS_KZ, /* 4426 */
+  IC_EVEX_W_XS_KZ, /* 4427 */
+  IC_EVEX_W_XD_KZ, /* 4428 */
+  IC_EVEX_W_XD_KZ, /* 4429 */
+  IC_EVEX_W_XD_KZ, /* 4430 */
+  IC_EVEX_W_XD_KZ, /* 4431 */
+  IC_EVEX_OPSIZE_KZ, /* 4432 */
+  IC_EVEX_OPSIZE_KZ, /* 4433 */
+  IC_EVEX_OPSIZE_KZ, /* 4434 */
+  IC_EVEX_OPSIZE_KZ, /* 4435 */
+  IC_EVEX_OPSIZE_KZ, /* 4436 */
+  IC_EVEX_OPSIZE_KZ, /* 4437 */
+  IC_EVEX_OPSIZE_KZ, /* 4438 */
+  IC_EVEX_OPSIZE_KZ, /* 4439 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4440 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4441 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4442 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4443 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4444 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4445 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4446 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4447 */
+  IC_EVEX_KZ, /* 4448 */
+  IC_EVEX_KZ, /* 4449 */
+  IC_EVEX_XS_KZ, /* 4450 */
+  IC_EVEX_XS_KZ, /* 4451 */
+  IC_EVEX_XD_KZ, /* 4452 */
+  IC_EVEX_XD_KZ, /* 4453 */
+  IC_EVEX_XD_KZ, /* 4454 */
+  IC_EVEX_XD_KZ, /* 4455 */
+  IC_EVEX_W_KZ, /* 4456 */
+  IC_EVEX_W_KZ, /* 4457 */
+  IC_EVEX_W_XS_KZ, /* 4458 */
+  IC_EVEX_W_XS_KZ, /* 4459 */
+  IC_EVEX_W_XD_KZ, /* 4460 */
+  IC_EVEX_W_XD_KZ, /* 4461 */
+  IC_EVEX_W_XD_KZ, /* 4462 */
+  IC_EVEX_W_XD_KZ, /* 4463 */
+  IC_EVEX_OPSIZE_KZ, /* 4464 */
+  IC_EVEX_OPSIZE_KZ, /* 4465 */
+  IC_EVEX_OPSIZE_KZ, /* 4466 */
+  IC_EVEX_OPSIZE_KZ, /* 4467 */
+  IC_EVEX_OPSIZE_KZ, /* 4468 */
+  IC_EVEX_OPSIZE_KZ, /* 4469 */
+  IC_EVEX_OPSIZE_KZ, /* 4470 */
+  IC_EVEX_OPSIZE_KZ, /* 4471 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4472 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4473 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4474 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4475 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4476 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4477 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4478 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4479 */
+  IC_EVEX_KZ, /* 4480 */
+  IC_EVEX_KZ, /* 4481 */
+  IC_EVEX_XS_KZ, /* 4482 */
+  IC_EVEX_XS_KZ, /* 4483 */
+  IC_EVEX_XD_KZ, /* 4484 */
+  IC_EVEX_XD_KZ, /* 4485 */
+  IC_EVEX_XD_KZ, /* 4486 */
+  IC_EVEX_XD_KZ, /* 4487 */
+  IC_EVEX_W_KZ, /* 4488 */
+  IC_EVEX_W_KZ, /* 4489 */
+  IC_EVEX_W_XS_KZ, /* 4490 */
+  IC_EVEX_W_XS_KZ, /* 4491 */
+  IC_EVEX_W_XD_KZ, /* 4492 */
+  IC_EVEX_W_XD_KZ, /* 4493 */
+  IC_EVEX_W_XD_KZ, /* 4494 */
+  IC_EVEX_W_XD_KZ, /* 4495 */
+  IC_EVEX_OPSIZE_KZ, /* 4496 */
+  IC_EVEX_OPSIZE_KZ, /* 4497 */
+  IC_EVEX_OPSIZE_KZ, /* 4498 */
+  IC_EVEX_OPSIZE_KZ, /* 4499 */
+  IC_EVEX_OPSIZE_KZ, /* 4500 */
+  IC_EVEX_OPSIZE_KZ, /* 4501 */
+  IC_EVEX_OPSIZE_KZ, /* 4502 */
+  IC_EVEX_OPSIZE_KZ, /* 4503 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4504 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4505 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4506 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4507 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4508 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4509 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4510 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4511 */
+  IC_EVEX_KZ, /* 4512 */
+  IC_EVEX_KZ, /* 4513 */
+  IC_EVEX_XS_KZ, /* 4514 */
+  IC_EVEX_XS_KZ, /* 4515 */
+  IC_EVEX_XD_KZ, /* 4516 */
+  IC_EVEX_XD_KZ, /* 4517 */
+  IC_EVEX_XD_KZ, /* 4518 */
+  IC_EVEX_XD_KZ, /* 4519 */
+  IC_EVEX_W_KZ, /* 4520 */
+  IC_EVEX_W_KZ, /* 4521 */
+  IC_EVEX_W_XS_KZ, /* 4522 */
+  IC_EVEX_W_XS_KZ, /* 4523 */
+  IC_EVEX_W_XD_KZ, /* 4524 */
+  IC_EVEX_W_XD_KZ, /* 4525 */
+  IC_EVEX_W_XD_KZ, /* 4526 */
+  IC_EVEX_W_XD_KZ, /* 4527 */
+  IC_EVEX_OPSIZE_KZ, /* 4528 */
+  IC_EVEX_OPSIZE_KZ, /* 4529 */
+  IC_EVEX_OPSIZE_KZ, /* 4530 */
+  IC_EVEX_OPSIZE_KZ, /* 4531 */
+  IC_EVEX_OPSIZE_KZ, /* 4532 */
+  IC_EVEX_OPSIZE_KZ, /* 4533 */
+  IC_EVEX_OPSIZE_KZ, /* 4534 */
+  IC_EVEX_OPSIZE_KZ, /* 4535 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4536 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4537 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4538 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4539 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4540 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4541 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4542 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4543 */
+  IC_EVEX_KZ, /* 4544 */
+  IC_EVEX_KZ, /* 4545 */
+  IC_EVEX_XS_KZ, /* 4546 */
+  IC_EVEX_XS_KZ, /* 4547 */
+  IC_EVEX_XD_KZ, /* 4548 */
+  IC_EVEX_XD_KZ, /* 4549 */
+  IC_EVEX_XD_KZ, /* 4550 */
+  IC_EVEX_XD_KZ, /* 4551 */
+  IC_EVEX_W_KZ, /* 4552 */
+  IC_EVEX_W_KZ, /* 4553 */
+  IC_EVEX_W_XS_KZ, /* 4554 */
+  IC_EVEX_W_XS_KZ, /* 4555 */
+  IC_EVEX_W_XD_KZ, /* 4556 */
+  IC_EVEX_W_XD_KZ, /* 4557 */
+  IC_EVEX_W_XD_KZ, /* 4558 */
+  IC_EVEX_W_XD_KZ, /* 4559 */
+  IC_EVEX_OPSIZE_KZ, /* 4560 */
+  IC_EVEX_OPSIZE_KZ, /* 4561 */
+  IC_EVEX_OPSIZE_KZ, /* 4562 */
+  IC_EVEX_OPSIZE_KZ, /* 4563 */
+  IC_EVEX_OPSIZE_KZ, /* 4564 */
+  IC_EVEX_OPSIZE_KZ, /* 4565 */
+  IC_EVEX_OPSIZE_KZ, /* 4566 */
+  IC_EVEX_OPSIZE_KZ, /* 4567 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4568 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4569 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4570 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4571 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4572 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4573 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4574 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4575 */
+  IC_EVEX_KZ, /* 4576 */
+  IC_EVEX_KZ, /* 4577 */
+  IC_EVEX_XS_KZ, /* 4578 */
+  IC_EVEX_XS_KZ, /* 4579 */
+  IC_EVEX_XD_KZ, /* 4580 */
+  IC_EVEX_XD_KZ, /* 4581 */
+  IC_EVEX_XD_KZ, /* 4582 */
+  IC_EVEX_XD_KZ, /* 4583 */
+  IC_EVEX_W_KZ, /* 4584 */
+  IC_EVEX_W_KZ, /* 4585 */
+  IC_EVEX_W_XS_KZ, /* 4586 */
+  IC_EVEX_W_XS_KZ, /* 4587 */
+  IC_EVEX_W_XD_KZ, /* 4588 */
+  IC_EVEX_W_XD_KZ, /* 4589 */
+  IC_EVEX_W_XD_KZ, /* 4590 */
+  IC_EVEX_W_XD_KZ, /* 4591 */
+  IC_EVEX_OPSIZE_KZ, /* 4592 */
+  IC_EVEX_OPSIZE_KZ, /* 4593 */
+  IC_EVEX_OPSIZE_KZ, /* 4594 */
+  IC_EVEX_OPSIZE_KZ, /* 4595 */
+  IC_EVEX_OPSIZE_KZ, /* 4596 */
+  IC_EVEX_OPSIZE_KZ, /* 4597 */
+  IC_EVEX_OPSIZE_KZ, /* 4598 */
+  IC_EVEX_OPSIZE_KZ, /* 4599 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4600 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4601 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4602 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4603 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4604 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4605 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4606 */
+  IC_EVEX_W_OPSIZE_KZ, /* 4607 */
+  IC, /* 4608 */
+  IC_64BIT, /* 4609 */
+  IC_XS, /* 4610 */
+  IC_64BIT_XS, /* 4611 */
+  IC_XD, /* 4612 */
+  IC_64BIT_XD, /* 4613 */
+  IC_XS, /* 4614 */
+  IC_64BIT_XS, /* 4615 */
+  IC, /* 4616 */
+  IC_64BIT_REXW, /* 4617 */
+  IC_XS, /* 4618 */
+  IC_64BIT_REXW_XS, /* 4619 */
+  IC_XD, /* 4620 */
+  IC_64BIT_REXW_XD, /* 4621 */
+  IC_XS, /* 4622 */
+  IC_64BIT_REXW_XS, /* 4623 */
+  IC_OPSIZE, /* 4624 */
+  IC_64BIT_OPSIZE, /* 4625 */
+  IC_XS_OPSIZE, /* 4626 */
+  IC_64BIT_XS_OPSIZE, /* 4627 */
+  IC_XD_OPSIZE, /* 4628 */
+  IC_64BIT_XD_OPSIZE, /* 4629 */
+  IC_XS_OPSIZE, /* 4630 */
+  IC_64BIT_XD_OPSIZE, /* 4631 */
+  IC_OPSIZE, /* 4632 */
+  IC_64BIT_REXW_OPSIZE, /* 4633 */
+  IC_XS_OPSIZE, /* 4634 */
+  IC_64BIT_REXW_XS, /* 4635 */
+  IC_XD_OPSIZE, /* 4636 */
+  IC_64BIT_REXW_XD, /* 4637 */
+  IC_XS_OPSIZE, /* 4638 */
+  IC_64BIT_REXW_XS, /* 4639 */
+  IC_ADSIZE, /* 4640 */
+  IC_64BIT_ADSIZE, /* 4641 */
+  IC_XS, /* 4642 */
+  IC_64BIT_XS, /* 4643 */
+  IC_XD, /* 4644 */
+  IC_64BIT_XD, /* 4645 */
+  IC_XS, /* 4646 */
+  IC_64BIT_XS, /* 4647 */
+  IC_ADSIZE, /* 4648 */
+  IC_64BIT_ADSIZE, /* 4649 */
+  IC_XS, /* 4650 */
+  IC_64BIT_REXW_XS, /* 4651 */
+  IC_XD, /* 4652 */
+  IC_64BIT_REXW_XD, /* 4653 */
+  IC_XS, /* 4654 */
+  IC_64BIT_REXW_XS, /* 4655 */
+  IC_OPSIZE, /* 4656 */
+  IC_64BIT_OPSIZE, /* 4657 */
+  IC_XS_OPSIZE, /* 4658 */
+  IC_64BIT_XS_OPSIZE, /* 4659 */
+  IC_XD_OPSIZE, /* 4660 */
+  IC_64BIT_XD_OPSIZE, /* 4661 */
+  IC_XS_OPSIZE, /* 4662 */
+  IC_64BIT_XD_OPSIZE, /* 4663 */
+  IC_OPSIZE, /* 4664 */
+  IC_64BIT_REXW_OPSIZE, /* 4665 */
+  IC_XS_OPSIZE, /* 4666 */
+  IC_64BIT_REXW_XS, /* 4667 */
+  IC_XD_OPSIZE, /* 4668 */
+  IC_64BIT_REXW_XD, /* 4669 */
+  IC_XS_OPSIZE, /* 4670 */
+  IC_64BIT_REXW_XS, /* 4671 */
+  IC_VEX, /* 4672 */
+  IC_VEX, /* 4673 */
+  IC_VEX_XS, /* 4674 */
+  IC_VEX_XS, /* 4675 */
+  IC_VEX_XD, /* 4676 */
+  IC_VEX_XD, /* 4677 */
+  IC_VEX_XD, /* 4678 */
+  IC_VEX_XD, /* 4679 */
+  IC_VEX_W, /* 4680 */
+  IC_VEX_W, /* 4681 */
+  IC_VEX_W_XS, /* 4682 */
+  IC_VEX_W_XS, /* 4683 */
+  IC_VEX_W_XD, /* 4684 */
+  IC_VEX_W_XD, /* 4685 */
+  IC_VEX_W_XD, /* 4686 */
+  IC_VEX_W_XD, /* 4687 */
+  IC_VEX_OPSIZE, /* 4688 */
+  IC_VEX_OPSIZE, /* 4689 */
+  IC_VEX_OPSIZE, /* 4690 */
+  IC_VEX_OPSIZE, /* 4691 */
+  IC_VEX_OPSIZE, /* 4692 */
+  IC_VEX_OPSIZE, /* 4693 */
+  IC_VEX_OPSIZE, /* 4694 */
+  IC_VEX_OPSIZE, /* 4695 */
+  IC_VEX_W_OPSIZE, /* 4696 */
+  IC_VEX_W_OPSIZE, /* 4697 */
+  IC_VEX_W_OPSIZE, /* 4698 */
+  IC_VEX_W_OPSIZE, /* 4699 */
+  IC_VEX_W_OPSIZE, /* 4700 */
+  IC_VEX_W_OPSIZE, /* 4701 */
+  IC_VEX_W_OPSIZE, /* 4702 */
+  IC_VEX_W_OPSIZE, /* 4703 */
+  IC_VEX, /* 4704 */
+  IC_VEX, /* 4705 */
+  IC_VEX_XS, /* 4706 */
+  IC_VEX_XS, /* 4707 */
+  IC_VEX_XD, /* 4708 */
+  IC_VEX_XD, /* 4709 */
+  IC_VEX_XD, /* 4710 */
+  IC_VEX_XD, /* 4711 */
+  IC_VEX_W, /* 4712 */
+  IC_VEX_W, /* 4713 */
+  IC_VEX_W_XS, /* 4714 */
+  IC_VEX_W_XS, /* 4715 */
+  IC_VEX_W_XD, /* 4716 */
+  IC_VEX_W_XD, /* 4717 */
+  IC_VEX_W_XD, /* 4718 */
+  IC_VEX_W_XD, /* 4719 */
+  IC_VEX_OPSIZE, /* 4720 */
+  IC_VEX_OPSIZE, /* 4721 */
+  IC_VEX_OPSIZE, /* 4722 */
+  IC_VEX_OPSIZE, /* 4723 */
+  IC_VEX_OPSIZE, /* 4724 */
+  IC_VEX_OPSIZE, /* 4725 */
+  IC_VEX_OPSIZE, /* 4726 */
+  IC_VEX_OPSIZE, /* 4727 */
+  IC_VEX_W_OPSIZE, /* 4728 */
+  IC_VEX_W_OPSIZE, /* 4729 */
+  IC_VEX_W_OPSIZE, /* 4730 */
+  IC_VEX_W_OPSIZE, /* 4731 */
+  IC_VEX_W_OPSIZE, /* 4732 */
+  IC_VEX_W_OPSIZE, /* 4733 */
+  IC_VEX_W_OPSIZE, /* 4734 */
+  IC_VEX_W_OPSIZE, /* 4735 */
+  IC_VEX_L, /* 4736 */
+  IC_VEX_L, /* 4737 */
+  IC_VEX_L_XS, /* 4738 */
+  IC_VEX_L_XS, /* 4739 */
+  IC_VEX_L_XD, /* 4740 */
+  IC_VEX_L_XD, /* 4741 */
+  IC_VEX_L_XD, /* 4742 */
+  IC_VEX_L_XD, /* 4743 */
+  IC_VEX_L_W, /* 4744 */
+  IC_VEX_L_W, /* 4745 */
+  IC_VEX_L_W_XS, /* 4746 */
+  IC_VEX_L_W_XS, /* 4747 */
+  IC_VEX_L_W_XD, /* 4748 */
+  IC_VEX_L_W_XD, /* 4749 */
+  IC_VEX_L_W_XD, /* 4750 */
+  IC_VEX_L_W_XD, /* 4751 */
+  IC_VEX_L_OPSIZE, /* 4752 */
+  IC_VEX_L_OPSIZE, /* 4753 */
+  IC_VEX_L_OPSIZE, /* 4754 */
+  IC_VEX_L_OPSIZE, /* 4755 */
+  IC_VEX_L_OPSIZE, /* 4756 */
+  IC_VEX_L_OPSIZE, /* 4757 */
+  IC_VEX_L_OPSIZE, /* 4758 */
+  IC_VEX_L_OPSIZE, /* 4759 */
+  IC_VEX_L_W_OPSIZE, /* 4760 */
+  IC_VEX_L_W_OPSIZE, /* 4761 */
+  IC_VEX_L_W_OPSIZE, /* 4762 */
+  IC_VEX_L_W_OPSIZE, /* 4763 */
+  IC_VEX_L_W_OPSIZE, /* 4764 */
+  IC_VEX_L_W_OPSIZE, /* 4765 */
+  IC_VEX_L_W_OPSIZE, /* 4766 */
+  IC_VEX_L_W_OPSIZE, /* 4767 */
+  IC_VEX_L, /* 4768 */
+  IC_VEX_L, /* 4769 */
+  IC_VEX_L_XS, /* 4770 */
+  IC_VEX_L_XS, /* 4771 */
+  IC_VEX_L_XD, /* 4772 */
+  IC_VEX_L_XD, /* 4773 */
+  IC_VEX_L_XD, /* 4774 */
+  IC_VEX_L_XD, /* 4775 */
+  IC_VEX_L_W, /* 4776 */
+  IC_VEX_L_W, /* 4777 */
+  IC_VEX_L_W_XS, /* 4778 */
+  IC_VEX_L_W_XS, /* 4779 */
+  IC_VEX_L_W_XD, /* 4780 */
+  IC_VEX_L_W_XD, /* 4781 */
+  IC_VEX_L_W_XD, /* 4782 */
+  IC_VEX_L_W_XD, /* 4783 */
+  IC_VEX_L_OPSIZE, /* 4784 */
+  IC_VEX_L_OPSIZE, /* 4785 */
+  IC_VEX_L_OPSIZE, /* 4786 */
+  IC_VEX_L_OPSIZE, /* 4787 */
+  IC_VEX_L_OPSIZE, /* 4788 */
+  IC_VEX_L_OPSIZE, /* 4789 */
+  IC_VEX_L_OPSIZE, /* 4790 */
+  IC_VEX_L_OPSIZE, /* 4791 */
+  IC_VEX_L_W_OPSIZE, /* 4792 */
+  IC_VEX_L_W_OPSIZE, /* 4793 */
+  IC_VEX_L_W_OPSIZE, /* 4794 */
+  IC_VEX_L_W_OPSIZE, /* 4795 */
+  IC_VEX_L_W_OPSIZE, /* 4796 */
+  IC_VEX_L_W_OPSIZE, /* 4797 */
+  IC_VEX_L_W_OPSIZE, /* 4798 */
+  IC_VEX_L_W_OPSIZE, /* 4799 */
+  IC_VEX_L, /* 4800 */
+  IC_VEX_L, /* 4801 */
+  IC_VEX_L_XS, /* 4802 */
+  IC_VEX_L_XS, /* 4803 */
+  IC_VEX_L_XD, /* 4804 */
+  IC_VEX_L_XD, /* 4805 */
+  IC_VEX_L_XD, /* 4806 */
+  IC_VEX_L_XD, /* 4807 */
+  IC_VEX_L_W, /* 4808 */
+  IC_VEX_L_W, /* 4809 */
+  IC_VEX_L_W_XS, /* 4810 */
+  IC_VEX_L_W_XS, /* 4811 */
+  IC_VEX_L_W_XD, /* 4812 */
+  IC_VEX_L_W_XD, /* 4813 */
+  IC_VEX_L_W_XD, /* 4814 */
+  IC_VEX_L_W_XD, /* 4815 */
+  IC_VEX_L_OPSIZE, /* 4816 */
+  IC_VEX_L_OPSIZE, /* 4817 */
+  IC_VEX_L_OPSIZE, /* 4818 */
+  IC_VEX_L_OPSIZE, /* 4819 */
+  IC_VEX_L_OPSIZE, /* 4820 */
+  IC_VEX_L_OPSIZE, /* 4821 */
+  IC_VEX_L_OPSIZE, /* 4822 */
+  IC_VEX_L_OPSIZE, /* 4823 */
+  IC_VEX_L_W_OPSIZE, /* 4824 */
+  IC_VEX_L_W_OPSIZE, /* 4825 */
+  IC_VEX_L_W_OPSIZE, /* 4826 */
+  IC_VEX_L_W_OPSIZE, /* 4827 */
+  IC_VEX_L_W_OPSIZE, /* 4828 */
+  IC_VEX_L_W_OPSIZE, /* 4829 */
+  IC_VEX_L_W_OPSIZE, /* 4830 */
+  IC_VEX_L_W_OPSIZE, /* 4831 */
+  IC_VEX_L, /* 4832 */
+  IC_VEX_L, /* 4833 */
+  IC_VEX_L_XS, /* 4834 */
+  IC_VEX_L_XS, /* 4835 */
+  IC_VEX_L_XD, /* 4836 */
+  IC_VEX_L_XD, /* 4837 */
+  IC_VEX_L_XD, /* 4838 */
+  IC_VEX_L_XD, /* 4839 */
+  IC_VEX_L_W, /* 4840 */
+  IC_VEX_L_W, /* 4841 */
+  IC_VEX_L_W_XS, /* 4842 */
+  IC_VEX_L_W_XS, /* 4843 */
+  IC_VEX_L_W_XD, /* 4844 */
+  IC_VEX_L_W_XD, /* 4845 */
+  IC_VEX_L_W_XD, /* 4846 */
+  IC_VEX_L_W_XD, /* 4847 */
+  IC_VEX_L_OPSIZE, /* 4848 */
+  IC_VEX_L_OPSIZE, /* 4849 */
+  IC_VEX_L_OPSIZE, /* 4850 */
+  IC_VEX_L_OPSIZE, /* 4851 */
+  IC_VEX_L_OPSIZE, /* 4852 */
+  IC_VEX_L_OPSIZE, /* 4853 */
+  IC_VEX_L_OPSIZE, /* 4854 */
+  IC_VEX_L_OPSIZE, /* 4855 */
+  IC_VEX_L_W_OPSIZE, /* 4856 */
+  IC_VEX_L_W_OPSIZE, /* 4857 */
+  IC_VEX_L_W_OPSIZE, /* 4858 */
+  IC_VEX_L_W_OPSIZE, /* 4859 */
+  IC_VEX_L_W_OPSIZE, /* 4860 */
+  IC_VEX_L_W_OPSIZE, /* 4861 */
+  IC_VEX_L_W_OPSIZE, /* 4862 */
+  IC_VEX_L_W_OPSIZE, /* 4863 */
+  IC_EVEX_L_KZ, /* 4864 */
+  IC_EVEX_L_KZ, /* 4865 */
+  IC_EVEX_L_XS_KZ, /* 4866 */
+  IC_EVEX_L_XS_KZ, /* 4867 */
+  IC_EVEX_L_XD_KZ, /* 4868 */
+  IC_EVEX_L_XD_KZ, /* 4869 */
+  IC_EVEX_L_XD_KZ, /* 4870 */
+  IC_EVEX_L_XD_KZ, /* 4871 */
+  IC_EVEX_L_W_KZ, /* 4872 */
+  IC_EVEX_L_W_KZ, /* 4873 */
+  IC_EVEX_L_W_XS_KZ, /* 4874 */
+  IC_EVEX_L_W_XS_KZ, /* 4875 */
+  IC_EVEX_L_W_XD_KZ, /* 4876 */
+  IC_EVEX_L_W_XD_KZ, /* 4877 */
+  IC_EVEX_L_W_XD_KZ, /* 4878 */
+  IC_EVEX_L_W_XD_KZ, /* 4879 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4880 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4881 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4882 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4883 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4884 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4885 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4886 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4887 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4888 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4889 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4890 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4891 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4892 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4893 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4894 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4895 */
+  IC_EVEX_L_KZ, /* 4896 */
+  IC_EVEX_L_KZ, /* 4897 */
+  IC_EVEX_L_XS_KZ, /* 4898 */
+  IC_EVEX_L_XS_KZ, /* 4899 */
+  IC_EVEX_L_XD_KZ, /* 4900 */
+  IC_EVEX_L_XD_KZ, /* 4901 */
+  IC_EVEX_L_XD_KZ, /* 4902 */
+  IC_EVEX_L_XD_KZ, /* 4903 */
+  IC_EVEX_L_W_KZ, /* 4904 */
+  IC_EVEX_L_W_KZ, /* 4905 */
+  IC_EVEX_L_W_XS_KZ, /* 4906 */
+  IC_EVEX_L_W_XS_KZ, /* 4907 */
+  IC_EVEX_L_W_XD_KZ, /* 4908 */
+  IC_EVEX_L_W_XD_KZ, /* 4909 */
+  IC_EVEX_L_W_XD_KZ, /* 4910 */
+  IC_EVEX_L_W_XD_KZ, /* 4911 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4912 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4913 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4914 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4915 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4916 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4917 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4918 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4919 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4920 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4921 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4922 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4923 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4924 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4925 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4926 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4927 */
+  IC_EVEX_L_KZ, /* 4928 */
+  IC_EVEX_L_KZ, /* 4929 */
+  IC_EVEX_L_XS_KZ, /* 4930 */
+  IC_EVEX_L_XS_KZ, /* 4931 */
+  IC_EVEX_L_XD_KZ, /* 4932 */
+  IC_EVEX_L_XD_KZ, /* 4933 */
+  IC_EVEX_L_XD_KZ, /* 4934 */
+  IC_EVEX_L_XD_KZ, /* 4935 */
+  IC_EVEX_L_W_KZ, /* 4936 */
+  IC_EVEX_L_W_KZ, /* 4937 */
+  IC_EVEX_L_W_XS_KZ, /* 4938 */
+  IC_EVEX_L_W_XS_KZ, /* 4939 */
+  IC_EVEX_L_W_XD_KZ, /* 4940 */
+  IC_EVEX_L_W_XD_KZ, /* 4941 */
+  IC_EVEX_L_W_XD_KZ, /* 4942 */
+  IC_EVEX_L_W_XD_KZ, /* 4943 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4944 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4945 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4946 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4947 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4948 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4949 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4950 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4951 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4952 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4953 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4954 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4955 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4956 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4957 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4958 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4959 */
+  IC_EVEX_L_KZ, /* 4960 */
+  IC_EVEX_L_KZ, /* 4961 */
+  IC_EVEX_L_XS_KZ, /* 4962 */
+  IC_EVEX_L_XS_KZ, /* 4963 */
+  IC_EVEX_L_XD_KZ, /* 4964 */
+  IC_EVEX_L_XD_KZ, /* 4965 */
+  IC_EVEX_L_XD_KZ, /* 4966 */
+  IC_EVEX_L_XD_KZ, /* 4967 */
+  IC_EVEX_L_W_KZ, /* 4968 */
+  IC_EVEX_L_W_KZ, /* 4969 */
+  IC_EVEX_L_W_XS_KZ, /* 4970 */
+  IC_EVEX_L_W_XS_KZ, /* 4971 */
+  IC_EVEX_L_W_XD_KZ, /* 4972 */
+  IC_EVEX_L_W_XD_KZ, /* 4973 */
+  IC_EVEX_L_W_XD_KZ, /* 4974 */
+  IC_EVEX_L_W_XD_KZ, /* 4975 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4976 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4977 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4978 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4979 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4980 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4981 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4982 */
+  IC_EVEX_L_OPSIZE_KZ, /* 4983 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4984 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4985 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4986 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4987 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4988 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4989 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4990 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 4991 */
+  IC_EVEX_L_KZ, /* 4992 */
+  IC_EVEX_L_KZ, /* 4993 */
+  IC_EVEX_L_XS_KZ, /* 4994 */
+  IC_EVEX_L_XS_KZ, /* 4995 */
+  IC_EVEX_L_XD_KZ, /* 4996 */
+  IC_EVEX_L_XD_KZ, /* 4997 */
+  IC_EVEX_L_XD_KZ, /* 4998 */
+  IC_EVEX_L_XD_KZ, /* 4999 */
+  IC_EVEX_L_W_KZ, /* 5000 */
+  IC_EVEX_L_W_KZ, /* 5001 */
+  IC_EVEX_L_W_XS_KZ, /* 5002 */
+  IC_EVEX_L_W_XS_KZ, /* 5003 */
+  IC_EVEX_L_W_XD_KZ, /* 5004 */
+  IC_EVEX_L_W_XD_KZ, /* 5005 */
+  IC_EVEX_L_W_XD_KZ, /* 5006 */
+  IC_EVEX_L_W_XD_KZ, /* 5007 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5008 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5009 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5010 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5011 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5012 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5013 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5014 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5015 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5016 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5017 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5018 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5019 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5020 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5021 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5022 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5023 */
+  IC_EVEX_L_KZ, /* 5024 */
+  IC_EVEX_L_KZ, /* 5025 */
+  IC_EVEX_L_XS_KZ, /* 5026 */
+  IC_EVEX_L_XS_KZ, /* 5027 */
+  IC_EVEX_L_XD_KZ, /* 5028 */
+  IC_EVEX_L_XD_KZ, /* 5029 */
+  IC_EVEX_L_XD_KZ, /* 5030 */
+  IC_EVEX_L_XD_KZ, /* 5031 */
+  IC_EVEX_L_W_KZ, /* 5032 */
+  IC_EVEX_L_W_KZ, /* 5033 */
+  IC_EVEX_L_W_XS_KZ, /* 5034 */
+  IC_EVEX_L_W_XS_KZ, /* 5035 */
+  IC_EVEX_L_W_XD_KZ, /* 5036 */
+  IC_EVEX_L_W_XD_KZ, /* 5037 */
+  IC_EVEX_L_W_XD_KZ, /* 5038 */
+  IC_EVEX_L_W_XD_KZ, /* 5039 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5040 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5041 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5042 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5043 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5044 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5045 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5046 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5047 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5048 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5049 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5050 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5051 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5052 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5053 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5054 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5055 */
+  IC_EVEX_L_KZ, /* 5056 */
+  IC_EVEX_L_KZ, /* 5057 */
+  IC_EVEX_L_XS_KZ, /* 5058 */
+  IC_EVEX_L_XS_KZ, /* 5059 */
+  IC_EVEX_L_XD_KZ, /* 5060 */
+  IC_EVEX_L_XD_KZ, /* 5061 */
+  IC_EVEX_L_XD_KZ, /* 5062 */
+  IC_EVEX_L_XD_KZ, /* 5063 */
+  IC_EVEX_L_W_KZ, /* 5064 */
+  IC_EVEX_L_W_KZ, /* 5065 */
+  IC_EVEX_L_W_XS_KZ, /* 5066 */
+  IC_EVEX_L_W_XS_KZ, /* 5067 */
+  IC_EVEX_L_W_XD_KZ, /* 5068 */
+  IC_EVEX_L_W_XD_KZ, /* 5069 */
+  IC_EVEX_L_W_XD_KZ, /* 5070 */
+  IC_EVEX_L_W_XD_KZ, /* 5071 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5072 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5073 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5074 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5075 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5076 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5077 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5078 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5079 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5080 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5081 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5082 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5083 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5084 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5085 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5086 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5087 */
+  IC_EVEX_L_KZ, /* 5088 */
+  IC_EVEX_L_KZ, /* 5089 */
+  IC_EVEX_L_XS_KZ, /* 5090 */
+  IC_EVEX_L_XS_KZ, /* 5091 */
+  IC_EVEX_L_XD_KZ, /* 5092 */
+  IC_EVEX_L_XD_KZ, /* 5093 */
+  IC_EVEX_L_XD_KZ, /* 5094 */
+  IC_EVEX_L_XD_KZ, /* 5095 */
+  IC_EVEX_L_W_KZ, /* 5096 */
+  IC_EVEX_L_W_KZ, /* 5097 */
+  IC_EVEX_L_W_XS_KZ, /* 5098 */
+  IC_EVEX_L_W_XS_KZ, /* 5099 */
+  IC_EVEX_L_W_XD_KZ, /* 5100 */
+  IC_EVEX_L_W_XD_KZ, /* 5101 */
+  IC_EVEX_L_W_XD_KZ, /* 5102 */
+  IC_EVEX_L_W_XD_KZ, /* 5103 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5104 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5105 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5106 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5107 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5108 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5109 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5110 */
+  IC_EVEX_L_OPSIZE_KZ, /* 5111 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5112 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5113 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5114 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5115 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5116 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5117 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5118 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 5119 */
+  IC, /* 5120 */
+  IC_64BIT, /* 5121 */
+  IC_XS, /* 5122 */
+  IC_64BIT_XS, /* 5123 */
+  IC_XD, /* 5124 */
+  IC_64BIT_XD, /* 5125 */
+  IC_XS, /* 5126 */
+  IC_64BIT_XS, /* 5127 */
+  IC, /* 5128 */
+  IC_64BIT_REXW, /* 5129 */
+  IC_XS, /* 5130 */
+  IC_64BIT_REXW_XS, /* 5131 */
+  IC_XD, /* 5132 */
+  IC_64BIT_REXW_XD, /* 5133 */
+  IC_XS, /* 5134 */
+  IC_64BIT_REXW_XS, /* 5135 */
+  IC_OPSIZE, /* 5136 */
+  IC_64BIT_OPSIZE, /* 5137 */
+  IC_XS_OPSIZE, /* 5138 */
+  IC_64BIT_XS_OPSIZE, /* 5139 */
+  IC_XD_OPSIZE, /* 5140 */
+  IC_64BIT_XD_OPSIZE, /* 5141 */
+  IC_XS_OPSIZE, /* 5142 */
+  IC_64BIT_XD_OPSIZE, /* 5143 */
+  IC_OPSIZE, /* 5144 */
+  IC_64BIT_REXW_OPSIZE, /* 5145 */
+  IC_XS_OPSIZE, /* 5146 */
+  IC_64BIT_REXW_XS, /* 5147 */
+  IC_XD_OPSIZE, /* 5148 */
+  IC_64BIT_REXW_XD, /* 5149 */
+  IC_XS_OPSIZE, /* 5150 */
+  IC_64BIT_REXW_XS, /* 5151 */
+  IC_ADSIZE, /* 5152 */
+  IC_64BIT_ADSIZE, /* 5153 */
+  IC_XS, /* 5154 */
+  IC_64BIT_XS, /* 5155 */
+  IC_XD, /* 5156 */
+  IC_64BIT_XD, /* 5157 */
+  IC_XS, /* 5158 */
+  IC_64BIT_XS, /* 5159 */
+  IC_ADSIZE, /* 5160 */
+  IC_64BIT_ADSIZE, /* 5161 */
+  IC_XS, /* 5162 */
+  IC_64BIT_REXW_XS, /* 5163 */
+  IC_XD, /* 5164 */
+  IC_64BIT_REXW_XD, /* 5165 */
+  IC_XS, /* 5166 */
+  IC_64BIT_REXW_XS, /* 5167 */
+  IC_OPSIZE, /* 5168 */
+  IC_64BIT_OPSIZE, /* 5169 */
+  IC_XS_OPSIZE, /* 5170 */
+  IC_64BIT_XS_OPSIZE, /* 5171 */
+  IC_XD_OPSIZE, /* 5172 */
+  IC_64BIT_XD_OPSIZE, /* 5173 */
+  IC_XS_OPSIZE, /* 5174 */
+  IC_64BIT_XD_OPSIZE, /* 5175 */
+  IC_OPSIZE, /* 5176 */
+  IC_64BIT_REXW_OPSIZE, /* 5177 */
+  IC_XS_OPSIZE, /* 5178 */
+  IC_64BIT_REXW_XS, /* 5179 */
+  IC_XD_OPSIZE, /* 5180 */
+  IC_64BIT_REXW_XD, /* 5181 */
+  IC_XS_OPSIZE, /* 5182 */
+  IC_64BIT_REXW_XS, /* 5183 */
+  IC_VEX, /* 5184 */
+  IC_VEX, /* 5185 */
+  IC_VEX_XS, /* 5186 */
+  IC_VEX_XS, /* 5187 */
+  IC_VEX_XD, /* 5188 */
+  IC_VEX_XD, /* 5189 */
+  IC_VEX_XD, /* 5190 */
+  IC_VEX_XD, /* 5191 */
+  IC_VEX_W, /* 5192 */
+  IC_VEX_W, /* 5193 */
+  IC_VEX_W_XS, /* 5194 */
+  IC_VEX_W_XS, /* 5195 */
+  IC_VEX_W_XD, /* 5196 */
+  IC_VEX_W_XD, /* 5197 */
+  IC_VEX_W_XD, /* 5198 */
+  IC_VEX_W_XD, /* 5199 */
+  IC_VEX_OPSIZE, /* 5200 */
+  IC_VEX_OPSIZE, /* 5201 */
+  IC_VEX_OPSIZE, /* 5202 */
+  IC_VEX_OPSIZE, /* 5203 */
+  IC_VEX_OPSIZE, /* 5204 */
+  IC_VEX_OPSIZE, /* 5205 */
+  IC_VEX_OPSIZE, /* 5206 */
+  IC_VEX_OPSIZE, /* 5207 */
+  IC_VEX_W_OPSIZE, /* 5208 */
+  IC_VEX_W_OPSIZE, /* 5209 */
+  IC_VEX_W_OPSIZE, /* 5210 */
+  IC_VEX_W_OPSIZE, /* 5211 */
+  IC_VEX_W_OPSIZE, /* 5212 */
+  IC_VEX_W_OPSIZE, /* 5213 */
+  IC_VEX_W_OPSIZE, /* 5214 */
+  IC_VEX_W_OPSIZE, /* 5215 */
+  IC_VEX, /* 5216 */
+  IC_VEX, /* 5217 */
+  IC_VEX_XS, /* 5218 */
+  IC_VEX_XS, /* 5219 */
+  IC_VEX_XD, /* 5220 */
+  IC_VEX_XD, /* 5221 */
+  IC_VEX_XD, /* 5222 */
+  IC_VEX_XD, /* 5223 */
+  IC_VEX_W, /* 5224 */
+  IC_VEX_W, /* 5225 */
+  IC_VEX_W_XS, /* 5226 */
+  IC_VEX_W_XS, /* 5227 */
+  IC_VEX_W_XD, /* 5228 */
+  IC_VEX_W_XD, /* 5229 */
+  IC_VEX_W_XD, /* 5230 */
+  IC_VEX_W_XD, /* 5231 */
+  IC_VEX_OPSIZE, /* 5232 */
+  IC_VEX_OPSIZE, /* 5233 */
+  IC_VEX_OPSIZE, /* 5234 */
+  IC_VEX_OPSIZE, /* 5235 */
+  IC_VEX_OPSIZE, /* 5236 */
+  IC_VEX_OPSIZE, /* 5237 */
+  IC_VEX_OPSIZE, /* 5238 */
+  IC_VEX_OPSIZE, /* 5239 */
+  IC_VEX_W_OPSIZE, /* 5240 */
+  IC_VEX_W_OPSIZE, /* 5241 */
+  IC_VEX_W_OPSIZE, /* 5242 */
+  IC_VEX_W_OPSIZE, /* 5243 */
+  IC_VEX_W_OPSIZE, /* 5244 */
+  IC_VEX_W_OPSIZE, /* 5245 */
+  IC_VEX_W_OPSIZE, /* 5246 */
+  IC_VEX_W_OPSIZE, /* 5247 */
+  IC_VEX_L, /* 5248 */
+  IC_VEX_L, /* 5249 */
+  IC_VEX_L_XS, /* 5250 */
+  IC_VEX_L_XS, /* 5251 */
+  IC_VEX_L_XD, /* 5252 */
+  IC_VEX_L_XD, /* 5253 */
+  IC_VEX_L_XD, /* 5254 */
+  IC_VEX_L_XD, /* 5255 */
+  IC_VEX_L_W, /* 5256 */
+  IC_VEX_L_W, /* 5257 */
+  IC_VEX_L_W_XS, /* 5258 */
+  IC_VEX_L_W_XS, /* 5259 */
+  IC_VEX_L_W_XD, /* 5260 */
+  IC_VEX_L_W_XD, /* 5261 */
+  IC_VEX_L_W_XD, /* 5262 */
+  IC_VEX_L_W_XD, /* 5263 */
+  IC_VEX_L_OPSIZE, /* 5264 */
+  IC_VEX_L_OPSIZE, /* 5265 */
+  IC_VEX_L_OPSIZE, /* 5266 */
+  IC_VEX_L_OPSIZE, /* 5267 */
+  IC_VEX_L_OPSIZE, /* 5268 */
+  IC_VEX_L_OPSIZE, /* 5269 */
+  IC_VEX_L_OPSIZE, /* 5270 */
+  IC_VEX_L_OPSIZE, /* 5271 */
+  IC_VEX_L_W_OPSIZE, /* 5272 */
+  IC_VEX_L_W_OPSIZE, /* 5273 */
+  IC_VEX_L_W_OPSIZE, /* 5274 */
+  IC_VEX_L_W_OPSIZE, /* 5275 */
+  IC_VEX_L_W_OPSIZE, /* 5276 */
+  IC_VEX_L_W_OPSIZE, /* 5277 */
+  IC_VEX_L_W_OPSIZE, /* 5278 */
+  IC_VEX_L_W_OPSIZE, /* 5279 */
+  IC_VEX_L, /* 5280 */
+  IC_VEX_L, /* 5281 */
+  IC_VEX_L_XS, /* 5282 */
+  IC_VEX_L_XS, /* 5283 */
+  IC_VEX_L_XD, /* 5284 */
+  IC_VEX_L_XD, /* 5285 */
+  IC_VEX_L_XD, /* 5286 */
+  IC_VEX_L_XD, /* 5287 */
+  IC_VEX_L_W, /* 5288 */
+  IC_VEX_L_W, /* 5289 */
+  IC_VEX_L_W_XS, /* 5290 */
+  IC_VEX_L_W_XS, /* 5291 */
+  IC_VEX_L_W_XD, /* 5292 */
+  IC_VEX_L_W_XD, /* 5293 */
+  IC_VEX_L_W_XD, /* 5294 */
+  IC_VEX_L_W_XD, /* 5295 */
+  IC_VEX_L_OPSIZE, /* 5296 */
+  IC_VEX_L_OPSIZE, /* 5297 */
+  IC_VEX_L_OPSIZE, /* 5298 */
+  IC_VEX_L_OPSIZE, /* 5299 */
+  IC_VEX_L_OPSIZE, /* 5300 */
+  IC_VEX_L_OPSIZE, /* 5301 */
+  IC_VEX_L_OPSIZE, /* 5302 */
+  IC_VEX_L_OPSIZE, /* 5303 */
+  IC_VEX_L_W_OPSIZE, /* 5304 */
+  IC_VEX_L_W_OPSIZE, /* 5305 */
+  IC_VEX_L_W_OPSIZE, /* 5306 */
+  IC_VEX_L_W_OPSIZE, /* 5307 */
+  IC_VEX_L_W_OPSIZE, /* 5308 */
+  IC_VEX_L_W_OPSIZE, /* 5309 */
+  IC_VEX_L_W_OPSIZE, /* 5310 */
+  IC_VEX_L_W_OPSIZE, /* 5311 */
+  IC_VEX_L, /* 5312 */
+  IC_VEX_L, /* 5313 */
+  IC_VEX_L_XS, /* 5314 */
+  IC_VEX_L_XS, /* 5315 */
+  IC_VEX_L_XD, /* 5316 */
+  IC_VEX_L_XD, /* 5317 */
+  IC_VEX_L_XD, /* 5318 */
+  IC_VEX_L_XD, /* 5319 */
+  IC_VEX_L_W, /* 5320 */
+  IC_VEX_L_W, /* 5321 */
+  IC_VEX_L_W_XS, /* 5322 */
+  IC_VEX_L_W_XS, /* 5323 */
+  IC_VEX_L_W_XD, /* 5324 */
+  IC_VEX_L_W_XD, /* 5325 */
+  IC_VEX_L_W_XD, /* 5326 */
+  IC_VEX_L_W_XD, /* 5327 */
+  IC_VEX_L_OPSIZE, /* 5328 */
+  IC_VEX_L_OPSIZE, /* 5329 */
+  IC_VEX_L_OPSIZE, /* 5330 */
+  IC_VEX_L_OPSIZE, /* 5331 */
+  IC_VEX_L_OPSIZE, /* 5332 */
+  IC_VEX_L_OPSIZE, /* 5333 */
+  IC_VEX_L_OPSIZE, /* 5334 */
+  IC_VEX_L_OPSIZE, /* 5335 */
+  IC_VEX_L_W_OPSIZE, /* 5336 */
+  IC_VEX_L_W_OPSIZE, /* 5337 */
+  IC_VEX_L_W_OPSIZE, /* 5338 */
+  IC_VEX_L_W_OPSIZE, /* 5339 */
+  IC_VEX_L_W_OPSIZE, /* 5340 */
+  IC_VEX_L_W_OPSIZE, /* 5341 */
+  IC_VEX_L_W_OPSIZE, /* 5342 */
+  IC_VEX_L_W_OPSIZE, /* 5343 */
+  IC_VEX_L, /* 5344 */
+  IC_VEX_L, /* 5345 */
+  IC_VEX_L_XS, /* 5346 */
+  IC_VEX_L_XS, /* 5347 */
+  IC_VEX_L_XD, /* 5348 */
+  IC_VEX_L_XD, /* 5349 */
+  IC_VEX_L_XD, /* 5350 */
+  IC_VEX_L_XD, /* 5351 */
+  IC_VEX_L_W, /* 5352 */
+  IC_VEX_L_W, /* 5353 */
+  IC_VEX_L_W_XS, /* 5354 */
+  IC_VEX_L_W_XS, /* 5355 */
+  IC_VEX_L_W_XD, /* 5356 */
+  IC_VEX_L_W_XD, /* 5357 */
+  IC_VEX_L_W_XD, /* 5358 */
+  IC_VEX_L_W_XD, /* 5359 */
+  IC_VEX_L_OPSIZE, /* 5360 */
+  IC_VEX_L_OPSIZE, /* 5361 */
+  IC_VEX_L_OPSIZE, /* 5362 */
+  IC_VEX_L_OPSIZE, /* 5363 */
+  IC_VEX_L_OPSIZE, /* 5364 */
+  IC_VEX_L_OPSIZE, /* 5365 */
+  IC_VEX_L_OPSIZE, /* 5366 */
+  IC_VEX_L_OPSIZE, /* 5367 */
+  IC_VEX_L_W_OPSIZE, /* 5368 */
+  IC_VEX_L_W_OPSIZE, /* 5369 */
+  IC_VEX_L_W_OPSIZE, /* 5370 */
+  IC_VEX_L_W_OPSIZE, /* 5371 */
+  IC_VEX_L_W_OPSIZE, /* 5372 */
+  IC_VEX_L_W_OPSIZE, /* 5373 */
+  IC_VEX_L_W_OPSIZE, /* 5374 */
+  IC_VEX_L_W_OPSIZE, /* 5375 */
+  IC_EVEX_L2_KZ, /* 5376 */
+  IC_EVEX_L2_KZ, /* 5377 */
+  IC_EVEX_L2_XS_KZ, /* 5378 */
+  IC_EVEX_L2_XS_KZ, /* 5379 */
+  IC_EVEX_L2_XD_KZ, /* 5380 */
+  IC_EVEX_L2_XD_KZ, /* 5381 */
+  IC_EVEX_L2_XD_KZ, /* 5382 */
+  IC_EVEX_L2_XD_KZ, /* 5383 */
+  IC_EVEX_L2_W_KZ, /* 5384 */
+  IC_EVEX_L2_W_KZ, /* 5385 */
+  IC_EVEX_L2_W_XS_KZ, /* 5386 */
+  IC_EVEX_L2_W_XS_KZ, /* 5387 */
+  IC_EVEX_L2_W_XD_KZ, /* 5388 */
+  IC_EVEX_L2_W_XD_KZ, /* 5389 */
+  IC_EVEX_L2_W_XD_KZ, /* 5390 */
+  IC_EVEX_L2_W_XD_KZ, /* 5391 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5392 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5393 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5394 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5395 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5396 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5397 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5398 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5399 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5400 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5401 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5402 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5403 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5404 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5405 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5406 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5407 */
+  IC_EVEX_L2_KZ, /* 5408 */
+  IC_EVEX_L2_KZ, /* 5409 */
+  IC_EVEX_L2_XS_KZ, /* 5410 */
+  IC_EVEX_L2_XS_KZ, /* 5411 */
+  IC_EVEX_L2_XD_KZ, /* 5412 */
+  IC_EVEX_L2_XD_KZ, /* 5413 */
+  IC_EVEX_L2_XD_KZ, /* 5414 */
+  IC_EVEX_L2_XD_KZ, /* 5415 */
+  IC_EVEX_L2_W_KZ, /* 5416 */
+  IC_EVEX_L2_W_KZ, /* 5417 */
+  IC_EVEX_L2_W_XS_KZ, /* 5418 */
+  IC_EVEX_L2_W_XS_KZ, /* 5419 */
+  IC_EVEX_L2_W_XD_KZ, /* 5420 */
+  IC_EVEX_L2_W_XD_KZ, /* 5421 */
+  IC_EVEX_L2_W_XD_KZ, /* 5422 */
+  IC_EVEX_L2_W_XD_KZ, /* 5423 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5424 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5425 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5426 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5427 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5428 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5429 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5430 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5431 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5432 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5433 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5434 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5435 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5436 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5437 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5438 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5439 */
+  IC_EVEX_L2_KZ, /* 5440 */
+  IC_EVEX_L2_KZ, /* 5441 */
+  IC_EVEX_L2_XS_KZ, /* 5442 */
+  IC_EVEX_L2_XS_KZ, /* 5443 */
+  IC_EVEX_L2_XD_KZ, /* 5444 */
+  IC_EVEX_L2_XD_KZ, /* 5445 */
+  IC_EVEX_L2_XD_KZ, /* 5446 */
+  IC_EVEX_L2_XD_KZ, /* 5447 */
+  IC_EVEX_L2_W_KZ, /* 5448 */
+  IC_EVEX_L2_W_KZ, /* 5449 */
+  IC_EVEX_L2_W_XS_KZ, /* 5450 */
+  IC_EVEX_L2_W_XS_KZ, /* 5451 */
+  IC_EVEX_L2_W_XD_KZ, /* 5452 */
+  IC_EVEX_L2_W_XD_KZ, /* 5453 */
+  IC_EVEX_L2_W_XD_KZ, /* 5454 */
+  IC_EVEX_L2_W_XD_KZ, /* 5455 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5456 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5457 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5458 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5459 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5460 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5461 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5462 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5463 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5464 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5465 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5466 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5467 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5468 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5469 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5470 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5471 */
+  IC_EVEX_L2_KZ, /* 5472 */
+  IC_EVEX_L2_KZ, /* 5473 */
+  IC_EVEX_L2_XS_KZ, /* 5474 */
+  IC_EVEX_L2_XS_KZ, /* 5475 */
+  IC_EVEX_L2_XD_KZ, /* 5476 */
+  IC_EVEX_L2_XD_KZ, /* 5477 */
+  IC_EVEX_L2_XD_KZ, /* 5478 */
+  IC_EVEX_L2_XD_KZ, /* 5479 */
+  IC_EVEX_L2_W_KZ, /* 5480 */
+  IC_EVEX_L2_W_KZ, /* 5481 */
+  IC_EVEX_L2_W_XS_KZ, /* 5482 */
+  IC_EVEX_L2_W_XS_KZ, /* 5483 */
+  IC_EVEX_L2_W_XD_KZ, /* 5484 */
+  IC_EVEX_L2_W_XD_KZ, /* 5485 */
+  IC_EVEX_L2_W_XD_KZ, /* 5486 */
+  IC_EVEX_L2_W_XD_KZ, /* 5487 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5488 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5489 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5490 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5491 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5492 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5493 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5494 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5495 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5496 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5497 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5498 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5499 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5500 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5501 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5502 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5503 */
+  IC_EVEX_L2_KZ, /* 5504 */
+  IC_EVEX_L2_KZ, /* 5505 */
+  IC_EVEX_L2_XS_KZ, /* 5506 */
+  IC_EVEX_L2_XS_KZ, /* 5507 */
+  IC_EVEX_L2_XD_KZ, /* 5508 */
+  IC_EVEX_L2_XD_KZ, /* 5509 */
+  IC_EVEX_L2_XD_KZ, /* 5510 */
+  IC_EVEX_L2_XD_KZ, /* 5511 */
+  IC_EVEX_L2_W_KZ, /* 5512 */
+  IC_EVEX_L2_W_KZ, /* 5513 */
+  IC_EVEX_L2_W_XS_KZ, /* 5514 */
+  IC_EVEX_L2_W_XS_KZ, /* 5515 */
+  IC_EVEX_L2_W_XD_KZ, /* 5516 */
+  IC_EVEX_L2_W_XD_KZ, /* 5517 */
+  IC_EVEX_L2_W_XD_KZ, /* 5518 */
+  IC_EVEX_L2_W_XD_KZ, /* 5519 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5520 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5521 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5522 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5523 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5524 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5525 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5526 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5527 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5528 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5529 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5530 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5531 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5532 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5533 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5534 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5535 */
+  IC_EVEX_L2_KZ, /* 5536 */
+  IC_EVEX_L2_KZ, /* 5537 */
+  IC_EVEX_L2_XS_KZ, /* 5538 */
+  IC_EVEX_L2_XS_KZ, /* 5539 */
+  IC_EVEX_L2_XD_KZ, /* 5540 */
+  IC_EVEX_L2_XD_KZ, /* 5541 */
+  IC_EVEX_L2_XD_KZ, /* 5542 */
+  IC_EVEX_L2_XD_KZ, /* 5543 */
+  IC_EVEX_L2_W_KZ, /* 5544 */
+  IC_EVEX_L2_W_KZ, /* 5545 */
+  IC_EVEX_L2_W_XS_KZ, /* 5546 */
+  IC_EVEX_L2_W_XS_KZ, /* 5547 */
+  IC_EVEX_L2_W_XD_KZ, /* 5548 */
+  IC_EVEX_L2_W_XD_KZ, /* 5549 */
+  IC_EVEX_L2_W_XD_KZ, /* 5550 */
+  IC_EVEX_L2_W_XD_KZ, /* 5551 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5552 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5553 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5554 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5555 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5556 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5557 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5558 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5559 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5560 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5561 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5562 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5563 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5564 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5565 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5566 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5567 */
+  IC_EVEX_L2_KZ, /* 5568 */
+  IC_EVEX_L2_KZ, /* 5569 */
+  IC_EVEX_L2_XS_KZ, /* 5570 */
+  IC_EVEX_L2_XS_KZ, /* 5571 */
+  IC_EVEX_L2_XD_KZ, /* 5572 */
+  IC_EVEX_L2_XD_KZ, /* 5573 */
+  IC_EVEX_L2_XD_KZ, /* 5574 */
+  IC_EVEX_L2_XD_KZ, /* 5575 */
+  IC_EVEX_L2_W_KZ, /* 5576 */
+  IC_EVEX_L2_W_KZ, /* 5577 */
+  IC_EVEX_L2_W_XS_KZ, /* 5578 */
+  IC_EVEX_L2_W_XS_KZ, /* 5579 */
+  IC_EVEX_L2_W_XD_KZ, /* 5580 */
+  IC_EVEX_L2_W_XD_KZ, /* 5581 */
+  IC_EVEX_L2_W_XD_KZ, /* 5582 */
+  IC_EVEX_L2_W_XD_KZ, /* 5583 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5584 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5585 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5586 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5587 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5588 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5589 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5590 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5591 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5592 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5593 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5594 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5595 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5596 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5597 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5598 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5599 */
+  IC_EVEX_L2_KZ, /* 5600 */
+  IC_EVEX_L2_KZ, /* 5601 */
+  IC_EVEX_L2_XS_KZ, /* 5602 */
+  IC_EVEX_L2_XS_KZ, /* 5603 */
+  IC_EVEX_L2_XD_KZ, /* 5604 */
+  IC_EVEX_L2_XD_KZ, /* 5605 */
+  IC_EVEX_L2_XD_KZ, /* 5606 */
+  IC_EVEX_L2_XD_KZ, /* 5607 */
+  IC_EVEX_L2_W_KZ, /* 5608 */
+  IC_EVEX_L2_W_KZ, /* 5609 */
+  IC_EVEX_L2_W_XS_KZ, /* 5610 */
+  IC_EVEX_L2_W_XS_KZ, /* 5611 */
+  IC_EVEX_L2_W_XD_KZ, /* 5612 */
+  IC_EVEX_L2_W_XD_KZ, /* 5613 */
+  IC_EVEX_L2_W_XD_KZ, /* 5614 */
+  IC_EVEX_L2_W_XD_KZ, /* 5615 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5616 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5617 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5618 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5619 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5620 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5621 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5622 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5623 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5624 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5625 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5626 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5627 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5628 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5629 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5630 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5631 */
+  IC, /* 5632 */
+  IC_64BIT, /* 5633 */
+  IC_XS, /* 5634 */
+  IC_64BIT_XS, /* 5635 */
+  IC_XD, /* 5636 */
+  IC_64BIT_XD, /* 5637 */
+  IC_XS, /* 5638 */
+  IC_64BIT_XS, /* 5639 */
+  IC, /* 5640 */
+  IC_64BIT_REXW, /* 5641 */
+  IC_XS, /* 5642 */
+  IC_64BIT_REXW_XS, /* 5643 */
+  IC_XD, /* 5644 */
+  IC_64BIT_REXW_XD, /* 5645 */
+  IC_XS, /* 5646 */
+  IC_64BIT_REXW_XS, /* 5647 */
+  IC_OPSIZE, /* 5648 */
+  IC_64BIT_OPSIZE, /* 5649 */
+  IC_XS_OPSIZE, /* 5650 */
+  IC_64BIT_XS_OPSIZE, /* 5651 */
+  IC_XD_OPSIZE, /* 5652 */
+  IC_64BIT_XD_OPSIZE, /* 5653 */
+  IC_XS_OPSIZE, /* 5654 */
+  IC_64BIT_XD_OPSIZE, /* 5655 */
+  IC_OPSIZE, /* 5656 */
+  IC_64BIT_REXW_OPSIZE, /* 5657 */
+  IC_XS_OPSIZE, /* 5658 */
+  IC_64BIT_REXW_XS, /* 5659 */
+  IC_XD_OPSIZE, /* 5660 */
+  IC_64BIT_REXW_XD, /* 5661 */
+  IC_XS_OPSIZE, /* 5662 */
+  IC_64BIT_REXW_XS, /* 5663 */
+  IC_ADSIZE, /* 5664 */
+  IC_64BIT_ADSIZE, /* 5665 */
+  IC_XS, /* 5666 */
+  IC_64BIT_XS, /* 5667 */
+  IC_XD, /* 5668 */
+  IC_64BIT_XD, /* 5669 */
+  IC_XS, /* 5670 */
+  IC_64BIT_XS, /* 5671 */
+  IC_ADSIZE, /* 5672 */
+  IC_64BIT_ADSIZE, /* 5673 */
+  IC_XS, /* 5674 */
+  IC_64BIT_REXW_XS, /* 5675 */
+  IC_XD, /* 5676 */
+  IC_64BIT_REXW_XD, /* 5677 */
+  IC_XS, /* 5678 */
+  IC_64BIT_REXW_XS, /* 5679 */
+  IC_OPSIZE, /* 5680 */
+  IC_64BIT_OPSIZE, /* 5681 */
+  IC_XS_OPSIZE, /* 5682 */
+  IC_64BIT_XS_OPSIZE, /* 5683 */
+  IC_XD_OPSIZE, /* 5684 */
+  IC_64BIT_XD_OPSIZE, /* 5685 */
+  IC_XS_OPSIZE, /* 5686 */
+  IC_64BIT_XD_OPSIZE, /* 5687 */
+  IC_OPSIZE, /* 5688 */
+  IC_64BIT_REXW_OPSIZE, /* 5689 */
+  IC_XS_OPSIZE, /* 5690 */
+  IC_64BIT_REXW_XS, /* 5691 */
+  IC_XD_OPSIZE, /* 5692 */
+  IC_64BIT_REXW_XD, /* 5693 */
+  IC_XS_OPSIZE, /* 5694 */
+  IC_64BIT_REXW_XS, /* 5695 */
+  IC_VEX, /* 5696 */
+  IC_VEX, /* 5697 */
+  IC_VEX_XS, /* 5698 */
+  IC_VEX_XS, /* 5699 */
+  IC_VEX_XD, /* 5700 */
+  IC_VEX_XD, /* 5701 */
+  IC_VEX_XD, /* 5702 */
+  IC_VEX_XD, /* 5703 */
+  IC_VEX_W, /* 5704 */
+  IC_VEX_W, /* 5705 */
+  IC_VEX_W_XS, /* 5706 */
+  IC_VEX_W_XS, /* 5707 */
+  IC_VEX_W_XD, /* 5708 */
+  IC_VEX_W_XD, /* 5709 */
+  IC_VEX_W_XD, /* 5710 */
+  IC_VEX_W_XD, /* 5711 */
+  IC_VEX_OPSIZE, /* 5712 */
+  IC_VEX_OPSIZE, /* 5713 */
+  IC_VEX_OPSIZE, /* 5714 */
+  IC_VEX_OPSIZE, /* 5715 */
+  IC_VEX_OPSIZE, /* 5716 */
+  IC_VEX_OPSIZE, /* 5717 */
+  IC_VEX_OPSIZE, /* 5718 */
+  IC_VEX_OPSIZE, /* 5719 */
+  IC_VEX_W_OPSIZE, /* 5720 */
+  IC_VEX_W_OPSIZE, /* 5721 */
+  IC_VEX_W_OPSIZE, /* 5722 */
+  IC_VEX_W_OPSIZE, /* 5723 */
+  IC_VEX_W_OPSIZE, /* 5724 */
+  IC_VEX_W_OPSIZE, /* 5725 */
+  IC_VEX_W_OPSIZE, /* 5726 */
+  IC_VEX_W_OPSIZE, /* 5727 */
+  IC_VEX, /* 5728 */
+  IC_VEX, /* 5729 */
+  IC_VEX_XS, /* 5730 */
+  IC_VEX_XS, /* 5731 */
+  IC_VEX_XD, /* 5732 */
+  IC_VEX_XD, /* 5733 */
+  IC_VEX_XD, /* 5734 */
+  IC_VEX_XD, /* 5735 */
+  IC_VEX_W, /* 5736 */
+  IC_VEX_W, /* 5737 */
+  IC_VEX_W_XS, /* 5738 */
+  IC_VEX_W_XS, /* 5739 */
+  IC_VEX_W_XD, /* 5740 */
+  IC_VEX_W_XD, /* 5741 */
+  IC_VEX_W_XD, /* 5742 */
+  IC_VEX_W_XD, /* 5743 */
+  IC_VEX_OPSIZE, /* 5744 */
+  IC_VEX_OPSIZE, /* 5745 */
+  IC_VEX_OPSIZE, /* 5746 */
+  IC_VEX_OPSIZE, /* 5747 */
+  IC_VEX_OPSIZE, /* 5748 */
+  IC_VEX_OPSIZE, /* 5749 */
+  IC_VEX_OPSIZE, /* 5750 */
+  IC_VEX_OPSIZE, /* 5751 */
+  IC_VEX_W_OPSIZE, /* 5752 */
+  IC_VEX_W_OPSIZE, /* 5753 */
+  IC_VEX_W_OPSIZE, /* 5754 */
+  IC_VEX_W_OPSIZE, /* 5755 */
+  IC_VEX_W_OPSIZE, /* 5756 */
+  IC_VEX_W_OPSIZE, /* 5757 */
+  IC_VEX_W_OPSIZE, /* 5758 */
+  IC_VEX_W_OPSIZE, /* 5759 */
+  IC_VEX_L, /* 5760 */
+  IC_VEX_L, /* 5761 */
+  IC_VEX_L_XS, /* 5762 */
+  IC_VEX_L_XS, /* 5763 */
+  IC_VEX_L_XD, /* 5764 */
+  IC_VEX_L_XD, /* 5765 */
+  IC_VEX_L_XD, /* 5766 */
+  IC_VEX_L_XD, /* 5767 */
+  IC_VEX_L_W, /* 5768 */
+  IC_VEX_L_W, /* 5769 */
+  IC_VEX_L_W_XS, /* 5770 */
+  IC_VEX_L_W_XS, /* 5771 */
+  IC_VEX_L_W_XD, /* 5772 */
+  IC_VEX_L_W_XD, /* 5773 */
+  IC_VEX_L_W_XD, /* 5774 */
+  IC_VEX_L_W_XD, /* 5775 */
+  IC_VEX_L_OPSIZE, /* 5776 */
+  IC_VEX_L_OPSIZE, /* 5777 */
+  IC_VEX_L_OPSIZE, /* 5778 */
+  IC_VEX_L_OPSIZE, /* 5779 */
+  IC_VEX_L_OPSIZE, /* 5780 */
+  IC_VEX_L_OPSIZE, /* 5781 */
+  IC_VEX_L_OPSIZE, /* 5782 */
+  IC_VEX_L_OPSIZE, /* 5783 */
+  IC_VEX_L_W_OPSIZE, /* 5784 */
+  IC_VEX_L_W_OPSIZE, /* 5785 */
+  IC_VEX_L_W_OPSIZE, /* 5786 */
+  IC_VEX_L_W_OPSIZE, /* 5787 */
+  IC_VEX_L_W_OPSIZE, /* 5788 */
+  IC_VEX_L_W_OPSIZE, /* 5789 */
+  IC_VEX_L_W_OPSIZE, /* 5790 */
+  IC_VEX_L_W_OPSIZE, /* 5791 */
+  IC_VEX_L, /* 5792 */
+  IC_VEX_L, /* 5793 */
+  IC_VEX_L_XS, /* 5794 */
+  IC_VEX_L_XS, /* 5795 */
+  IC_VEX_L_XD, /* 5796 */
+  IC_VEX_L_XD, /* 5797 */
+  IC_VEX_L_XD, /* 5798 */
+  IC_VEX_L_XD, /* 5799 */
+  IC_VEX_L_W, /* 5800 */
+  IC_VEX_L_W, /* 5801 */
+  IC_VEX_L_W_XS, /* 5802 */
+  IC_VEX_L_W_XS, /* 5803 */
+  IC_VEX_L_W_XD, /* 5804 */
+  IC_VEX_L_W_XD, /* 5805 */
+  IC_VEX_L_W_XD, /* 5806 */
+  IC_VEX_L_W_XD, /* 5807 */
+  IC_VEX_L_OPSIZE, /* 5808 */
+  IC_VEX_L_OPSIZE, /* 5809 */
+  IC_VEX_L_OPSIZE, /* 5810 */
+  IC_VEX_L_OPSIZE, /* 5811 */
+  IC_VEX_L_OPSIZE, /* 5812 */
+  IC_VEX_L_OPSIZE, /* 5813 */
+  IC_VEX_L_OPSIZE, /* 5814 */
+  IC_VEX_L_OPSIZE, /* 5815 */
+  IC_VEX_L_W_OPSIZE, /* 5816 */
+  IC_VEX_L_W_OPSIZE, /* 5817 */
+  IC_VEX_L_W_OPSIZE, /* 5818 */
+  IC_VEX_L_W_OPSIZE, /* 5819 */
+  IC_VEX_L_W_OPSIZE, /* 5820 */
+  IC_VEX_L_W_OPSIZE, /* 5821 */
+  IC_VEX_L_W_OPSIZE, /* 5822 */
+  IC_VEX_L_W_OPSIZE, /* 5823 */
+  IC_VEX_L, /* 5824 */
+  IC_VEX_L, /* 5825 */
+  IC_VEX_L_XS, /* 5826 */
+  IC_VEX_L_XS, /* 5827 */
+  IC_VEX_L_XD, /* 5828 */
+  IC_VEX_L_XD, /* 5829 */
+  IC_VEX_L_XD, /* 5830 */
+  IC_VEX_L_XD, /* 5831 */
+  IC_VEX_L_W, /* 5832 */
+  IC_VEX_L_W, /* 5833 */
+  IC_VEX_L_W_XS, /* 5834 */
+  IC_VEX_L_W_XS, /* 5835 */
+  IC_VEX_L_W_XD, /* 5836 */
+  IC_VEX_L_W_XD, /* 5837 */
+  IC_VEX_L_W_XD, /* 5838 */
+  IC_VEX_L_W_XD, /* 5839 */
+  IC_VEX_L_OPSIZE, /* 5840 */
+  IC_VEX_L_OPSIZE, /* 5841 */
+  IC_VEX_L_OPSIZE, /* 5842 */
+  IC_VEX_L_OPSIZE, /* 5843 */
+  IC_VEX_L_OPSIZE, /* 5844 */
+  IC_VEX_L_OPSIZE, /* 5845 */
+  IC_VEX_L_OPSIZE, /* 5846 */
+  IC_VEX_L_OPSIZE, /* 5847 */
+  IC_VEX_L_W_OPSIZE, /* 5848 */
+  IC_VEX_L_W_OPSIZE, /* 5849 */
+  IC_VEX_L_W_OPSIZE, /* 5850 */
+  IC_VEX_L_W_OPSIZE, /* 5851 */
+  IC_VEX_L_W_OPSIZE, /* 5852 */
+  IC_VEX_L_W_OPSIZE, /* 5853 */
+  IC_VEX_L_W_OPSIZE, /* 5854 */
+  IC_VEX_L_W_OPSIZE, /* 5855 */
+  IC_VEX_L, /* 5856 */
+  IC_VEX_L, /* 5857 */
+  IC_VEX_L_XS, /* 5858 */
+  IC_VEX_L_XS, /* 5859 */
+  IC_VEX_L_XD, /* 5860 */
+  IC_VEX_L_XD, /* 5861 */
+  IC_VEX_L_XD, /* 5862 */
+  IC_VEX_L_XD, /* 5863 */
+  IC_VEX_L_W, /* 5864 */
+  IC_VEX_L_W, /* 5865 */
+  IC_VEX_L_W_XS, /* 5866 */
+  IC_VEX_L_W_XS, /* 5867 */
+  IC_VEX_L_W_XD, /* 5868 */
+  IC_VEX_L_W_XD, /* 5869 */
+  IC_VEX_L_W_XD, /* 5870 */
+  IC_VEX_L_W_XD, /* 5871 */
+  IC_VEX_L_OPSIZE, /* 5872 */
+  IC_VEX_L_OPSIZE, /* 5873 */
+  IC_VEX_L_OPSIZE, /* 5874 */
+  IC_VEX_L_OPSIZE, /* 5875 */
+  IC_VEX_L_OPSIZE, /* 5876 */
+  IC_VEX_L_OPSIZE, /* 5877 */
+  IC_VEX_L_OPSIZE, /* 5878 */
+  IC_VEX_L_OPSIZE, /* 5879 */
+  IC_VEX_L_W_OPSIZE, /* 5880 */
+  IC_VEX_L_W_OPSIZE, /* 5881 */
+  IC_VEX_L_W_OPSIZE, /* 5882 */
+  IC_VEX_L_W_OPSIZE, /* 5883 */
+  IC_VEX_L_W_OPSIZE, /* 5884 */
+  IC_VEX_L_W_OPSIZE, /* 5885 */
+  IC_VEX_L_W_OPSIZE, /* 5886 */
+  IC_VEX_L_W_OPSIZE, /* 5887 */
+  IC_EVEX_L2_KZ, /* 5888 */
+  IC_EVEX_L2_KZ, /* 5889 */
+  IC_EVEX_L2_XS_KZ, /* 5890 */
+  IC_EVEX_L2_XS_KZ, /* 5891 */
+  IC_EVEX_L2_XD_KZ, /* 5892 */
+  IC_EVEX_L2_XD_KZ, /* 5893 */
+  IC_EVEX_L2_XD_KZ, /* 5894 */
+  IC_EVEX_L2_XD_KZ, /* 5895 */
+  IC_EVEX_L2_W_KZ, /* 5896 */
+  IC_EVEX_L2_W_KZ, /* 5897 */
+  IC_EVEX_L2_W_XS_KZ, /* 5898 */
+  IC_EVEX_L2_W_XS_KZ, /* 5899 */
+  IC_EVEX_L2_W_XD_KZ, /* 5900 */
+  IC_EVEX_L2_W_XD_KZ, /* 5901 */
+  IC_EVEX_L2_W_XD_KZ, /* 5902 */
+  IC_EVEX_L2_W_XD_KZ, /* 5903 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5904 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5905 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5906 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5907 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5908 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5909 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5910 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5911 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5912 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5913 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5914 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5915 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5916 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5917 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5918 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5919 */
+  IC_EVEX_L2_KZ, /* 5920 */
+  IC_EVEX_L2_KZ, /* 5921 */
+  IC_EVEX_L2_XS_KZ, /* 5922 */
+  IC_EVEX_L2_XS_KZ, /* 5923 */
+  IC_EVEX_L2_XD_KZ, /* 5924 */
+  IC_EVEX_L2_XD_KZ, /* 5925 */
+  IC_EVEX_L2_XD_KZ, /* 5926 */
+  IC_EVEX_L2_XD_KZ, /* 5927 */
+  IC_EVEX_L2_W_KZ, /* 5928 */
+  IC_EVEX_L2_W_KZ, /* 5929 */
+  IC_EVEX_L2_W_XS_KZ, /* 5930 */
+  IC_EVEX_L2_W_XS_KZ, /* 5931 */
+  IC_EVEX_L2_W_XD_KZ, /* 5932 */
+  IC_EVEX_L2_W_XD_KZ, /* 5933 */
+  IC_EVEX_L2_W_XD_KZ, /* 5934 */
+  IC_EVEX_L2_W_XD_KZ, /* 5935 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5936 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5937 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5938 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5939 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5940 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5941 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5942 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5943 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5944 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5945 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5946 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5947 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5948 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5949 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5950 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5951 */
+  IC_EVEX_L2_KZ, /* 5952 */
+  IC_EVEX_L2_KZ, /* 5953 */
+  IC_EVEX_L2_XS_KZ, /* 5954 */
+  IC_EVEX_L2_XS_KZ, /* 5955 */
+  IC_EVEX_L2_XD_KZ, /* 5956 */
+  IC_EVEX_L2_XD_KZ, /* 5957 */
+  IC_EVEX_L2_XD_KZ, /* 5958 */
+  IC_EVEX_L2_XD_KZ, /* 5959 */
+  IC_EVEX_L2_W_KZ, /* 5960 */
+  IC_EVEX_L2_W_KZ, /* 5961 */
+  IC_EVEX_L2_W_XS_KZ, /* 5962 */
+  IC_EVEX_L2_W_XS_KZ, /* 5963 */
+  IC_EVEX_L2_W_XD_KZ, /* 5964 */
+  IC_EVEX_L2_W_XD_KZ, /* 5965 */
+  IC_EVEX_L2_W_XD_KZ, /* 5966 */
+  IC_EVEX_L2_W_XD_KZ, /* 5967 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5968 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5969 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5970 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5971 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5972 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5973 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5974 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 5975 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5976 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5977 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5978 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5979 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5980 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5981 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5982 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 5983 */
+  IC_EVEX_L2_KZ, /* 5984 */
+  IC_EVEX_L2_KZ, /* 5985 */
+  IC_EVEX_L2_XS_KZ, /* 5986 */
+  IC_EVEX_L2_XS_KZ, /* 5987 */
+  IC_EVEX_L2_XD_KZ, /* 5988 */
+  IC_EVEX_L2_XD_KZ, /* 5989 */
+  IC_EVEX_L2_XD_KZ, /* 5990 */
+  IC_EVEX_L2_XD_KZ, /* 5991 */
+  IC_EVEX_L2_W_KZ, /* 5992 */
+  IC_EVEX_L2_W_KZ, /* 5993 */
+  IC_EVEX_L2_W_XS_KZ, /* 5994 */
+  IC_EVEX_L2_W_XS_KZ, /* 5995 */
+  IC_EVEX_L2_W_XD_KZ, /* 5996 */
+  IC_EVEX_L2_W_XD_KZ, /* 5997 */
+  IC_EVEX_L2_W_XD_KZ, /* 5998 */
+  IC_EVEX_L2_W_XD_KZ, /* 5999 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6000 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6001 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6002 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6003 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6004 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6005 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6006 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6007 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6008 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6009 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6010 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6011 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6012 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6013 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6014 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6015 */
+  IC_EVEX_L2_KZ, /* 6016 */
+  IC_EVEX_L2_KZ, /* 6017 */
+  IC_EVEX_L2_XS_KZ, /* 6018 */
+  IC_EVEX_L2_XS_KZ, /* 6019 */
+  IC_EVEX_L2_XD_KZ, /* 6020 */
+  IC_EVEX_L2_XD_KZ, /* 6021 */
+  IC_EVEX_L2_XD_KZ, /* 6022 */
+  IC_EVEX_L2_XD_KZ, /* 6023 */
+  IC_EVEX_L2_W_KZ, /* 6024 */
+  IC_EVEX_L2_W_KZ, /* 6025 */
+  IC_EVEX_L2_W_XS_KZ, /* 6026 */
+  IC_EVEX_L2_W_XS_KZ, /* 6027 */
+  IC_EVEX_L2_W_XD_KZ, /* 6028 */
+  IC_EVEX_L2_W_XD_KZ, /* 6029 */
+  IC_EVEX_L2_W_XD_KZ, /* 6030 */
+  IC_EVEX_L2_W_XD_KZ, /* 6031 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6032 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6033 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6034 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6035 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6036 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6037 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6038 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6039 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6040 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6041 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6042 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6043 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6044 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6045 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6046 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6047 */
+  IC_EVEX_L2_KZ, /* 6048 */
+  IC_EVEX_L2_KZ, /* 6049 */
+  IC_EVEX_L2_XS_KZ, /* 6050 */
+  IC_EVEX_L2_XS_KZ, /* 6051 */
+  IC_EVEX_L2_XD_KZ, /* 6052 */
+  IC_EVEX_L2_XD_KZ, /* 6053 */
+  IC_EVEX_L2_XD_KZ, /* 6054 */
+  IC_EVEX_L2_XD_KZ, /* 6055 */
+  IC_EVEX_L2_W_KZ, /* 6056 */
+  IC_EVEX_L2_W_KZ, /* 6057 */
+  IC_EVEX_L2_W_XS_KZ, /* 6058 */
+  IC_EVEX_L2_W_XS_KZ, /* 6059 */
+  IC_EVEX_L2_W_XD_KZ, /* 6060 */
+  IC_EVEX_L2_W_XD_KZ, /* 6061 */
+  IC_EVEX_L2_W_XD_KZ, /* 6062 */
+  IC_EVEX_L2_W_XD_KZ, /* 6063 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6064 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6065 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6066 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6067 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6068 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6069 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6070 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6071 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6072 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6073 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6074 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6075 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6076 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6077 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6078 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6079 */
+  IC_EVEX_L2_KZ, /* 6080 */
+  IC_EVEX_L2_KZ, /* 6081 */
+  IC_EVEX_L2_XS_KZ, /* 6082 */
+  IC_EVEX_L2_XS_KZ, /* 6083 */
+  IC_EVEX_L2_XD_KZ, /* 6084 */
+  IC_EVEX_L2_XD_KZ, /* 6085 */
+  IC_EVEX_L2_XD_KZ, /* 6086 */
+  IC_EVEX_L2_XD_KZ, /* 6087 */
+  IC_EVEX_L2_W_KZ, /* 6088 */
+  IC_EVEX_L2_W_KZ, /* 6089 */
+  IC_EVEX_L2_W_XS_KZ, /* 6090 */
+  IC_EVEX_L2_W_XS_KZ, /* 6091 */
+  IC_EVEX_L2_W_XD_KZ, /* 6092 */
+  IC_EVEX_L2_W_XD_KZ, /* 6093 */
+  IC_EVEX_L2_W_XD_KZ, /* 6094 */
+  IC_EVEX_L2_W_XD_KZ, /* 6095 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6096 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6097 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6098 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6099 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6100 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6101 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6102 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6103 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6104 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6105 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6106 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6107 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6108 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6109 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6110 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6111 */
+  IC_EVEX_L2_KZ, /* 6112 */
+  IC_EVEX_L2_KZ, /* 6113 */
+  IC_EVEX_L2_XS_KZ, /* 6114 */
+  IC_EVEX_L2_XS_KZ, /* 6115 */
+  IC_EVEX_L2_XD_KZ, /* 6116 */
+  IC_EVEX_L2_XD_KZ, /* 6117 */
+  IC_EVEX_L2_XD_KZ, /* 6118 */
+  IC_EVEX_L2_XD_KZ, /* 6119 */
+  IC_EVEX_L2_W_KZ, /* 6120 */
+  IC_EVEX_L2_W_KZ, /* 6121 */
+  IC_EVEX_L2_W_XS_KZ, /* 6122 */
+  IC_EVEX_L2_W_XS_KZ, /* 6123 */
+  IC_EVEX_L2_W_XD_KZ, /* 6124 */
+  IC_EVEX_L2_W_XD_KZ, /* 6125 */
+  IC_EVEX_L2_W_XD_KZ, /* 6126 */
+  IC_EVEX_L2_W_XD_KZ, /* 6127 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6128 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6129 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6130 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6131 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6132 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6133 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6134 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 6135 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6136 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6137 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6138 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6139 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6140 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6141 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6142 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 6143 */
+  IC, /* 6144 */
+  IC_64BIT, /* 6145 */
+  IC_XS, /* 6146 */
+  IC_64BIT_XS, /* 6147 */
+  IC_XD, /* 6148 */
+  IC_64BIT_XD, /* 6149 */
+  IC_XS, /* 6150 */
+  IC_64BIT_XS, /* 6151 */
+  IC, /* 6152 */
+  IC_64BIT_REXW, /* 6153 */
+  IC_XS, /* 6154 */
+  IC_64BIT_REXW_XS, /* 6155 */
+  IC_XD, /* 6156 */
+  IC_64BIT_REXW_XD, /* 6157 */
+  IC_XS, /* 6158 */
+  IC_64BIT_REXW_XS, /* 6159 */
+  IC_OPSIZE, /* 6160 */
+  IC_64BIT_OPSIZE, /* 6161 */
+  IC_XS_OPSIZE, /* 6162 */
+  IC_64BIT_XS_OPSIZE, /* 6163 */
+  IC_XD_OPSIZE, /* 6164 */
+  IC_64BIT_XD_OPSIZE, /* 6165 */
+  IC_XS_OPSIZE, /* 6166 */
+  IC_64BIT_XD_OPSIZE, /* 6167 */
+  IC_OPSIZE, /* 6168 */
+  IC_64BIT_REXW_OPSIZE, /* 6169 */
+  IC_XS_OPSIZE, /* 6170 */
+  IC_64BIT_REXW_XS, /* 6171 */
+  IC_XD_OPSIZE, /* 6172 */
+  IC_64BIT_REXW_XD, /* 6173 */
+  IC_XS_OPSIZE, /* 6174 */
+  IC_64BIT_REXW_XS, /* 6175 */
+  IC_ADSIZE, /* 6176 */
+  IC_64BIT_ADSIZE, /* 6177 */
+  IC_XS, /* 6178 */
+  IC_64BIT_XS, /* 6179 */
+  IC_XD, /* 6180 */
+  IC_64BIT_XD, /* 6181 */
+  IC_XS, /* 6182 */
+  IC_64BIT_XS, /* 6183 */
+  IC_ADSIZE, /* 6184 */
+  IC_64BIT_ADSIZE, /* 6185 */
+  IC_XS, /* 6186 */
+  IC_64BIT_REXW_XS, /* 6187 */
+  IC_XD, /* 6188 */
+  IC_64BIT_REXW_XD, /* 6189 */
+  IC_XS, /* 6190 */
+  IC_64BIT_REXW_XS, /* 6191 */
+  IC_OPSIZE, /* 6192 */
+  IC_64BIT_OPSIZE, /* 6193 */
+  IC_XS_OPSIZE, /* 6194 */
+  IC_64BIT_XS_OPSIZE, /* 6195 */
+  IC_XD_OPSIZE, /* 6196 */
+  IC_64BIT_XD_OPSIZE, /* 6197 */
+  IC_XS_OPSIZE, /* 6198 */
+  IC_64BIT_XD_OPSIZE, /* 6199 */
+  IC_OPSIZE, /* 6200 */
+  IC_64BIT_REXW_OPSIZE, /* 6201 */
+  IC_XS_OPSIZE, /* 6202 */
+  IC_64BIT_REXW_XS, /* 6203 */
+  IC_XD_OPSIZE, /* 6204 */
+  IC_64BIT_REXW_XD, /* 6205 */
+  IC_XS_OPSIZE, /* 6206 */
+  IC_64BIT_REXW_XS, /* 6207 */
+  IC_VEX, /* 6208 */
+  IC_VEX, /* 6209 */
+  IC_VEX_XS, /* 6210 */
+  IC_VEX_XS, /* 6211 */
+  IC_VEX_XD, /* 6212 */
+  IC_VEX_XD, /* 6213 */
+  IC_VEX_XD, /* 6214 */
+  IC_VEX_XD, /* 6215 */
+  IC_VEX_W, /* 6216 */
+  IC_VEX_W, /* 6217 */
+  IC_VEX_W_XS, /* 6218 */
+  IC_VEX_W_XS, /* 6219 */
+  IC_VEX_W_XD, /* 6220 */
+  IC_VEX_W_XD, /* 6221 */
+  IC_VEX_W_XD, /* 6222 */
+  IC_VEX_W_XD, /* 6223 */
+  IC_VEX_OPSIZE, /* 6224 */
+  IC_VEX_OPSIZE, /* 6225 */
+  IC_VEX_OPSIZE, /* 6226 */
+  IC_VEX_OPSIZE, /* 6227 */
+  IC_VEX_OPSIZE, /* 6228 */
+  IC_VEX_OPSIZE, /* 6229 */
+  IC_VEX_OPSIZE, /* 6230 */
+  IC_VEX_OPSIZE, /* 6231 */
+  IC_VEX_W_OPSIZE, /* 6232 */
+  IC_VEX_W_OPSIZE, /* 6233 */
+  IC_VEX_W_OPSIZE, /* 6234 */
+  IC_VEX_W_OPSIZE, /* 6235 */
+  IC_VEX_W_OPSIZE, /* 6236 */
+  IC_VEX_W_OPSIZE, /* 6237 */
+  IC_VEX_W_OPSIZE, /* 6238 */
+  IC_VEX_W_OPSIZE, /* 6239 */
+  IC_VEX, /* 6240 */
+  IC_VEX, /* 6241 */
+  IC_VEX_XS, /* 6242 */
+  IC_VEX_XS, /* 6243 */
+  IC_VEX_XD, /* 6244 */
+  IC_VEX_XD, /* 6245 */
+  IC_VEX_XD, /* 6246 */
+  IC_VEX_XD, /* 6247 */
+  IC_VEX_W, /* 6248 */
+  IC_VEX_W, /* 6249 */
+  IC_VEX_W_XS, /* 6250 */
+  IC_VEX_W_XS, /* 6251 */
+  IC_VEX_W_XD, /* 6252 */
+  IC_VEX_W_XD, /* 6253 */
+  IC_VEX_W_XD, /* 6254 */
+  IC_VEX_W_XD, /* 6255 */
+  IC_VEX_OPSIZE, /* 6256 */
+  IC_VEX_OPSIZE, /* 6257 */
+  IC_VEX_OPSIZE, /* 6258 */
+  IC_VEX_OPSIZE, /* 6259 */
+  IC_VEX_OPSIZE, /* 6260 */
+  IC_VEX_OPSIZE, /* 6261 */
+  IC_VEX_OPSIZE, /* 6262 */
+  IC_VEX_OPSIZE, /* 6263 */
+  IC_VEX_W_OPSIZE, /* 6264 */
+  IC_VEX_W_OPSIZE, /* 6265 */
+  IC_VEX_W_OPSIZE, /* 6266 */
+  IC_VEX_W_OPSIZE, /* 6267 */
+  IC_VEX_W_OPSIZE, /* 6268 */
+  IC_VEX_W_OPSIZE, /* 6269 */
+  IC_VEX_W_OPSIZE, /* 6270 */
+  IC_VEX_W_OPSIZE, /* 6271 */
+  IC_VEX_L, /* 6272 */
+  IC_VEX_L, /* 6273 */
+  IC_VEX_L_XS, /* 6274 */
+  IC_VEX_L_XS, /* 6275 */
+  IC_VEX_L_XD, /* 6276 */
+  IC_VEX_L_XD, /* 6277 */
+  IC_VEX_L_XD, /* 6278 */
+  IC_VEX_L_XD, /* 6279 */
+  IC_VEX_L_W, /* 6280 */
+  IC_VEX_L_W, /* 6281 */
+  IC_VEX_L_W_XS, /* 6282 */
+  IC_VEX_L_W_XS, /* 6283 */
+  IC_VEX_L_W_XD, /* 6284 */
+  IC_VEX_L_W_XD, /* 6285 */
+  IC_VEX_L_W_XD, /* 6286 */
+  IC_VEX_L_W_XD, /* 6287 */
+  IC_VEX_L_OPSIZE, /* 6288 */
+  IC_VEX_L_OPSIZE, /* 6289 */
+  IC_VEX_L_OPSIZE, /* 6290 */
+  IC_VEX_L_OPSIZE, /* 6291 */
+  IC_VEX_L_OPSIZE, /* 6292 */
+  IC_VEX_L_OPSIZE, /* 6293 */
+  IC_VEX_L_OPSIZE, /* 6294 */
+  IC_VEX_L_OPSIZE, /* 6295 */
+  IC_VEX_L_W_OPSIZE, /* 6296 */
+  IC_VEX_L_W_OPSIZE, /* 6297 */
+  IC_VEX_L_W_OPSIZE, /* 6298 */
+  IC_VEX_L_W_OPSIZE, /* 6299 */
+  IC_VEX_L_W_OPSIZE, /* 6300 */
+  IC_VEX_L_W_OPSIZE, /* 6301 */
+  IC_VEX_L_W_OPSIZE, /* 6302 */
+  IC_VEX_L_W_OPSIZE, /* 6303 */
+  IC_VEX_L, /* 6304 */
+  IC_VEX_L, /* 6305 */
+  IC_VEX_L_XS, /* 6306 */
+  IC_VEX_L_XS, /* 6307 */
+  IC_VEX_L_XD, /* 6308 */
+  IC_VEX_L_XD, /* 6309 */
+  IC_VEX_L_XD, /* 6310 */
+  IC_VEX_L_XD, /* 6311 */
+  IC_VEX_L_W, /* 6312 */
+  IC_VEX_L_W, /* 6313 */
+  IC_VEX_L_W_XS, /* 6314 */
+  IC_VEX_L_W_XS, /* 6315 */
+  IC_VEX_L_W_XD, /* 6316 */
+  IC_VEX_L_W_XD, /* 6317 */
+  IC_VEX_L_W_XD, /* 6318 */
+  IC_VEX_L_W_XD, /* 6319 */
+  IC_VEX_L_OPSIZE, /* 6320 */
+  IC_VEX_L_OPSIZE, /* 6321 */
+  IC_VEX_L_OPSIZE, /* 6322 */
+  IC_VEX_L_OPSIZE, /* 6323 */
+  IC_VEX_L_OPSIZE, /* 6324 */
+  IC_VEX_L_OPSIZE, /* 6325 */
+  IC_VEX_L_OPSIZE, /* 6326 */
+  IC_VEX_L_OPSIZE, /* 6327 */
+  IC_VEX_L_W_OPSIZE, /* 6328 */
+  IC_VEX_L_W_OPSIZE, /* 6329 */
+  IC_VEX_L_W_OPSIZE, /* 6330 */
+  IC_VEX_L_W_OPSIZE, /* 6331 */
+  IC_VEX_L_W_OPSIZE, /* 6332 */
+  IC_VEX_L_W_OPSIZE, /* 6333 */
+  IC_VEX_L_W_OPSIZE, /* 6334 */
+  IC_VEX_L_W_OPSIZE, /* 6335 */
+  IC_VEX_L, /* 6336 */
+  IC_VEX_L, /* 6337 */
+  IC_VEX_L_XS, /* 6338 */
+  IC_VEX_L_XS, /* 6339 */
+  IC_VEX_L_XD, /* 6340 */
+  IC_VEX_L_XD, /* 6341 */
+  IC_VEX_L_XD, /* 6342 */
+  IC_VEX_L_XD, /* 6343 */
+  IC_VEX_L_W, /* 6344 */
+  IC_VEX_L_W, /* 6345 */
+  IC_VEX_L_W_XS, /* 6346 */
+  IC_VEX_L_W_XS, /* 6347 */
+  IC_VEX_L_W_XD, /* 6348 */
+  IC_VEX_L_W_XD, /* 6349 */
+  IC_VEX_L_W_XD, /* 6350 */
+  IC_VEX_L_W_XD, /* 6351 */
+  IC_VEX_L_OPSIZE, /* 6352 */
+  IC_VEX_L_OPSIZE, /* 6353 */
+  IC_VEX_L_OPSIZE, /* 6354 */
+  IC_VEX_L_OPSIZE, /* 6355 */
+  IC_VEX_L_OPSIZE, /* 6356 */
+  IC_VEX_L_OPSIZE, /* 6357 */
+  IC_VEX_L_OPSIZE, /* 6358 */
+  IC_VEX_L_OPSIZE, /* 6359 */
+  IC_VEX_L_W_OPSIZE, /* 6360 */
+  IC_VEX_L_W_OPSIZE, /* 6361 */
+  IC_VEX_L_W_OPSIZE, /* 6362 */
+  IC_VEX_L_W_OPSIZE, /* 6363 */
+  IC_VEX_L_W_OPSIZE, /* 6364 */
+  IC_VEX_L_W_OPSIZE, /* 6365 */
+  IC_VEX_L_W_OPSIZE, /* 6366 */
+  IC_VEX_L_W_OPSIZE, /* 6367 */
+  IC_VEX_L, /* 6368 */
+  IC_VEX_L, /* 6369 */
+  IC_VEX_L_XS, /* 6370 */
+  IC_VEX_L_XS, /* 6371 */
+  IC_VEX_L_XD, /* 6372 */
+  IC_VEX_L_XD, /* 6373 */
+  IC_VEX_L_XD, /* 6374 */
+  IC_VEX_L_XD, /* 6375 */
+  IC_VEX_L_W, /* 6376 */
+  IC_VEX_L_W, /* 6377 */
+  IC_VEX_L_W_XS, /* 6378 */
+  IC_VEX_L_W_XS, /* 6379 */
+  IC_VEX_L_W_XD, /* 6380 */
+  IC_VEX_L_W_XD, /* 6381 */
+  IC_VEX_L_W_XD, /* 6382 */
+  IC_VEX_L_W_XD, /* 6383 */
+  IC_VEX_L_OPSIZE, /* 6384 */
+  IC_VEX_L_OPSIZE, /* 6385 */
+  IC_VEX_L_OPSIZE, /* 6386 */
+  IC_VEX_L_OPSIZE, /* 6387 */
+  IC_VEX_L_OPSIZE, /* 6388 */
+  IC_VEX_L_OPSIZE, /* 6389 */
+  IC_VEX_L_OPSIZE, /* 6390 */
+  IC_VEX_L_OPSIZE, /* 6391 */
+  IC_VEX_L_W_OPSIZE, /* 6392 */
+  IC_VEX_L_W_OPSIZE, /* 6393 */
+  IC_VEX_L_W_OPSIZE, /* 6394 */
+  IC_VEX_L_W_OPSIZE, /* 6395 */
+  IC_VEX_L_W_OPSIZE, /* 6396 */
+  IC_VEX_L_W_OPSIZE, /* 6397 */
+  IC_VEX_L_W_OPSIZE, /* 6398 */
+  IC_VEX_L_W_OPSIZE, /* 6399 */
+  IC_EVEX_KZ, /* 6400 */
+  IC_EVEX_KZ, /* 6401 */
+  IC_EVEX_XS_KZ, /* 6402 */
+  IC_EVEX_XS_KZ, /* 6403 */
+  IC_EVEX_XD_KZ, /* 6404 */
+  IC_EVEX_XD_KZ, /* 6405 */
+  IC_EVEX_XD_KZ, /* 6406 */
+  IC_EVEX_XD_KZ, /* 6407 */
+  IC_EVEX_W_KZ, /* 6408 */
+  IC_EVEX_W_KZ, /* 6409 */
+  IC_EVEX_W_XS_KZ, /* 6410 */
+  IC_EVEX_W_XS_KZ, /* 6411 */
+  IC_EVEX_W_XD_KZ, /* 6412 */
+  IC_EVEX_W_XD_KZ, /* 6413 */
+  IC_EVEX_W_XD_KZ, /* 6414 */
+  IC_EVEX_W_XD_KZ, /* 6415 */
+  IC_EVEX_OPSIZE_KZ, /* 6416 */
+  IC_EVEX_OPSIZE_KZ, /* 6417 */
+  IC_EVEX_OPSIZE_KZ, /* 6418 */
+  IC_EVEX_OPSIZE_KZ, /* 6419 */
+  IC_EVEX_OPSIZE_KZ, /* 6420 */
+  IC_EVEX_OPSIZE_KZ, /* 6421 */
+  IC_EVEX_OPSIZE_KZ, /* 6422 */
+  IC_EVEX_OPSIZE_KZ, /* 6423 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6424 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6425 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6426 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6427 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6428 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6429 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6430 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6431 */
+  IC_EVEX_KZ, /* 6432 */
+  IC_EVEX_KZ, /* 6433 */
+  IC_EVEX_XS_KZ, /* 6434 */
+  IC_EVEX_XS_KZ, /* 6435 */
+  IC_EVEX_XD_KZ, /* 6436 */
+  IC_EVEX_XD_KZ, /* 6437 */
+  IC_EVEX_XD_KZ, /* 6438 */
+  IC_EVEX_XD_KZ, /* 6439 */
+  IC_EVEX_W_KZ, /* 6440 */
+  IC_EVEX_W_KZ, /* 6441 */
+  IC_EVEX_W_XS_KZ, /* 6442 */
+  IC_EVEX_W_XS_KZ, /* 6443 */
+  IC_EVEX_W_XD_KZ, /* 6444 */
+  IC_EVEX_W_XD_KZ, /* 6445 */
+  IC_EVEX_W_XD_KZ, /* 6446 */
+  IC_EVEX_W_XD_KZ, /* 6447 */
+  IC_EVEX_OPSIZE_KZ, /* 6448 */
+  IC_EVEX_OPSIZE_KZ, /* 6449 */
+  IC_EVEX_OPSIZE_KZ, /* 6450 */
+  IC_EVEX_OPSIZE_KZ, /* 6451 */
+  IC_EVEX_OPSIZE_KZ, /* 6452 */
+  IC_EVEX_OPSIZE_KZ, /* 6453 */
+  IC_EVEX_OPSIZE_KZ, /* 6454 */
+  IC_EVEX_OPSIZE_KZ, /* 6455 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6456 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6457 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6458 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6459 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6460 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6461 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6462 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6463 */
+  IC_EVEX_KZ, /* 6464 */
+  IC_EVEX_KZ, /* 6465 */
+  IC_EVEX_XS_KZ, /* 6466 */
+  IC_EVEX_XS_KZ, /* 6467 */
+  IC_EVEX_XD_KZ, /* 6468 */
+  IC_EVEX_XD_KZ, /* 6469 */
+  IC_EVEX_XD_KZ, /* 6470 */
+  IC_EVEX_XD_KZ, /* 6471 */
+  IC_EVEX_W_KZ, /* 6472 */
+  IC_EVEX_W_KZ, /* 6473 */
+  IC_EVEX_W_XS_KZ, /* 6474 */
+  IC_EVEX_W_XS_KZ, /* 6475 */
+  IC_EVEX_W_XD_KZ, /* 6476 */
+  IC_EVEX_W_XD_KZ, /* 6477 */
+  IC_EVEX_W_XD_KZ, /* 6478 */
+  IC_EVEX_W_XD_KZ, /* 6479 */
+  IC_EVEX_OPSIZE_KZ, /* 6480 */
+  IC_EVEX_OPSIZE_KZ, /* 6481 */
+  IC_EVEX_OPSIZE_KZ, /* 6482 */
+  IC_EVEX_OPSIZE_KZ, /* 6483 */
+  IC_EVEX_OPSIZE_KZ, /* 6484 */
+  IC_EVEX_OPSIZE_KZ, /* 6485 */
+  IC_EVEX_OPSIZE_KZ, /* 6486 */
+  IC_EVEX_OPSIZE_KZ, /* 6487 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6488 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6489 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6490 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6491 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6492 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6493 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6494 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6495 */
+  IC_EVEX_KZ, /* 6496 */
+  IC_EVEX_KZ, /* 6497 */
+  IC_EVEX_XS_KZ, /* 6498 */
+  IC_EVEX_XS_KZ, /* 6499 */
+  IC_EVEX_XD_KZ, /* 6500 */
+  IC_EVEX_XD_KZ, /* 6501 */
+  IC_EVEX_XD_KZ, /* 6502 */
+  IC_EVEX_XD_KZ, /* 6503 */
+  IC_EVEX_W_KZ, /* 6504 */
+  IC_EVEX_W_KZ, /* 6505 */
+  IC_EVEX_W_XS_KZ, /* 6506 */
+  IC_EVEX_W_XS_KZ, /* 6507 */
+  IC_EVEX_W_XD_KZ, /* 6508 */
+  IC_EVEX_W_XD_KZ, /* 6509 */
+  IC_EVEX_W_XD_KZ, /* 6510 */
+  IC_EVEX_W_XD_KZ, /* 6511 */
+  IC_EVEX_OPSIZE_KZ, /* 6512 */
+  IC_EVEX_OPSIZE_KZ, /* 6513 */
+  IC_EVEX_OPSIZE_KZ, /* 6514 */
+  IC_EVEX_OPSIZE_KZ, /* 6515 */
+  IC_EVEX_OPSIZE_KZ, /* 6516 */
+  IC_EVEX_OPSIZE_KZ, /* 6517 */
+  IC_EVEX_OPSIZE_KZ, /* 6518 */
+  IC_EVEX_OPSIZE_KZ, /* 6519 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6520 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6521 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6522 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6523 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6524 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6525 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6526 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6527 */
+  IC_EVEX_KZ, /* 6528 */
+  IC_EVEX_KZ, /* 6529 */
+  IC_EVEX_XS_KZ, /* 6530 */
+  IC_EVEX_XS_KZ, /* 6531 */
+  IC_EVEX_XD_KZ, /* 6532 */
+  IC_EVEX_XD_KZ, /* 6533 */
+  IC_EVEX_XD_KZ, /* 6534 */
+  IC_EVEX_XD_KZ, /* 6535 */
+  IC_EVEX_W_KZ, /* 6536 */
+  IC_EVEX_W_KZ, /* 6537 */
+  IC_EVEX_W_XS_KZ, /* 6538 */
+  IC_EVEX_W_XS_KZ, /* 6539 */
+  IC_EVEX_W_XD_KZ, /* 6540 */
+  IC_EVEX_W_XD_KZ, /* 6541 */
+  IC_EVEX_W_XD_KZ, /* 6542 */
+  IC_EVEX_W_XD_KZ, /* 6543 */
+  IC_EVEX_OPSIZE_KZ, /* 6544 */
+  IC_EVEX_OPSIZE_KZ, /* 6545 */
+  IC_EVEX_OPSIZE_KZ, /* 6546 */
+  IC_EVEX_OPSIZE_KZ, /* 6547 */
+  IC_EVEX_OPSIZE_KZ, /* 6548 */
+  IC_EVEX_OPSIZE_KZ, /* 6549 */
+  IC_EVEX_OPSIZE_KZ, /* 6550 */
+  IC_EVEX_OPSIZE_KZ, /* 6551 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6552 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6553 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6554 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6555 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6556 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6557 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6558 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6559 */
+  IC_EVEX_KZ, /* 6560 */
+  IC_EVEX_KZ, /* 6561 */
+  IC_EVEX_XS_KZ, /* 6562 */
+  IC_EVEX_XS_KZ, /* 6563 */
+  IC_EVEX_XD_KZ, /* 6564 */
+  IC_EVEX_XD_KZ, /* 6565 */
+  IC_EVEX_XD_KZ, /* 6566 */
+  IC_EVEX_XD_KZ, /* 6567 */
+  IC_EVEX_W_KZ, /* 6568 */
+  IC_EVEX_W_KZ, /* 6569 */
+  IC_EVEX_W_XS_KZ, /* 6570 */
+  IC_EVEX_W_XS_KZ, /* 6571 */
+  IC_EVEX_W_XD_KZ, /* 6572 */
+  IC_EVEX_W_XD_KZ, /* 6573 */
+  IC_EVEX_W_XD_KZ, /* 6574 */
+  IC_EVEX_W_XD_KZ, /* 6575 */
+  IC_EVEX_OPSIZE_KZ, /* 6576 */
+  IC_EVEX_OPSIZE_KZ, /* 6577 */
+  IC_EVEX_OPSIZE_KZ, /* 6578 */
+  IC_EVEX_OPSIZE_KZ, /* 6579 */
+  IC_EVEX_OPSIZE_KZ, /* 6580 */
+  IC_EVEX_OPSIZE_KZ, /* 6581 */
+  IC_EVEX_OPSIZE_KZ, /* 6582 */
+  IC_EVEX_OPSIZE_KZ, /* 6583 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6584 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6585 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6586 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6587 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6588 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6589 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6590 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6591 */
+  IC_EVEX_KZ, /* 6592 */
+  IC_EVEX_KZ, /* 6593 */
+  IC_EVEX_XS_KZ, /* 6594 */
+  IC_EVEX_XS_KZ, /* 6595 */
+  IC_EVEX_XD_KZ, /* 6596 */
+  IC_EVEX_XD_KZ, /* 6597 */
+  IC_EVEX_XD_KZ, /* 6598 */
+  IC_EVEX_XD_KZ, /* 6599 */
+  IC_EVEX_W_KZ, /* 6600 */
+  IC_EVEX_W_KZ, /* 6601 */
+  IC_EVEX_W_XS_KZ, /* 6602 */
+  IC_EVEX_W_XS_KZ, /* 6603 */
+  IC_EVEX_W_XD_KZ, /* 6604 */
+  IC_EVEX_W_XD_KZ, /* 6605 */
+  IC_EVEX_W_XD_KZ, /* 6606 */
+  IC_EVEX_W_XD_KZ, /* 6607 */
+  IC_EVEX_OPSIZE_KZ, /* 6608 */
+  IC_EVEX_OPSIZE_KZ, /* 6609 */
+  IC_EVEX_OPSIZE_KZ, /* 6610 */
+  IC_EVEX_OPSIZE_KZ, /* 6611 */
+  IC_EVEX_OPSIZE_KZ, /* 6612 */
+  IC_EVEX_OPSIZE_KZ, /* 6613 */
+  IC_EVEX_OPSIZE_KZ, /* 6614 */
+  IC_EVEX_OPSIZE_KZ, /* 6615 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6616 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6617 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6618 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6619 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6620 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6621 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6622 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6623 */
+  IC_EVEX_KZ, /* 6624 */
+  IC_EVEX_KZ, /* 6625 */
+  IC_EVEX_XS_KZ, /* 6626 */
+  IC_EVEX_XS_KZ, /* 6627 */
+  IC_EVEX_XD_KZ, /* 6628 */
+  IC_EVEX_XD_KZ, /* 6629 */
+  IC_EVEX_XD_KZ, /* 6630 */
+  IC_EVEX_XD_KZ, /* 6631 */
+  IC_EVEX_W_KZ, /* 6632 */
+  IC_EVEX_W_KZ, /* 6633 */
+  IC_EVEX_W_XS_KZ, /* 6634 */
+  IC_EVEX_W_XS_KZ, /* 6635 */
+  IC_EVEX_W_XD_KZ, /* 6636 */
+  IC_EVEX_W_XD_KZ, /* 6637 */
+  IC_EVEX_W_XD_KZ, /* 6638 */
+  IC_EVEX_W_XD_KZ, /* 6639 */
+  IC_EVEX_OPSIZE_KZ, /* 6640 */
+  IC_EVEX_OPSIZE_KZ, /* 6641 */
+  IC_EVEX_OPSIZE_KZ, /* 6642 */
+  IC_EVEX_OPSIZE_KZ, /* 6643 */
+  IC_EVEX_OPSIZE_KZ, /* 6644 */
+  IC_EVEX_OPSIZE_KZ, /* 6645 */
+  IC_EVEX_OPSIZE_KZ, /* 6646 */
+  IC_EVEX_OPSIZE_KZ, /* 6647 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6648 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6649 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6650 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6651 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6652 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6653 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6654 */
+  IC_EVEX_W_OPSIZE_KZ, /* 6655 */
+  IC, /* 6656 */
+  IC_64BIT, /* 6657 */
+  IC_XS, /* 6658 */
+  IC_64BIT_XS, /* 6659 */
+  IC_XD, /* 6660 */
+  IC_64BIT_XD, /* 6661 */
+  IC_XS, /* 6662 */
+  IC_64BIT_XS, /* 6663 */
+  IC, /* 6664 */
+  IC_64BIT_REXW, /* 6665 */
+  IC_XS, /* 6666 */
+  IC_64BIT_REXW_XS, /* 6667 */
+  IC_XD, /* 6668 */
+  IC_64BIT_REXW_XD, /* 6669 */
+  IC_XS, /* 6670 */
+  IC_64BIT_REXW_XS, /* 6671 */
+  IC_OPSIZE, /* 6672 */
+  IC_64BIT_OPSIZE, /* 6673 */
+  IC_XS_OPSIZE, /* 6674 */
+  IC_64BIT_XS_OPSIZE, /* 6675 */
+  IC_XD_OPSIZE, /* 6676 */
+  IC_64BIT_XD_OPSIZE, /* 6677 */
+  IC_XS_OPSIZE, /* 6678 */
+  IC_64BIT_XD_OPSIZE, /* 6679 */
+  IC_OPSIZE, /* 6680 */
+  IC_64BIT_REXW_OPSIZE, /* 6681 */
+  IC_XS_OPSIZE, /* 6682 */
+  IC_64BIT_REXW_XS, /* 6683 */
+  IC_XD_OPSIZE, /* 6684 */
+  IC_64BIT_REXW_XD, /* 6685 */
+  IC_XS_OPSIZE, /* 6686 */
+  IC_64BIT_REXW_XS, /* 6687 */
+  IC_ADSIZE, /* 6688 */
+  IC_64BIT_ADSIZE, /* 6689 */
+  IC_XS, /* 6690 */
+  IC_64BIT_XS, /* 6691 */
+  IC_XD, /* 6692 */
+  IC_64BIT_XD, /* 6693 */
+  IC_XS, /* 6694 */
+  IC_64BIT_XS, /* 6695 */
+  IC_ADSIZE, /* 6696 */
+  IC_64BIT_ADSIZE, /* 6697 */
+  IC_XS, /* 6698 */
+  IC_64BIT_REXW_XS, /* 6699 */
+  IC_XD, /* 6700 */
+  IC_64BIT_REXW_XD, /* 6701 */
+  IC_XS, /* 6702 */
+  IC_64BIT_REXW_XS, /* 6703 */
+  IC_OPSIZE, /* 6704 */
+  IC_64BIT_OPSIZE, /* 6705 */
+  IC_XS_OPSIZE, /* 6706 */
+  IC_64BIT_XS_OPSIZE, /* 6707 */
+  IC_XD_OPSIZE, /* 6708 */
+  IC_64BIT_XD_OPSIZE, /* 6709 */
+  IC_XS_OPSIZE, /* 6710 */
+  IC_64BIT_XD_OPSIZE, /* 6711 */
+  IC_OPSIZE, /* 6712 */
+  IC_64BIT_REXW_OPSIZE, /* 6713 */
+  IC_XS_OPSIZE, /* 6714 */
+  IC_64BIT_REXW_XS, /* 6715 */
+  IC_XD_OPSIZE, /* 6716 */
+  IC_64BIT_REXW_XD, /* 6717 */
+  IC_XS_OPSIZE, /* 6718 */
+  IC_64BIT_REXW_XS, /* 6719 */
+  IC_VEX, /* 6720 */
+  IC_VEX, /* 6721 */
+  IC_VEX_XS, /* 6722 */
+  IC_VEX_XS, /* 6723 */
+  IC_VEX_XD, /* 6724 */
+  IC_VEX_XD, /* 6725 */
+  IC_VEX_XD, /* 6726 */
+  IC_VEX_XD, /* 6727 */
+  IC_VEX_W, /* 6728 */
+  IC_VEX_W, /* 6729 */
+  IC_VEX_W_XS, /* 6730 */
+  IC_VEX_W_XS, /* 6731 */
+  IC_VEX_W_XD, /* 6732 */
+  IC_VEX_W_XD, /* 6733 */
+  IC_VEX_W_XD, /* 6734 */
+  IC_VEX_W_XD, /* 6735 */
+  IC_VEX_OPSIZE, /* 6736 */
+  IC_VEX_OPSIZE, /* 6737 */
+  IC_VEX_OPSIZE, /* 6738 */
+  IC_VEX_OPSIZE, /* 6739 */
+  IC_VEX_OPSIZE, /* 6740 */
+  IC_VEX_OPSIZE, /* 6741 */
+  IC_VEX_OPSIZE, /* 6742 */
+  IC_VEX_OPSIZE, /* 6743 */
+  IC_VEX_W_OPSIZE, /* 6744 */
+  IC_VEX_W_OPSIZE, /* 6745 */
+  IC_VEX_W_OPSIZE, /* 6746 */
+  IC_VEX_W_OPSIZE, /* 6747 */
+  IC_VEX_W_OPSIZE, /* 6748 */
+  IC_VEX_W_OPSIZE, /* 6749 */
+  IC_VEX_W_OPSIZE, /* 6750 */
+  IC_VEX_W_OPSIZE, /* 6751 */
+  IC_VEX, /* 6752 */
+  IC_VEX, /* 6753 */
+  IC_VEX_XS, /* 6754 */
+  IC_VEX_XS, /* 6755 */
+  IC_VEX_XD, /* 6756 */
+  IC_VEX_XD, /* 6757 */
+  IC_VEX_XD, /* 6758 */
+  IC_VEX_XD, /* 6759 */
+  IC_VEX_W, /* 6760 */
+  IC_VEX_W, /* 6761 */
+  IC_VEX_W_XS, /* 6762 */
+  IC_VEX_W_XS, /* 6763 */
+  IC_VEX_W_XD, /* 6764 */
+  IC_VEX_W_XD, /* 6765 */
+  IC_VEX_W_XD, /* 6766 */
+  IC_VEX_W_XD, /* 6767 */
+  IC_VEX_OPSIZE, /* 6768 */
+  IC_VEX_OPSIZE, /* 6769 */
+  IC_VEX_OPSIZE, /* 6770 */
+  IC_VEX_OPSIZE, /* 6771 */
+  IC_VEX_OPSIZE, /* 6772 */
+  IC_VEX_OPSIZE, /* 6773 */
+  IC_VEX_OPSIZE, /* 6774 */
+  IC_VEX_OPSIZE, /* 6775 */
+  IC_VEX_W_OPSIZE, /* 6776 */
+  IC_VEX_W_OPSIZE, /* 6777 */
+  IC_VEX_W_OPSIZE, /* 6778 */
+  IC_VEX_W_OPSIZE, /* 6779 */
+  IC_VEX_W_OPSIZE, /* 6780 */
+  IC_VEX_W_OPSIZE, /* 6781 */
+  IC_VEX_W_OPSIZE, /* 6782 */
+  IC_VEX_W_OPSIZE, /* 6783 */
+  IC_VEX_L, /* 6784 */
+  IC_VEX_L, /* 6785 */
+  IC_VEX_L_XS, /* 6786 */
+  IC_VEX_L_XS, /* 6787 */
+  IC_VEX_L_XD, /* 6788 */
+  IC_VEX_L_XD, /* 6789 */
+  IC_VEX_L_XD, /* 6790 */
+  IC_VEX_L_XD, /* 6791 */
+  IC_VEX_L_W, /* 6792 */
+  IC_VEX_L_W, /* 6793 */
+  IC_VEX_L_W_XS, /* 6794 */
+  IC_VEX_L_W_XS, /* 6795 */
+  IC_VEX_L_W_XD, /* 6796 */
+  IC_VEX_L_W_XD, /* 6797 */
+  IC_VEX_L_W_XD, /* 6798 */
+  IC_VEX_L_W_XD, /* 6799 */
+  IC_VEX_L_OPSIZE, /* 6800 */
+  IC_VEX_L_OPSIZE, /* 6801 */
+  IC_VEX_L_OPSIZE, /* 6802 */
+  IC_VEX_L_OPSIZE, /* 6803 */
+  IC_VEX_L_OPSIZE, /* 6804 */
+  IC_VEX_L_OPSIZE, /* 6805 */
+  IC_VEX_L_OPSIZE, /* 6806 */
+  IC_VEX_L_OPSIZE, /* 6807 */
+  IC_VEX_L_W_OPSIZE, /* 6808 */
+  IC_VEX_L_W_OPSIZE, /* 6809 */
+  IC_VEX_L_W_OPSIZE, /* 6810 */
+  IC_VEX_L_W_OPSIZE, /* 6811 */
+  IC_VEX_L_W_OPSIZE, /* 6812 */
+  IC_VEX_L_W_OPSIZE, /* 6813 */
+  IC_VEX_L_W_OPSIZE, /* 6814 */
+  IC_VEX_L_W_OPSIZE, /* 6815 */
+  IC_VEX_L, /* 6816 */
+  IC_VEX_L, /* 6817 */
+  IC_VEX_L_XS, /* 6818 */
+  IC_VEX_L_XS, /* 6819 */
+  IC_VEX_L_XD, /* 6820 */
+  IC_VEX_L_XD, /* 6821 */
+  IC_VEX_L_XD, /* 6822 */
+  IC_VEX_L_XD, /* 6823 */
+  IC_VEX_L_W, /* 6824 */
+  IC_VEX_L_W, /* 6825 */
+  IC_VEX_L_W_XS, /* 6826 */
+  IC_VEX_L_W_XS, /* 6827 */
+  IC_VEX_L_W_XD, /* 6828 */
+  IC_VEX_L_W_XD, /* 6829 */
+  IC_VEX_L_W_XD, /* 6830 */
+  IC_VEX_L_W_XD, /* 6831 */
+  IC_VEX_L_OPSIZE, /* 6832 */
+  IC_VEX_L_OPSIZE, /* 6833 */
+  IC_VEX_L_OPSIZE, /* 6834 */
+  IC_VEX_L_OPSIZE, /* 6835 */
+  IC_VEX_L_OPSIZE, /* 6836 */
+  IC_VEX_L_OPSIZE, /* 6837 */
+  IC_VEX_L_OPSIZE, /* 6838 */
+  IC_VEX_L_OPSIZE, /* 6839 */
+  IC_VEX_L_W_OPSIZE, /* 6840 */
+  IC_VEX_L_W_OPSIZE, /* 6841 */
+  IC_VEX_L_W_OPSIZE, /* 6842 */
+  IC_VEX_L_W_OPSIZE, /* 6843 */
+  IC_VEX_L_W_OPSIZE, /* 6844 */
+  IC_VEX_L_W_OPSIZE, /* 6845 */
+  IC_VEX_L_W_OPSIZE, /* 6846 */
+  IC_VEX_L_W_OPSIZE, /* 6847 */
+  IC_VEX_L, /* 6848 */
+  IC_VEX_L, /* 6849 */
+  IC_VEX_L_XS, /* 6850 */
+  IC_VEX_L_XS, /* 6851 */
+  IC_VEX_L_XD, /* 6852 */
+  IC_VEX_L_XD, /* 6853 */
+  IC_VEX_L_XD, /* 6854 */
+  IC_VEX_L_XD, /* 6855 */
+  IC_VEX_L_W, /* 6856 */
+  IC_VEX_L_W, /* 6857 */
+  IC_VEX_L_W_XS, /* 6858 */
+  IC_VEX_L_W_XS, /* 6859 */
+  IC_VEX_L_W_XD, /* 6860 */
+  IC_VEX_L_W_XD, /* 6861 */
+  IC_VEX_L_W_XD, /* 6862 */
+  IC_VEX_L_W_XD, /* 6863 */
+  IC_VEX_L_OPSIZE, /* 6864 */
+  IC_VEX_L_OPSIZE, /* 6865 */
+  IC_VEX_L_OPSIZE, /* 6866 */
+  IC_VEX_L_OPSIZE, /* 6867 */
+  IC_VEX_L_OPSIZE, /* 6868 */
+  IC_VEX_L_OPSIZE, /* 6869 */
+  IC_VEX_L_OPSIZE, /* 6870 */
+  IC_VEX_L_OPSIZE, /* 6871 */
+  IC_VEX_L_W_OPSIZE, /* 6872 */
+  IC_VEX_L_W_OPSIZE, /* 6873 */
+  IC_VEX_L_W_OPSIZE, /* 6874 */
+  IC_VEX_L_W_OPSIZE, /* 6875 */
+  IC_VEX_L_W_OPSIZE, /* 6876 */
+  IC_VEX_L_W_OPSIZE, /* 6877 */
+  IC_VEX_L_W_OPSIZE, /* 6878 */
+  IC_VEX_L_W_OPSIZE, /* 6879 */
+  IC_VEX_L, /* 6880 */
+  IC_VEX_L, /* 6881 */
+  IC_VEX_L_XS, /* 6882 */
+  IC_VEX_L_XS, /* 6883 */
+  IC_VEX_L_XD, /* 6884 */
+  IC_VEX_L_XD, /* 6885 */
+  IC_VEX_L_XD, /* 6886 */
+  IC_VEX_L_XD, /* 6887 */
+  IC_VEX_L_W, /* 6888 */
+  IC_VEX_L_W, /* 6889 */
+  IC_VEX_L_W_XS, /* 6890 */
+  IC_VEX_L_W_XS, /* 6891 */
+  IC_VEX_L_W_XD, /* 6892 */
+  IC_VEX_L_W_XD, /* 6893 */
+  IC_VEX_L_W_XD, /* 6894 */
+  IC_VEX_L_W_XD, /* 6895 */
+  IC_VEX_L_OPSIZE, /* 6896 */
+  IC_VEX_L_OPSIZE, /* 6897 */
+  IC_VEX_L_OPSIZE, /* 6898 */
+  IC_VEX_L_OPSIZE, /* 6899 */
+  IC_VEX_L_OPSIZE, /* 6900 */
+  IC_VEX_L_OPSIZE, /* 6901 */
+  IC_VEX_L_OPSIZE, /* 6902 */
+  IC_VEX_L_OPSIZE, /* 6903 */
+  IC_VEX_L_W_OPSIZE, /* 6904 */
+  IC_VEX_L_W_OPSIZE, /* 6905 */
+  IC_VEX_L_W_OPSIZE, /* 6906 */
+  IC_VEX_L_W_OPSIZE, /* 6907 */
+  IC_VEX_L_W_OPSIZE, /* 6908 */
+  IC_VEX_L_W_OPSIZE, /* 6909 */
+  IC_VEX_L_W_OPSIZE, /* 6910 */
+  IC_VEX_L_W_OPSIZE, /* 6911 */
+  IC_EVEX_L_KZ, /* 6912 */
+  IC_EVEX_L_KZ, /* 6913 */
+  IC_EVEX_L_XS_KZ, /* 6914 */
+  IC_EVEX_L_XS_KZ, /* 6915 */
+  IC_EVEX_L_XD_KZ, /* 6916 */
+  IC_EVEX_L_XD_KZ, /* 6917 */
+  IC_EVEX_L_XD_KZ, /* 6918 */
+  IC_EVEX_L_XD_KZ, /* 6919 */
+  IC_EVEX_L_W_KZ, /* 6920 */
+  IC_EVEX_L_W_KZ, /* 6921 */
+  IC_EVEX_L_W_XS_KZ, /* 6922 */
+  IC_EVEX_L_W_XS_KZ, /* 6923 */
+  IC_EVEX_L_W_XD_KZ, /* 6924 */
+  IC_EVEX_L_W_XD_KZ, /* 6925 */
+  IC_EVEX_L_W_XD_KZ, /* 6926 */
+  IC_EVEX_L_W_XD_KZ, /* 6927 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6928 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6929 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6930 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6931 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6932 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6933 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6934 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6935 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6936 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6937 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6938 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6939 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6940 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6941 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6942 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6943 */
+  IC_EVEX_L_KZ, /* 6944 */
+  IC_EVEX_L_KZ, /* 6945 */
+  IC_EVEX_L_XS_KZ, /* 6946 */
+  IC_EVEX_L_XS_KZ, /* 6947 */
+  IC_EVEX_L_XD_KZ, /* 6948 */
+  IC_EVEX_L_XD_KZ, /* 6949 */
+  IC_EVEX_L_XD_KZ, /* 6950 */
+  IC_EVEX_L_XD_KZ, /* 6951 */
+  IC_EVEX_L_W_KZ, /* 6952 */
+  IC_EVEX_L_W_KZ, /* 6953 */
+  IC_EVEX_L_W_XS_KZ, /* 6954 */
+  IC_EVEX_L_W_XS_KZ, /* 6955 */
+  IC_EVEX_L_W_XD_KZ, /* 6956 */
+  IC_EVEX_L_W_XD_KZ, /* 6957 */
+  IC_EVEX_L_W_XD_KZ, /* 6958 */
+  IC_EVEX_L_W_XD_KZ, /* 6959 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6960 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6961 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6962 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6963 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6964 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6965 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6966 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6967 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6968 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6969 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6970 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6971 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6972 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6973 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6974 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 6975 */
+  IC_EVEX_L_KZ, /* 6976 */
+  IC_EVEX_L_KZ, /* 6977 */
+  IC_EVEX_L_XS_KZ, /* 6978 */
+  IC_EVEX_L_XS_KZ, /* 6979 */
+  IC_EVEX_L_XD_KZ, /* 6980 */
+  IC_EVEX_L_XD_KZ, /* 6981 */
+  IC_EVEX_L_XD_KZ, /* 6982 */
+  IC_EVEX_L_XD_KZ, /* 6983 */
+  IC_EVEX_L_W_KZ, /* 6984 */
+  IC_EVEX_L_W_KZ, /* 6985 */
+  IC_EVEX_L_W_XS_KZ, /* 6986 */
+  IC_EVEX_L_W_XS_KZ, /* 6987 */
+  IC_EVEX_L_W_XD_KZ, /* 6988 */
+  IC_EVEX_L_W_XD_KZ, /* 6989 */
+  IC_EVEX_L_W_XD_KZ, /* 6990 */
+  IC_EVEX_L_W_XD_KZ, /* 6991 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6992 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6993 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6994 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6995 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6996 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6997 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6998 */
+  IC_EVEX_L_OPSIZE_KZ, /* 6999 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7000 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7001 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7002 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7003 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7004 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7005 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7006 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7007 */
+  IC_EVEX_L_KZ, /* 7008 */
+  IC_EVEX_L_KZ, /* 7009 */
+  IC_EVEX_L_XS_KZ, /* 7010 */
+  IC_EVEX_L_XS_KZ, /* 7011 */
+  IC_EVEX_L_XD_KZ, /* 7012 */
+  IC_EVEX_L_XD_KZ, /* 7013 */
+  IC_EVEX_L_XD_KZ, /* 7014 */
+  IC_EVEX_L_XD_KZ, /* 7015 */
+  IC_EVEX_L_W_KZ, /* 7016 */
+  IC_EVEX_L_W_KZ, /* 7017 */
+  IC_EVEX_L_W_XS_KZ, /* 7018 */
+  IC_EVEX_L_W_XS_KZ, /* 7019 */
+  IC_EVEX_L_W_XD_KZ, /* 7020 */
+  IC_EVEX_L_W_XD_KZ, /* 7021 */
+  IC_EVEX_L_W_XD_KZ, /* 7022 */
+  IC_EVEX_L_W_XD_KZ, /* 7023 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7024 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7025 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7026 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7027 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7028 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7029 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7030 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7031 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7032 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7033 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7034 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7035 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7036 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7037 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7038 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7039 */
+  IC_EVEX_L_KZ, /* 7040 */
+  IC_EVEX_L_KZ, /* 7041 */
+  IC_EVEX_L_XS_KZ, /* 7042 */
+  IC_EVEX_L_XS_KZ, /* 7043 */
+  IC_EVEX_L_XD_KZ, /* 7044 */
+  IC_EVEX_L_XD_KZ, /* 7045 */
+  IC_EVEX_L_XD_KZ, /* 7046 */
+  IC_EVEX_L_XD_KZ, /* 7047 */
+  IC_EVEX_L_W_KZ, /* 7048 */
+  IC_EVEX_L_W_KZ, /* 7049 */
+  IC_EVEX_L_W_XS_KZ, /* 7050 */
+  IC_EVEX_L_W_XS_KZ, /* 7051 */
+  IC_EVEX_L_W_XD_KZ, /* 7052 */
+  IC_EVEX_L_W_XD_KZ, /* 7053 */
+  IC_EVEX_L_W_XD_KZ, /* 7054 */
+  IC_EVEX_L_W_XD_KZ, /* 7055 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7056 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7057 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7058 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7059 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7060 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7061 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7062 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7063 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7064 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7065 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7066 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7067 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7068 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7069 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7070 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7071 */
+  IC_EVEX_L_KZ, /* 7072 */
+  IC_EVEX_L_KZ, /* 7073 */
+  IC_EVEX_L_XS_KZ, /* 7074 */
+  IC_EVEX_L_XS_KZ, /* 7075 */
+  IC_EVEX_L_XD_KZ, /* 7076 */
+  IC_EVEX_L_XD_KZ, /* 7077 */
+  IC_EVEX_L_XD_KZ, /* 7078 */
+  IC_EVEX_L_XD_KZ, /* 7079 */
+  IC_EVEX_L_W_KZ, /* 7080 */
+  IC_EVEX_L_W_KZ, /* 7081 */
+  IC_EVEX_L_W_XS_KZ, /* 7082 */
+  IC_EVEX_L_W_XS_KZ, /* 7083 */
+  IC_EVEX_L_W_XD_KZ, /* 7084 */
+  IC_EVEX_L_W_XD_KZ, /* 7085 */
+  IC_EVEX_L_W_XD_KZ, /* 7086 */
+  IC_EVEX_L_W_XD_KZ, /* 7087 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7088 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7089 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7090 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7091 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7092 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7093 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7094 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7095 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7096 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7097 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7098 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7099 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7100 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7101 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7102 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7103 */
+  IC_EVEX_L_KZ, /* 7104 */
+  IC_EVEX_L_KZ, /* 7105 */
+  IC_EVEX_L_XS_KZ, /* 7106 */
+  IC_EVEX_L_XS_KZ, /* 7107 */
+  IC_EVEX_L_XD_KZ, /* 7108 */
+  IC_EVEX_L_XD_KZ, /* 7109 */
+  IC_EVEX_L_XD_KZ, /* 7110 */
+  IC_EVEX_L_XD_KZ, /* 7111 */
+  IC_EVEX_L_W_KZ, /* 7112 */
+  IC_EVEX_L_W_KZ, /* 7113 */
+  IC_EVEX_L_W_XS_KZ, /* 7114 */
+  IC_EVEX_L_W_XS_KZ, /* 7115 */
+  IC_EVEX_L_W_XD_KZ, /* 7116 */
+  IC_EVEX_L_W_XD_KZ, /* 7117 */
+  IC_EVEX_L_W_XD_KZ, /* 7118 */
+  IC_EVEX_L_W_XD_KZ, /* 7119 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7120 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7121 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7122 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7123 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7124 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7125 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7126 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7127 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7128 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7129 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7130 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7131 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7132 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7133 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7134 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7135 */
+  IC_EVEX_L_KZ, /* 7136 */
+  IC_EVEX_L_KZ, /* 7137 */
+  IC_EVEX_L_XS_KZ, /* 7138 */
+  IC_EVEX_L_XS_KZ, /* 7139 */
+  IC_EVEX_L_XD_KZ, /* 7140 */
+  IC_EVEX_L_XD_KZ, /* 7141 */
+  IC_EVEX_L_XD_KZ, /* 7142 */
+  IC_EVEX_L_XD_KZ, /* 7143 */
+  IC_EVEX_L_W_KZ, /* 7144 */
+  IC_EVEX_L_W_KZ, /* 7145 */
+  IC_EVEX_L_W_XS_KZ, /* 7146 */
+  IC_EVEX_L_W_XS_KZ, /* 7147 */
+  IC_EVEX_L_W_XD_KZ, /* 7148 */
+  IC_EVEX_L_W_XD_KZ, /* 7149 */
+  IC_EVEX_L_W_XD_KZ, /* 7150 */
+  IC_EVEX_L_W_XD_KZ, /* 7151 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7152 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7153 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7154 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7155 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7156 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7157 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7158 */
+  IC_EVEX_L_OPSIZE_KZ, /* 7159 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7160 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7161 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7162 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7163 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7164 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7165 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7166 */
+  IC_EVEX_L_W_OPSIZE_KZ, /* 7167 */
+  IC, /* 7168 */
+  IC_64BIT, /* 7169 */
+  IC_XS, /* 7170 */
+  IC_64BIT_XS, /* 7171 */
+  IC_XD, /* 7172 */
+  IC_64BIT_XD, /* 7173 */
+  IC_XS, /* 7174 */
+  IC_64BIT_XS, /* 7175 */
+  IC, /* 7176 */
+  IC_64BIT_REXW, /* 7177 */
+  IC_XS, /* 7178 */
+  IC_64BIT_REXW_XS, /* 7179 */
+  IC_XD, /* 7180 */
+  IC_64BIT_REXW_XD, /* 7181 */
+  IC_XS, /* 7182 */
+  IC_64BIT_REXW_XS, /* 7183 */
+  IC_OPSIZE, /* 7184 */
+  IC_64BIT_OPSIZE, /* 7185 */
+  IC_XS_OPSIZE, /* 7186 */
+  IC_64BIT_XS_OPSIZE, /* 7187 */
+  IC_XD_OPSIZE, /* 7188 */
+  IC_64BIT_XD_OPSIZE, /* 7189 */
+  IC_XS_OPSIZE, /* 7190 */
+  IC_64BIT_XD_OPSIZE, /* 7191 */
+  IC_OPSIZE, /* 7192 */
+  IC_64BIT_REXW_OPSIZE, /* 7193 */
+  IC_XS_OPSIZE, /* 7194 */
+  IC_64BIT_REXW_XS, /* 7195 */
+  IC_XD_OPSIZE, /* 7196 */
+  IC_64BIT_REXW_XD, /* 7197 */
+  IC_XS_OPSIZE, /* 7198 */
+  IC_64BIT_REXW_XS, /* 7199 */
+  IC_ADSIZE, /* 7200 */
+  IC_64BIT_ADSIZE, /* 7201 */
+  IC_XS, /* 7202 */
+  IC_64BIT_XS, /* 7203 */
+  IC_XD, /* 7204 */
+  IC_64BIT_XD, /* 7205 */
+  IC_XS, /* 7206 */
+  IC_64BIT_XS, /* 7207 */
+  IC_ADSIZE, /* 7208 */
+  IC_64BIT_ADSIZE, /* 7209 */
+  IC_XS, /* 7210 */
+  IC_64BIT_REXW_XS, /* 7211 */
+  IC_XD, /* 7212 */
+  IC_64BIT_REXW_XD, /* 7213 */
+  IC_XS, /* 7214 */
+  IC_64BIT_REXW_XS, /* 7215 */
+  IC_OPSIZE, /* 7216 */
+  IC_64BIT_OPSIZE, /* 7217 */
+  IC_XS_OPSIZE, /* 7218 */
+  IC_64BIT_XS_OPSIZE, /* 7219 */
+  IC_XD_OPSIZE, /* 7220 */
+  IC_64BIT_XD_OPSIZE, /* 7221 */
+  IC_XS_OPSIZE, /* 7222 */
+  IC_64BIT_XD_OPSIZE, /* 7223 */
+  IC_OPSIZE, /* 7224 */
+  IC_64BIT_REXW_OPSIZE, /* 7225 */
+  IC_XS_OPSIZE, /* 7226 */
+  IC_64BIT_REXW_XS, /* 7227 */
+  IC_XD_OPSIZE, /* 7228 */
+  IC_64BIT_REXW_XD, /* 7229 */
+  IC_XS_OPSIZE, /* 7230 */
+  IC_64BIT_REXW_XS, /* 7231 */
+  IC_VEX, /* 7232 */
+  IC_VEX, /* 7233 */
+  IC_VEX_XS, /* 7234 */
+  IC_VEX_XS, /* 7235 */
+  IC_VEX_XD, /* 7236 */
+  IC_VEX_XD, /* 7237 */
+  IC_VEX_XD, /* 7238 */
+  IC_VEX_XD, /* 7239 */
+  IC_VEX_W, /* 7240 */
+  IC_VEX_W, /* 7241 */
+  IC_VEX_W_XS, /* 7242 */
+  IC_VEX_W_XS, /* 7243 */
+  IC_VEX_W_XD, /* 7244 */
+  IC_VEX_W_XD, /* 7245 */
+  IC_VEX_W_XD, /* 7246 */
+  IC_VEX_W_XD, /* 7247 */
+  IC_VEX_OPSIZE, /* 7248 */
+  IC_VEX_OPSIZE, /* 7249 */
+  IC_VEX_OPSIZE, /* 7250 */
+  IC_VEX_OPSIZE, /* 7251 */
+  IC_VEX_OPSIZE, /* 7252 */
+  IC_VEX_OPSIZE, /* 7253 */
+  IC_VEX_OPSIZE, /* 7254 */
+  IC_VEX_OPSIZE, /* 7255 */
+  IC_VEX_W_OPSIZE, /* 7256 */
+  IC_VEX_W_OPSIZE, /* 7257 */
+  IC_VEX_W_OPSIZE, /* 7258 */
+  IC_VEX_W_OPSIZE, /* 7259 */
+  IC_VEX_W_OPSIZE, /* 7260 */
+  IC_VEX_W_OPSIZE, /* 7261 */
+  IC_VEX_W_OPSIZE, /* 7262 */
+  IC_VEX_W_OPSIZE, /* 7263 */
+  IC_VEX, /* 7264 */
+  IC_VEX, /* 7265 */
+  IC_VEX_XS, /* 7266 */
+  IC_VEX_XS, /* 7267 */
+  IC_VEX_XD, /* 7268 */
+  IC_VEX_XD, /* 7269 */
+  IC_VEX_XD, /* 7270 */
+  IC_VEX_XD, /* 7271 */
+  IC_VEX_W, /* 7272 */
+  IC_VEX_W, /* 7273 */
+  IC_VEX_W_XS, /* 7274 */
+  IC_VEX_W_XS, /* 7275 */
+  IC_VEX_W_XD, /* 7276 */
+  IC_VEX_W_XD, /* 7277 */
+  IC_VEX_W_XD, /* 7278 */
+  IC_VEX_W_XD, /* 7279 */
+  IC_VEX_OPSIZE, /* 7280 */
+  IC_VEX_OPSIZE, /* 7281 */
+  IC_VEX_OPSIZE, /* 7282 */
+  IC_VEX_OPSIZE, /* 7283 */
+  IC_VEX_OPSIZE, /* 7284 */
+  IC_VEX_OPSIZE, /* 7285 */
+  IC_VEX_OPSIZE, /* 7286 */
+  IC_VEX_OPSIZE, /* 7287 */
+  IC_VEX_W_OPSIZE, /* 7288 */
+  IC_VEX_W_OPSIZE, /* 7289 */
+  IC_VEX_W_OPSIZE, /* 7290 */
+  IC_VEX_W_OPSIZE, /* 7291 */
+  IC_VEX_W_OPSIZE, /* 7292 */
+  IC_VEX_W_OPSIZE, /* 7293 */
+  IC_VEX_W_OPSIZE, /* 7294 */
+  IC_VEX_W_OPSIZE, /* 7295 */
+  IC_VEX_L, /* 7296 */
+  IC_VEX_L, /* 7297 */
+  IC_VEX_L_XS, /* 7298 */
+  IC_VEX_L_XS, /* 7299 */
+  IC_VEX_L_XD, /* 7300 */
+  IC_VEX_L_XD, /* 7301 */
+  IC_VEX_L_XD, /* 7302 */
+  IC_VEX_L_XD, /* 7303 */
+  IC_VEX_L_W, /* 7304 */
+  IC_VEX_L_W, /* 7305 */
+  IC_VEX_L_W_XS, /* 7306 */
+  IC_VEX_L_W_XS, /* 7307 */
+  IC_VEX_L_W_XD, /* 7308 */
+  IC_VEX_L_W_XD, /* 7309 */
+  IC_VEX_L_W_XD, /* 7310 */
+  IC_VEX_L_W_XD, /* 7311 */
+  IC_VEX_L_OPSIZE, /* 7312 */
+  IC_VEX_L_OPSIZE, /* 7313 */
+  IC_VEX_L_OPSIZE, /* 7314 */
+  IC_VEX_L_OPSIZE, /* 7315 */
+  IC_VEX_L_OPSIZE, /* 7316 */
+  IC_VEX_L_OPSIZE, /* 7317 */
+  IC_VEX_L_OPSIZE, /* 7318 */
+  IC_VEX_L_OPSIZE, /* 7319 */
+  IC_VEX_L_W_OPSIZE, /* 7320 */
+  IC_VEX_L_W_OPSIZE, /* 7321 */
+  IC_VEX_L_W_OPSIZE, /* 7322 */
+  IC_VEX_L_W_OPSIZE, /* 7323 */
+  IC_VEX_L_W_OPSIZE, /* 7324 */
+  IC_VEX_L_W_OPSIZE, /* 7325 */
+  IC_VEX_L_W_OPSIZE, /* 7326 */
+  IC_VEX_L_W_OPSIZE, /* 7327 */
+  IC_VEX_L, /* 7328 */
+  IC_VEX_L, /* 7329 */
+  IC_VEX_L_XS, /* 7330 */
+  IC_VEX_L_XS, /* 7331 */
+  IC_VEX_L_XD, /* 7332 */
+  IC_VEX_L_XD, /* 7333 */
+  IC_VEX_L_XD, /* 7334 */
+  IC_VEX_L_XD, /* 7335 */
+  IC_VEX_L_W, /* 7336 */
+  IC_VEX_L_W, /* 7337 */
+  IC_VEX_L_W_XS, /* 7338 */
+  IC_VEX_L_W_XS, /* 7339 */
+  IC_VEX_L_W_XD, /* 7340 */
+  IC_VEX_L_W_XD, /* 7341 */
+  IC_VEX_L_W_XD, /* 7342 */
+  IC_VEX_L_W_XD, /* 7343 */
+  IC_VEX_L_OPSIZE, /* 7344 */
+  IC_VEX_L_OPSIZE, /* 7345 */
+  IC_VEX_L_OPSIZE, /* 7346 */
+  IC_VEX_L_OPSIZE, /* 7347 */
+  IC_VEX_L_OPSIZE, /* 7348 */
+  IC_VEX_L_OPSIZE, /* 7349 */
+  IC_VEX_L_OPSIZE, /* 7350 */
+  IC_VEX_L_OPSIZE, /* 7351 */
+  IC_VEX_L_W_OPSIZE, /* 7352 */
+  IC_VEX_L_W_OPSIZE, /* 7353 */
+  IC_VEX_L_W_OPSIZE, /* 7354 */
+  IC_VEX_L_W_OPSIZE, /* 7355 */
+  IC_VEX_L_W_OPSIZE, /* 7356 */
+  IC_VEX_L_W_OPSIZE, /* 7357 */
+  IC_VEX_L_W_OPSIZE, /* 7358 */
+  IC_VEX_L_W_OPSIZE, /* 7359 */
+  IC_VEX_L, /* 7360 */
+  IC_VEX_L, /* 7361 */
+  IC_VEX_L_XS, /* 7362 */
+  IC_VEX_L_XS, /* 7363 */
+  IC_VEX_L_XD, /* 7364 */
+  IC_VEX_L_XD, /* 7365 */
+  IC_VEX_L_XD, /* 7366 */
+  IC_VEX_L_XD, /* 7367 */
+  IC_VEX_L_W, /* 7368 */
+  IC_VEX_L_W, /* 7369 */
+  IC_VEX_L_W_XS, /* 7370 */
+  IC_VEX_L_W_XS, /* 7371 */
+  IC_VEX_L_W_XD, /* 7372 */
+  IC_VEX_L_W_XD, /* 7373 */
+  IC_VEX_L_W_XD, /* 7374 */
+  IC_VEX_L_W_XD, /* 7375 */
+  IC_VEX_L_OPSIZE, /* 7376 */
+  IC_VEX_L_OPSIZE, /* 7377 */
+  IC_VEX_L_OPSIZE, /* 7378 */
+  IC_VEX_L_OPSIZE, /* 7379 */
+  IC_VEX_L_OPSIZE, /* 7380 */
+  IC_VEX_L_OPSIZE, /* 7381 */
+  IC_VEX_L_OPSIZE, /* 7382 */
+  IC_VEX_L_OPSIZE, /* 7383 */
+  IC_VEX_L_W_OPSIZE, /* 7384 */
+  IC_VEX_L_W_OPSIZE, /* 7385 */
+  IC_VEX_L_W_OPSIZE, /* 7386 */
+  IC_VEX_L_W_OPSIZE, /* 7387 */
+  IC_VEX_L_W_OPSIZE, /* 7388 */
+  IC_VEX_L_W_OPSIZE, /* 7389 */
+  IC_VEX_L_W_OPSIZE, /* 7390 */
+  IC_VEX_L_W_OPSIZE, /* 7391 */
+  IC_VEX_L, /* 7392 */
+  IC_VEX_L, /* 7393 */
+  IC_VEX_L_XS, /* 7394 */
+  IC_VEX_L_XS, /* 7395 */
+  IC_VEX_L_XD, /* 7396 */
+  IC_VEX_L_XD, /* 7397 */
+  IC_VEX_L_XD, /* 7398 */
+  IC_VEX_L_XD, /* 7399 */
+  IC_VEX_L_W, /* 7400 */
+  IC_VEX_L_W, /* 7401 */
+  IC_VEX_L_W_XS, /* 7402 */
+  IC_VEX_L_W_XS, /* 7403 */
+  IC_VEX_L_W_XD, /* 7404 */
+  IC_VEX_L_W_XD, /* 7405 */
+  IC_VEX_L_W_XD, /* 7406 */
+  IC_VEX_L_W_XD, /* 7407 */
+  IC_VEX_L_OPSIZE, /* 7408 */
+  IC_VEX_L_OPSIZE, /* 7409 */
+  IC_VEX_L_OPSIZE, /* 7410 */
+  IC_VEX_L_OPSIZE, /* 7411 */
+  IC_VEX_L_OPSIZE, /* 7412 */
+  IC_VEX_L_OPSIZE, /* 7413 */
+  IC_VEX_L_OPSIZE, /* 7414 */
+  IC_VEX_L_OPSIZE, /* 7415 */
+  IC_VEX_L_W_OPSIZE, /* 7416 */
+  IC_VEX_L_W_OPSIZE, /* 7417 */
+  IC_VEX_L_W_OPSIZE, /* 7418 */
+  IC_VEX_L_W_OPSIZE, /* 7419 */
+  IC_VEX_L_W_OPSIZE, /* 7420 */
+  IC_VEX_L_W_OPSIZE, /* 7421 */
+  IC_VEX_L_W_OPSIZE, /* 7422 */
+  IC_VEX_L_W_OPSIZE, /* 7423 */
+  IC_EVEX_L2_KZ, /* 7424 */
+  IC_EVEX_L2_KZ, /* 7425 */
+  IC_EVEX_L2_XS_KZ, /* 7426 */
+  IC_EVEX_L2_XS_KZ, /* 7427 */
+  IC_EVEX_L2_XD_KZ, /* 7428 */
+  IC_EVEX_L2_XD_KZ, /* 7429 */
+  IC_EVEX_L2_XD_KZ, /* 7430 */
+  IC_EVEX_L2_XD_KZ, /* 7431 */
+  IC_EVEX_L2_W_KZ, /* 7432 */
+  IC_EVEX_L2_W_KZ, /* 7433 */
+  IC_EVEX_L2_W_XS_KZ, /* 7434 */
+  IC_EVEX_L2_W_XS_KZ, /* 7435 */
+  IC_EVEX_L2_W_XD_KZ, /* 7436 */
+  IC_EVEX_L2_W_XD_KZ, /* 7437 */
+  IC_EVEX_L2_W_XD_KZ, /* 7438 */
+  IC_EVEX_L2_W_XD_KZ, /* 7439 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7440 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7441 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7442 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7443 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7444 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7445 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7446 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7447 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7448 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7449 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7450 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7451 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7452 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7453 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7454 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7455 */
+  IC_EVEX_L2_KZ, /* 7456 */
+  IC_EVEX_L2_KZ, /* 7457 */
+  IC_EVEX_L2_XS_KZ, /* 7458 */
+  IC_EVEX_L2_XS_KZ, /* 7459 */
+  IC_EVEX_L2_XD_KZ, /* 7460 */
+  IC_EVEX_L2_XD_KZ, /* 7461 */
+  IC_EVEX_L2_XD_KZ, /* 7462 */
+  IC_EVEX_L2_XD_KZ, /* 7463 */
+  IC_EVEX_L2_W_KZ, /* 7464 */
+  IC_EVEX_L2_W_KZ, /* 7465 */
+  IC_EVEX_L2_W_XS_KZ, /* 7466 */
+  IC_EVEX_L2_W_XS_KZ, /* 7467 */
+  IC_EVEX_L2_W_XD_KZ, /* 7468 */
+  IC_EVEX_L2_W_XD_KZ, /* 7469 */
+  IC_EVEX_L2_W_XD_KZ, /* 7470 */
+  IC_EVEX_L2_W_XD_KZ, /* 7471 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7472 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7473 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7474 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7475 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7476 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7477 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7478 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7479 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7480 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7481 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7482 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7483 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7484 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7485 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7486 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7487 */
+  IC_EVEX_L2_KZ, /* 7488 */
+  IC_EVEX_L2_KZ, /* 7489 */
+  IC_EVEX_L2_XS_KZ, /* 7490 */
+  IC_EVEX_L2_XS_KZ, /* 7491 */
+  IC_EVEX_L2_XD_KZ, /* 7492 */
+  IC_EVEX_L2_XD_KZ, /* 7493 */
+  IC_EVEX_L2_XD_KZ, /* 7494 */
+  IC_EVEX_L2_XD_KZ, /* 7495 */
+  IC_EVEX_L2_W_KZ, /* 7496 */
+  IC_EVEX_L2_W_KZ, /* 7497 */
+  IC_EVEX_L2_W_XS_KZ, /* 7498 */
+  IC_EVEX_L2_W_XS_KZ, /* 7499 */
+  IC_EVEX_L2_W_XD_KZ, /* 7500 */
+  IC_EVEX_L2_W_XD_KZ, /* 7501 */
+  IC_EVEX_L2_W_XD_KZ, /* 7502 */
+  IC_EVEX_L2_W_XD_KZ, /* 7503 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7504 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7505 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7506 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7507 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7508 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7509 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7510 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7511 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7512 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7513 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7514 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7515 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7516 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7517 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7518 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7519 */
+  IC_EVEX_L2_KZ, /* 7520 */
+  IC_EVEX_L2_KZ, /* 7521 */
+  IC_EVEX_L2_XS_KZ, /* 7522 */
+  IC_EVEX_L2_XS_KZ, /* 7523 */
+  IC_EVEX_L2_XD_KZ, /* 7524 */
+  IC_EVEX_L2_XD_KZ, /* 7525 */
+  IC_EVEX_L2_XD_KZ, /* 7526 */
+  IC_EVEX_L2_XD_KZ, /* 7527 */
+  IC_EVEX_L2_W_KZ, /* 7528 */
+  IC_EVEX_L2_W_KZ, /* 7529 */
+  IC_EVEX_L2_W_XS_KZ, /* 7530 */
+  IC_EVEX_L2_W_XS_KZ, /* 7531 */
+  IC_EVEX_L2_W_XD_KZ, /* 7532 */
+  IC_EVEX_L2_W_XD_KZ, /* 7533 */
+  IC_EVEX_L2_W_XD_KZ, /* 7534 */
+  IC_EVEX_L2_W_XD_KZ, /* 7535 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7536 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7537 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7538 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7539 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7540 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7541 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7542 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7543 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7544 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7545 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7546 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7547 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7548 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7549 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7550 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7551 */
+  IC_EVEX_L2_KZ, /* 7552 */
+  IC_EVEX_L2_KZ, /* 7553 */
+  IC_EVEX_L2_XS_KZ, /* 7554 */
+  IC_EVEX_L2_XS_KZ, /* 7555 */
+  IC_EVEX_L2_XD_KZ, /* 7556 */
+  IC_EVEX_L2_XD_KZ, /* 7557 */
+  IC_EVEX_L2_XD_KZ, /* 7558 */
+  IC_EVEX_L2_XD_KZ, /* 7559 */
+  IC_EVEX_L2_W_KZ, /* 7560 */
+  IC_EVEX_L2_W_KZ, /* 7561 */
+  IC_EVEX_L2_W_XS_KZ, /* 7562 */
+  IC_EVEX_L2_W_XS_KZ, /* 7563 */
+  IC_EVEX_L2_W_XD_KZ, /* 7564 */
+  IC_EVEX_L2_W_XD_KZ, /* 7565 */
+  IC_EVEX_L2_W_XD_KZ, /* 7566 */
+  IC_EVEX_L2_W_XD_KZ, /* 7567 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7568 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7569 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7570 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7571 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7572 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7573 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7574 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7575 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7576 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7577 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7578 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7579 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7580 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7581 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7582 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7583 */
+  IC_EVEX_L2_KZ, /* 7584 */
+  IC_EVEX_L2_KZ, /* 7585 */
+  IC_EVEX_L2_XS_KZ, /* 7586 */
+  IC_EVEX_L2_XS_KZ, /* 7587 */
+  IC_EVEX_L2_XD_KZ, /* 7588 */
+  IC_EVEX_L2_XD_KZ, /* 7589 */
+  IC_EVEX_L2_XD_KZ, /* 7590 */
+  IC_EVEX_L2_XD_KZ, /* 7591 */
+  IC_EVEX_L2_W_KZ, /* 7592 */
+  IC_EVEX_L2_W_KZ, /* 7593 */
+  IC_EVEX_L2_W_XS_KZ, /* 7594 */
+  IC_EVEX_L2_W_XS_KZ, /* 7595 */
+  IC_EVEX_L2_W_XD_KZ, /* 7596 */
+  IC_EVEX_L2_W_XD_KZ, /* 7597 */
+  IC_EVEX_L2_W_XD_KZ, /* 7598 */
+  IC_EVEX_L2_W_XD_KZ, /* 7599 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7600 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7601 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7602 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7603 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7604 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7605 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7606 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7607 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7608 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7609 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7610 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7611 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7612 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7613 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7614 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7615 */
+  IC_EVEX_L2_KZ, /* 7616 */
+  IC_EVEX_L2_KZ, /* 7617 */
+  IC_EVEX_L2_XS_KZ, /* 7618 */
+  IC_EVEX_L2_XS_KZ, /* 7619 */
+  IC_EVEX_L2_XD_KZ, /* 7620 */
+  IC_EVEX_L2_XD_KZ, /* 7621 */
+  IC_EVEX_L2_XD_KZ, /* 7622 */
+  IC_EVEX_L2_XD_KZ, /* 7623 */
+  IC_EVEX_L2_W_KZ, /* 7624 */
+  IC_EVEX_L2_W_KZ, /* 7625 */
+  IC_EVEX_L2_W_XS_KZ, /* 7626 */
+  IC_EVEX_L2_W_XS_KZ, /* 7627 */
+  IC_EVEX_L2_W_XD_KZ, /* 7628 */
+  IC_EVEX_L2_W_XD_KZ, /* 7629 */
+  IC_EVEX_L2_W_XD_KZ, /* 7630 */
+  IC_EVEX_L2_W_XD_KZ, /* 7631 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7632 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7633 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7634 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7635 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7636 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7637 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7638 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7639 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7640 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7641 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7642 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7643 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7644 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7645 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7646 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7647 */
+  IC_EVEX_L2_KZ, /* 7648 */
+  IC_EVEX_L2_KZ, /* 7649 */
+  IC_EVEX_L2_XS_KZ, /* 7650 */
+  IC_EVEX_L2_XS_KZ, /* 7651 */
+  IC_EVEX_L2_XD_KZ, /* 7652 */
+  IC_EVEX_L2_XD_KZ, /* 7653 */
+  IC_EVEX_L2_XD_KZ, /* 7654 */
+  IC_EVEX_L2_XD_KZ, /* 7655 */
+  IC_EVEX_L2_W_KZ, /* 7656 */
+  IC_EVEX_L2_W_KZ, /* 7657 */
+  IC_EVEX_L2_W_XS_KZ, /* 7658 */
+  IC_EVEX_L2_W_XS_KZ, /* 7659 */
+  IC_EVEX_L2_W_XD_KZ, /* 7660 */
+  IC_EVEX_L2_W_XD_KZ, /* 7661 */
+  IC_EVEX_L2_W_XD_KZ, /* 7662 */
+  IC_EVEX_L2_W_XD_KZ, /* 7663 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7664 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7665 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7666 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7667 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7668 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7669 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7670 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7671 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7672 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7673 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7674 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7675 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7676 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7677 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7678 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7679 */
+  IC, /* 7680 */
+  IC_64BIT, /* 7681 */
+  IC_XS, /* 7682 */
+  IC_64BIT_XS, /* 7683 */
+  IC_XD, /* 7684 */
+  IC_64BIT_XD, /* 7685 */
+  IC_XS, /* 7686 */
+  IC_64BIT_XS, /* 7687 */
+  IC, /* 7688 */
+  IC_64BIT_REXW, /* 7689 */
+  IC_XS, /* 7690 */
+  IC_64BIT_REXW_XS, /* 7691 */
+  IC_XD, /* 7692 */
+  IC_64BIT_REXW_XD, /* 7693 */
+  IC_XS, /* 7694 */
+  IC_64BIT_REXW_XS, /* 7695 */
+  IC_OPSIZE, /* 7696 */
+  IC_64BIT_OPSIZE, /* 7697 */
+  IC_XS_OPSIZE, /* 7698 */
+  IC_64BIT_XS_OPSIZE, /* 7699 */
+  IC_XD_OPSIZE, /* 7700 */
+  IC_64BIT_XD_OPSIZE, /* 7701 */
+  IC_XS_OPSIZE, /* 7702 */
+  IC_64BIT_XD_OPSIZE, /* 7703 */
+  IC_OPSIZE, /* 7704 */
+  IC_64BIT_REXW_OPSIZE, /* 7705 */
+  IC_XS_OPSIZE, /* 7706 */
+  IC_64BIT_REXW_XS, /* 7707 */
+  IC_XD_OPSIZE, /* 7708 */
+  IC_64BIT_REXW_XD, /* 7709 */
+  IC_XS_OPSIZE, /* 7710 */
+  IC_64BIT_REXW_XS, /* 7711 */
+  IC_ADSIZE, /* 7712 */
+  IC_64BIT_ADSIZE, /* 7713 */
+  IC_XS, /* 7714 */
+  IC_64BIT_XS, /* 7715 */
+  IC_XD, /* 7716 */
+  IC_64BIT_XD, /* 7717 */
+  IC_XS, /* 7718 */
+  IC_64BIT_XS, /* 7719 */
+  IC_ADSIZE, /* 7720 */
+  IC_64BIT_ADSIZE, /* 7721 */
+  IC_XS, /* 7722 */
+  IC_64BIT_REXW_XS, /* 7723 */
+  IC_XD, /* 7724 */
+  IC_64BIT_REXW_XD, /* 7725 */
+  IC_XS, /* 7726 */
+  IC_64BIT_REXW_XS, /* 7727 */
+  IC_OPSIZE, /* 7728 */
+  IC_64BIT_OPSIZE, /* 7729 */
+  IC_XS_OPSIZE, /* 7730 */
+  IC_64BIT_XS_OPSIZE, /* 7731 */
+  IC_XD_OPSIZE, /* 7732 */
+  IC_64BIT_XD_OPSIZE, /* 7733 */
+  IC_XS_OPSIZE, /* 7734 */
+  IC_64BIT_XD_OPSIZE, /* 7735 */
+  IC_OPSIZE, /* 7736 */
+  IC_64BIT_REXW_OPSIZE, /* 7737 */
+  IC_XS_OPSIZE, /* 7738 */
+  IC_64BIT_REXW_XS, /* 7739 */
+  IC_XD_OPSIZE, /* 7740 */
+  IC_64BIT_REXW_XD, /* 7741 */
+  IC_XS_OPSIZE, /* 7742 */
+  IC_64BIT_REXW_XS, /* 7743 */
+  IC_VEX, /* 7744 */
+  IC_VEX, /* 7745 */
+  IC_VEX_XS, /* 7746 */
+  IC_VEX_XS, /* 7747 */
+  IC_VEX_XD, /* 7748 */
+  IC_VEX_XD, /* 7749 */
+  IC_VEX_XD, /* 7750 */
+  IC_VEX_XD, /* 7751 */
+  IC_VEX_W, /* 7752 */
+  IC_VEX_W, /* 7753 */
+  IC_VEX_W_XS, /* 7754 */
+  IC_VEX_W_XS, /* 7755 */
+  IC_VEX_W_XD, /* 7756 */
+  IC_VEX_W_XD, /* 7757 */
+  IC_VEX_W_XD, /* 7758 */
+  IC_VEX_W_XD, /* 7759 */
+  IC_VEX_OPSIZE, /* 7760 */
+  IC_VEX_OPSIZE, /* 7761 */
+  IC_VEX_OPSIZE, /* 7762 */
+  IC_VEX_OPSIZE, /* 7763 */
+  IC_VEX_OPSIZE, /* 7764 */
+  IC_VEX_OPSIZE, /* 7765 */
+  IC_VEX_OPSIZE, /* 7766 */
+  IC_VEX_OPSIZE, /* 7767 */
+  IC_VEX_W_OPSIZE, /* 7768 */
+  IC_VEX_W_OPSIZE, /* 7769 */
+  IC_VEX_W_OPSIZE, /* 7770 */
+  IC_VEX_W_OPSIZE, /* 7771 */
+  IC_VEX_W_OPSIZE, /* 7772 */
+  IC_VEX_W_OPSIZE, /* 7773 */
+  IC_VEX_W_OPSIZE, /* 7774 */
+  IC_VEX_W_OPSIZE, /* 7775 */
+  IC_VEX, /* 7776 */
+  IC_VEX, /* 7777 */
+  IC_VEX_XS, /* 7778 */
+  IC_VEX_XS, /* 7779 */
+  IC_VEX_XD, /* 7780 */
+  IC_VEX_XD, /* 7781 */
+  IC_VEX_XD, /* 7782 */
+  IC_VEX_XD, /* 7783 */
+  IC_VEX_W, /* 7784 */
+  IC_VEX_W, /* 7785 */
+  IC_VEX_W_XS, /* 7786 */
+  IC_VEX_W_XS, /* 7787 */
+  IC_VEX_W_XD, /* 7788 */
+  IC_VEX_W_XD, /* 7789 */
+  IC_VEX_W_XD, /* 7790 */
+  IC_VEX_W_XD, /* 7791 */
+  IC_VEX_OPSIZE, /* 7792 */
+  IC_VEX_OPSIZE, /* 7793 */
+  IC_VEX_OPSIZE, /* 7794 */
+  IC_VEX_OPSIZE, /* 7795 */
+  IC_VEX_OPSIZE, /* 7796 */
+  IC_VEX_OPSIZE, /* 7797 */
+  IC_VEX_OPSIZE, /* 7798 */
+  IC_VEX_OPSIZE, /* 7799 */
+  IC_VEX_W_OPSIZE, /* 7800 */
+  IC_VEX_W_OPSIZE, /* 7801 */
+  IC_VEX_W_OPSIZE, /* 7802 */
+  IC_VEX_W_OPSIZE, /* 7803 */
+  IC_VEX_W_OPSIZE, /* 7804 */
+  IC_VEX_W_OPSIZE, /* 7805 */
+  IC_VEX_W_OPSIZE, /* 7806 */
+  IC_VEX_W_OPSIZE, /* 7807 */
+  IC_VEX_L, /* 7808 */
+  IC_VEX_L, /* 7809 */
+  IC_VEX_L_XS, /* 7810 */
+  IC_VEX_L_XS, /* 7811 */
+  IC_VEX_L_XD, /* 7812 */
+  IC_VEX_L_XD, /* 7813 */
+  IC_VEX_L_XD, /* 7814 */
+  IC_VEX_L_XD, /* 7815 */
+  IC_VEX_L_W, /* 7816 */
+  IC_VEX_L_W, /* 7817 */
+  IC_VEX_L_W_XS, /* 7818 */
+  IC_VEX_L_W_XS, /* 7819 */
+  IC_VEX_L_W_XD, /* 7820 */
+  IC_VEX_L_W_XD, /* 7821 */
+  IC_VEX_L_W_XD, /* 7822 */
+  IC_VEX_L_W_XD, /* 7823 */
+  IC_VEX_L_OPSIZE, /* 7824 */
+  IC_VEX_L_OPSIZE, /* 7825 */
+  IC_VEX_L_OPSIZE, /* 7826 */
+  IC_VEX_L_OPSIZE, /* 7827 */
+  IC_VEX_L_OPSIZE, /* 7828 */
+  IC_VEX_L_OPSIZE, /* 7829 */
+  IC_VEX_L_OPSIZE, /* 7830 */
+  IC_VEX_L_OPSIZE, /* 7831 */
+  IC_VEX_L_W_OPSIZE, /* 7832 */
+  IC_VEX_L_W_OPSIZE, /* 7833 */
+  IC_VEX_L_W_OPSIZE, /* 7834 */
+  IC_VEX_L_W_OPSIZE, /* 7835 */
+  IC_VEX_L_W_OPSIZE, /* 7836 */
+  IC_VEX_L_W_OPSIZE, /* 7837 */
+  IC_VEX_L_W_OPSIZE, /* 7838 */
+  IC_VEX_L_W_OPSIZE, /* 7839 */
+  IC_VEX_L, /* 7840 */
+  IC_VEX_L, /* 7841 */
+  IC_VEX_L_XS, /* 7842 */
+  IC_VEX_L_XS, /* 7843 */
+  IC_VEX_L_XD, /* 7844 */
+  IC_VEX_L_XD, /* 7845 */
+  IC_VEX_L_XD, /* 7846 */
+  IC_VEX_L_XD, /* 7847 */
+  IC_VEX_L_W, /* 7848 */
+  IC_VEX_L_W, /* 7849 */
+  IC_VEX_L_W_XS, /* 7850 */
+  IC_VEX_L_W_XS, /* 7851 */
+  IC_VEX_L_W_XD, /* 7852 */
+  IC_VEX_L_W_XD, /* 7853 */
+  IC_VEX_L_W_XD, /* 7854 */
+  IC_VEX_L_W_XD, /* 7855 */
+  IC_VEX_L_OPSIZE, /* 7856 */
+  IC_VEX_L_OPSIZE, /* 7857 */
+  IC_VEX_L_OPSIZE, /* 7858 */
+  IC_VEX_L_OPSIZE, /* 7859 */
+  IC_VEX_L_OPSIZE, /* 7860 */
+  IC_VEX_L_OPSIZE, /* 7861 */
+  IC_VEX_L_OPSIZE, /* 7862 */
+  IC_VEX_L_OPSIZE, /* 7863 */
+  IC_VEX_L_W_OPSIZE, /* 7864 */
+  IC_VEX_L_W_OPSIZE, /* 7865 */
+  IC_VEX_L_W_OPSIZE, /* 7866 */
+  IC_VEX_L_W_OPSIZE, /* 7867 */
+  IC_VEX_L_W_OPSIZE, /* 7868 */
+  IC_VEX_L_W_OPSIZE, /* 7869 */
+  IC_VEX_L_W_OPSIZE, /* 7870 */
+  IC_VEX_L_W_OPSIZE, /* 7871 */
+  IC_VEX_L, /* 7872 */
+  IC_VEX_L, /* 7873 */
+  IC_VEX_L_XS, /* 7874 */
+  IC_VEX_L_XS, /* 7875 */
+  IC_VEX_L_XD, /* 7876 */
+  IC_VEX_L_XD, /* 7877 */
+  IC_VEX_L_XD, /* 7878 */
+  IC_VEX_L_XD, /* 7879 */
+  IC_VEX_L_W, /* 7880 */
+  IC_VEX_L_W, /* 7881 */
+  IC_VEX_L_W_XS, /* 7882 */
+  IC_VEX_L_W_XS, /* 7883 */
+  IC_VEX_L_W_XD, /* 7884 */
+  IC_VEX_L_W_XD, /* 7885 */
+  IC_VEX_L_W_XD, /* 7886 */
+  IC_VEX_L_W_XD, /* 7887 */
+  IC_VEX_L_OPSIZE, /* 7888 */
+  IC_VEX_L_OPSIZE, /* 7889 */
+  IC_VEX_L_OPSIZE, /* 7890 */
+  IC_VEX_L_OPSIZE, /* 7891 */
+  IC_VEX_L_OPSIZE, /* 7892 */
+  IC_VEX_L_OPSIZE, /* 7893 */
+  IC_VEX_L_OPSIZE, /* 7894 */
+  IC_VEX_L_OPSIZE, /* 7895 */
+  IC_VEX_L_W_OPSIZE, /* 7896 */
+  IC_VEX_L_W_OPSIZE, /* 7897 */
+  IC_VEX_L_W_OPSIZE, /* 7898 */
+  IC_VEX_L_W_OPSIZE, /* 7899 */
+  IC_VEX_L_W_OPSIZE, /* 7900 */
+  IC_VEX_L_W_OPSIZE, /* 7901 */
+  IC_VEX_L_W_OPSIZE, /* 7902 */
+  IC_VEX_L_W_OPSIZE, /* 7903 */
+  IC_VEX_L, /* 7904 */
+  IC_VEX_L, /* 7905 */
+  IC_VEX_L_XS, /* 7906 */
+  IC_VEX_L_XS, /* 7907 */
+  IC_VEX_L_XD, /* 7908 */
+  IC_VEX_L_XD, /* 7909 */
+  IC_VEX_L_XD, /* 7910 */
+  IC_VEX_L_XD, /* 7911 */
+  IC_VEX_L_W, /* 7912 */
+  IC_VEX_L_W, /* 7913 */
+  IC_VEX_L_W_XS, /* 7914 */
+  IC_VEX_L_W_XS, /* 7915 */
+  IC_VEX_L_W_XD, /* 7916 */
+  IC_VEX_L_W_XD, /* 7917 */
+  IC_VEX_L_W_XD, /* 7918 */
+  IC_VEX_L_W_XD, /* 7919 */
+  IC_VEX_L_OPSIZE, /* 7920 */
+  IC_VEX_L_OPSIZE, /* 7921 */
+  IC_VEX_L_OPSIZE, /* 7922 */
+  IC_VEX_L_OPSIZE, /* 7923 */
+  IC_VEX_L_OPSIZE, /* 7924 */
+  IC_VEX_L_OPSIZE, /* 7925 */
+  IC_VEX_L_OPSIZE, /* 7926 */
+  IC_VEX_L_OPSIZE, /* 7927 */
+  IC_VEX_L_W_OPSIZE, /* 7928 */
+  IC_VEX_L_W_OPSIZE, /* 7929 */
+  IC_VEX_L_W_OPSIZE, /* 7930 */
+  IC_VEX_L_W_OPSIZE, /* 7931 */
+  IC_VEX_L_W_OPSIZE, /* 7932 */
+  IC_VEX_L_W_OPSIZE, /* 7933 */
+  IC_VEX_L_W_OPSIZE, /* 7934 */
+  IC_VEX_L_W_OPSIZE, /* 7935 */
+  IC_EVEX_L2_KZ, /* 7936 */
+  IC_EVEX_L2_KZ, /* 7937 */
+  IC_EVEX_L2_XS_KZ, /* 7938 */
+  IC_EVEX_L2_XS_KZ, /* 7939 */
+  IC_EVEX_L2_XD_KZ, /* 7940 */
+  IC_EVEX_L2_XD_KZ, /* 7941 */
+  IC_EVEX_L2_XD_KZ, /* 7942 */
+  IC_EVEX_L2_XD_KZ, /* 7943 */
+  IC_EVEX_L2_W_KZ, /* 7944 */
+  IC_EVEX_L2_W_KZ, /* 7945 */
+  IC_EVEX_L2_W_XS_KZ, /* 7946 */
+  IC_EVEX_L2_W_XS_KZ, /* 7947 */
+  IC_EVEX_L2_W_XD_KZ, /* 7948 */
+  IC_EVEX_L2_W_XD_KZ, /* 7949 */
+  IC_EVEX_L2_W_XD_KZ, /* 7950 */
+  IC_EVEX_L2_W_XD_KZ, /* 7951 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7952 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7953 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7954 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7955 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7956 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7957 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7958 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7959 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7960 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7961 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7962 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7963 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7964 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7965 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7966 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7967 */
+  IC_EVEX_L2_KZ, /* 7968 */
+  IC_EVEX_L2_KZ, /* 7969 */
+  IC_EVEX_L2_XS_KZ, /* 7970 */
+  IC_EVEX_L2_XS_KZ, /* 7971 */
+  IC_EVEX_L2_XD_KZ, /* 7972 */
+  IC_EVEX_L2_XD_KZ, /* 7973 */
+  IC_EVEX_L2_XD_KZ, /* 7974 */
+  IC_EVEX_L2_XD_KZ, /* 7975 */
+  IC_EVEX_L2_W_KZ, /* 7976 */
+  IC_EVEX_L2_W_KZ, /* 7977 */
+  IC_EVEX_L2_W_XS_KZ, /* 7978 */
+  IC_EVEX_L2_W_XS_KZ, /* 7979 */
+  IC_EVEX_L2_W_XD_KZ, /* 7980 */
+  IC_EVEX_L2_W_XD_KZ, /* 7981 */
+  IC_EVEX_L2_W_XD_KZ, /* 7982 */
+  IC_EVEX_L2_W_XD_KZ, /* 7983 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7984 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7985 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7986 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7987 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7988 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7989 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7990 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 7991 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7992 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7993 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7994 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7995 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7996 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7997 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7998 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 7999 */
+  IC_EVEX_L2_KZ, /* 8000 */
+  IC_EVEX_L2_KZ, /* 8001 */
+  IC_EVEX_L2_XS_KZ, /* 8002 */
+  IC_EVEX_L2_XS_KZ, /* 8003 */
+  IC_EVEX_L2_XD_KZ, /* 8004 */
+  IC_EVEX_L2_XD_KZ, /* 8005 */
+  IC_EVEX_L2_XD_KZ, /* 8006 */
+  IC_EVEX_L2_XD_KZ, /* 8007 */
+  IC_EVEX_L2_W_KZ, /* 8008 */
+  IC_EVEX_L2_W_KZ, /* 8009 */
+  IC_EVEX_L2_W_XS_KZ, /* 8010 */
+  IC_EVEX_L2_W_XS_KZ, /* 8011 */
+  IC_EVEX_L2_W_XD_KZ, /* 8012 */
+  IC_EVEX_L2_W_XD_KZ, /* 8013 */
+  IC_EVEX_L2_W_XD_KZ, /* 8014 */
+  IC_EVEX_L2_W_XD_KZ, /* 8015 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8016 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8017 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8018 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8019 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8020 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8021 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8022 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8023 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8024 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8025 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8026 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8027 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8028 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8029 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8030 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8031 */
+  IC_EVEX_L2_KZ, /* 8032 */
+  IC_EVEX_L2_KZ, /* 8033 */
+  IC_EVEX_L2_XS_KZ, /* 8034 */
+  IC_EVEX_L2_XS_KZ, /* 8035 */
+  IC_EVEX_L2_XD_KZ, /* 8036 */
+  IC_EVEX_L2_XD_KZ, /* 8037 */
+  IC_EVEX_L2_XD_KZ, /* 8038 */
+  IC_EVEX_L2_XD_KZ, /* 8039 */
+  IC_EVEX_L2_W_KZ, /* 8040 */
+  IC_EVEX_L2_W_KZ, /* 8041 */
+  IC_EVEX_L2_W_XS_KZ, /* 8042 */
+  IC_EVEX_L2_W_XS_KZ, /* 8043 */
+  IC_EVEX_L2_W_XD_KZ, /* 8044 */
+  IC_EVEX_L2_W_XD_KZ, /* 8045 */
+  IC_EVEX_L2_W_XD_KZ, /* 8046 */
+  IC_EVEX_L2_W_XD_KZ, /* 8047 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8048 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8049 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8050 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8051 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8052 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8053 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8054 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8055 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8056 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8057 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8058 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8059 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8060 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8061 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8062 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8063 */
+  IC_EVEX_L2_KZ, /* 8064 */
+  IC_EVEX_L2_KZ, /* 8065 */
+  IC_EVEX_L2_XS_KZ, /* 8066 */
+  IC_EVEX_L2_XS_KZ, /* 8067 */
+  IC_EVEX_L2_XD_KZ, /* 8068 */
+  IC_EVEX_L2_XD_KZ, /* 8069 */
+  IC_EVEX_L2_XD_KZ, /* 8070 */
+  IC_EVEX_L2_XD_KZ, /* 8071 */
+  IC_EVEX_L2_W_KZ, /* 8072 */
+  IC_EVEX_L2_W_KZ, /* 8073 */
+  IC_EVEX_L2_W_XS_KZ, /* 8074 */
+  IC_EVEX_L2_W_XS_KZ, /* 8075 */
+  IC_EVEX_L2_W_XD_KZ, /* 8076 */
+  IC_EVEX_L2_W_XD_KZ, /* 8077 */
+  IC_EVEX_L2_W_XD_KZ, /* 8078 */
+  IC_EVEX_L2_W_XD_KZ, /* 8079 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8080 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8081 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8082 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8083 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8084 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8085 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8086 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8087 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8088 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8089 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8090 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8091 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8092 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8093 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8094 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8095 */
+  IC_EVEX_L2_KZ, /* 8096 */
+  IC_EVEX_L2_KZ, /* 8097 */
+  IC_EVEX_L2_XS_KZ, /* 8098 */
+  IC_EVEX_L2_XS_KZ, /* 8099 */
+  IC_EVEX_L2_XD_KZ, /* 8100 */
+  IC_EVEX_L2_XD_KZ, /* 8101 */
+  IC_EVEX_L2_XD_KZ, /* 8102 */
+  IC_EVEX_L2_XD_KZ, /* 8103 */
+  IC_EVEX_L2_W_KZ, /* 8104 */
+  IC_EVEX_L2_W_KZ, /* 8105 */
+  IC_EVEX_L2_W_XS_KZ, /* 8106 */
+  IC_EVEX_L2_W_XS_KZ, /* 8107 */
+  IC_EVEX_L2_W_XD_KZ, /* 8108 */
+  IC_EVEX_L2_W_XD_KZ, /* 8109 */
+  IC_EVEX_L2_W_XD_KZ, /* 8110 */
+  IC_EVEX_L2_W_XD_KZ, /* 8111 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8112 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8113 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8114 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8115 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8116 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8117 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8118 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8119 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8120 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8121 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8122 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8123 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8124 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8125 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8126 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8127 */
+  IC_EVEX_L2_KZ, /* 8128 */
+  IC_EVEX_L2_KZ, /* 8129 */
+  IC_EVEX_L2_XS_KZ, /* 8130 */
+  IC_EVEX_L2_XS_KZ, /* 8131 */
+  IC_EVEX_L2_XD_KZ, /* 8132 */
+  IC_EVEX_L2_XD_KZ, /* 8133 */
+  IC_EVEX_L2_XD_KZ, /* 8134 */
+  IC_EVEX_L2_XD_KZ, /* 8135 */
+  IC_EVEX_L2_W_KZ, /* 8136 */
+  IC_EVEX_L2_W_KZ, /* 8137 */
+  IC_EVEX_L2_W_XS_KZ, /* 8138 */
+  IC_EVEX_L2_W_XS_KZ, /* 8139 */
+  IC_EVEX_L2_W_XD_KZ, /* 8140 */
+  IC_EVEX_L2_W_XD_KZ, /* 8141 */
+  IC_EVEX_L2_W_XD_KZ, /* 8142 */
+  IC_EVEX_L2_W_XD_KZ, /* 8143 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8144 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8145 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8146 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8147 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8148 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8149 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8150 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8151 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8152 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8153 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8154 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8155 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8156 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8157 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8158 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8159 */
+  IC_EVEX_L2_KZ, /* 8160 */
+  IC_EVEX_L2_KZ, /* 8161 */
+  IC_EVEX_L2_XS_KZ, /* 8162 */
+  IC_EVEX_L2_XS_KZ, /* 8163 */
+  IC_EVEX_L2_XD_KZ, /* 8164 */
+  IC_EVEX_L2_XD_KZ, /* 8165 */
+  IC_EVEX_L2_XD_KZ, /* 8166 */
+  IC_EVEX_L2_XD_KZ, /* 8167 */
+  IC_EVEX_L2_W_KZ, /* 8168 */
+  IC_EVEX_L2_W_KZ, /* 8169 */
+  IC_EVEX_L2_W_XS_KZ, /* 8170 */
+  IC_EVEX_L2_W_XS_KZ, /* 8171 */
+  IC_EVEX_L2_W_XD_KZ, /* 8172 */
+  IC_EVEX_L2_W_XD_KZ, /* 8173 */
+  IC_EVEX_L2_W_XD_KZ, /* 8174 */
+  IC_EVEX_L2_W_XD_KZ, /* 8175 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8176 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8177 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8178 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8179 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8180 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8181 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8182 */
+  IC_EVEX_L2_OPSIZE_KZ, /* 8183 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8184 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8185 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8186 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8187 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8188 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8189 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8190 */
+  IC_EVEX_L2_W_OPSIZE_KZ, /* 8191 */
+  IC, /* 8192 */
+  IC_64BIT, /* 8193 */
+  IC_XS, /* 8194 */
+  IC_64BIT_XS, /* 8195 */
+  IC_XD, /* 8196 */
+  IC_64BIT_XD, /* 8197 */
+  IC_XS, /* 8198 */
+  IC_64BIT_XS, /* 8199 */
+  IC, /* 8200 */
+  IC_64BIT_REXW, /* 8201 */
+  IC_XS, /* 8202 */
+  IC_64BIT_REXW_XS, /* 8203 */
+  IC_XD, /* 8204 */
+  IC_64BIT_REXW_XD, /* 8205 */
+  IC_XS, /* 8206 */
+  IC_64BIT_REXW_XS, /* 8207 */
+  IC_OPSIZE, /* 8208 */
+  IC_64BIT_OPSIZE, /* 8209 */
+  IC_XS_OPSIZE, /* 8210 */
+  IC_64BIT_XS_OPSIZE, /* 8211 */
+  IC_XD_OPSIZE, /* 8212 */
+  IC_64BIT_XD_OPSIZE, /* 8213 */
+  IC_XS_OPSIZE, /* 8214 */
+  IC_64BIT_XD_OPSIZE, /* 8215 */
+  IC_OPSIZE, /* 8216 */
+  IC_64BIT_REXW_OPSIZE, /* 8217 */
+  IC_XS_OPSIZE, /* 8218 */
+  IC_64BIT_REXW_XS, /* 8219 */
+  IC_XD_OPSIZE, /* 8220 */
+  IC_64BIT_REXW_XD, /* 8221 */
+  IC_XS_OPSIZE, /* 8222 */
+  IC_64BIT_REXW_XS, /* 8223 */
+  IC_ADSIZE, /* 8224 */
+  IC_64BIT_ADSIZE, /* 8225 */
+  IC_XS, /* 8226 */
+  IC_64BIT_XS, /* 8227 */
+  IC_XD, /* 8228 */
+  IC_64BIT_XD, /* 8229 */
+  IC_XS, /* 8230 */
+  IC_64BIT_XS, /* 8231 */
+  IC_ADSIZE, /* 8232 */
+  IC_64BIT_ADSIZE, /* 8233 */
+  IC_XS, /* 8234 */
+  IC_64BIT_REXW_XS, /* 8235 */
+  IC_XD, /* 8236 */
+  IC_64BIT_REXW_XD, /* 8237 */
+  IC_XS, /* 8238 */
+  IC_64BIT_REXW_XS, /* 8239 */
+  IC_OPSIZE, /* 8240 */
+  IC_64BIT_OPSIZE, /* 8241 */
+  IC_XS_OPSIZE, /* 8242 */
+  IC_64BIT_XS_OPSIZE, /* 8243 */
+  IC_XD_OPSIZE, /* 8244 */
+  IC_64BIT_XD_OPSIZE, /* 8245 */
+  IC_XS_OPSIZE, /* 8246 */
+  IC_64BIT_XD_OPSIZE, /* 8247 */
+  IC_OPSIZE, /* 8248 */
+  IC_64BIT_REXW_OPSIZE, /* 8249 */
+  IC_XS_OPSIZE, /* 8250 */
+  IC_64BIT_REXW_XS, /* 8251 */
+  IC_XD_OPSIZE, /* 8252 */
+  IC_64BIT_REXW_XD, /* 8253 */
+  IC_XS_OPSIZE, /* 8254 */
+  IC_64BIT_REXW_XS, /* 8255 */
+  IC_VEX, /* 8256 */
+  IC_VEX, /* 8257 */
+  IC_VEX_XS, /* 8258 */
+  IC_VEX_XS, /* 8259 */
+  IC_VEX_XD, /* 8260 */
+  IC_VEX_XD, /* 8261 */
+  IC_VEX_XD, /* 8262 */
+  IC_VEX_XD, /* 8263 */
+  IC_VEX_W, /* 8264 */
+  IC_VEX_W, /* 8265 */
+  IC_VEX_W_XS, /* 8266 */
+  IC_VEX_W_XS, /* 8267 */
+  IC_VEX_W_XD, /* 8268 */
+  IC_VEX_W_XD, /* 8269 */
+  IC_VEX_W_XD, /* 8270 */
+  IC_VEX_W_XD, /* 8271 */
+  IC_VEX_OPSIZE, /* 8272 */
+  IC_VEX_OPSIZE, /* 8273 */
+  IC_VEX_OPSIZE, /* 8274 */
+  IC_VEX_OPSIZE, /* 8275 */
+  IC_VEX_OPSIZE, /* 8276 */
+  IC_VEX_OPSIZE, /* 8277 */
+  IC_VEX_OPSIZE, /* 8278 */
+  IC_VEX_OPSIZE, /* 8279 */
+  IC_VEX_W_OPSIZE, /* 8280 */
+  IC_VEX_W_OPSIZE, /* 8281 */
+  IC_VEX_W_OPSIZE, /* 8282 */
+  IC_VEX_W_OPSIZE, /* 8283 */
+  IC_VEX_W_OPSIZE, /* 8284 */
+  IC_VEX_W_OPSIZE, /* 8285 */
+  IC_VEX_W_OPSIZE, /* 8286 */
+  IC_VEX_W_OPSIZE, /* 8287 */
+  IC_VEX, /* 8288 */
+  IC_VEX, /* 8289 */
+  IC_VEX_XS, /* 8290 */
+  IC_VEX_XS, /* 8291 */
+  IC_VEX_XD, /* 8292 */
+  IC_VEX_XD, /* 8293 */
+  IC_VEX_XD, /* 8294 */
+  IC_VEX_XD, /* 8295 */
+  IC_VEX_W, /* 8296 */
+  IC_VEX_W, /* 8297 */
+  IC_VEX_W_XS, /* 8298 */
+  IC_VEX_W_XS, /* 8299 */
+  IC_VEX_W_XD, /* 8300 */
+  IC_VEX_W_XD, /* 8301 */
+  IC_VEX_W_XD, /* 8302 */
+  IC_VEX_W_XD, /* 8303 */
+  IC_VEX_OPSIZE, /* 8304 */
+  IC_VEX_OPSIZE, /* 8305 */
+  IC_VEX_OPSIZE, /* 8306 */
+  IC_VEX_OPSIZE, /* 8307 */
+  IC_VEX_OPSIZE, /* 8308 */
+  IC_VEX_OPSIZE, /* 8309 */
+  IC_VEX_OPSIZE, /* 8310 */
+  IC_VEX_OPSIZE, /* 8311 */
+  IC_VEX_W_OPSIZE, /* 8312 */
+  IC_VEX_W_OPSIZE, /* 8313 */
+  IC_VEX_W_OPSIZE, /* 8314 */
+  IC_VEX_W_OPSIZE, /* 8315 */
+  IC_VEX_W_OPSIZE, /* 8316 */
+  IC_VEX_W_OPSIZE, /* 8317 */
+  IC_VEX_W_OPSIZE, /* 8318 */
+  IC_VEX_W_OPSIZE, /* 8319 */
+  IC_VEX_L, /* 8320 */
+  IC_VEX_L, /* 8321 */
+  IC_VEX_L_XS, /* 8322 */
+  IC_VEX_L_XS, /* 8323 */
+  IC_VEX_L_XD, /* 8324 */
+  IC_VEX_L_XD, /* 8325 */
+  IC_VEX_L_XD, /* 8326 */
+  IC_VEX_L_XD, /* 8327 */
+  IC_VEX_L_W, /* 8328 */
+  IC_VEX_L_W, /* 8329 */
+  IC_VEX_L_W_XS, /* 8330 */
+  IC_VEX_L_W_XS, /* 8331 */
+  IC_VEX_L_W_XD, /* 8332 */
+  IC_VEX_L_W_XD, /* 8333 */
+  IC_VEX_L_W_XD, /* 8334 */
+  IC_VEX_L_W_XD, /* 8335 */
+  IC_VEX_L_OPSIZE, /* 8336 */
+  IC_VEX_L_OPSIZE, /* 8337 */
+  IC_VEX_L_OPSIZE, /* 8338 */
+  IC_VEX_L_OPSIZE, /* 8339 */
+  IC_VEX_L_OPSIZE, /* 8340 */
+  IC_VEX_L_OPSIZE, /* 8341 */
+  IC_VEX_L_OPSIZE, /* 8342 */
+  IC_VEX_L_OPSIZE, /* 8343 */
+  IC_VEX_L_W_OPSIZE, /* 8344 */
+  IC_VEX_L_W_OPSIZE, /* 8345 */
+  IC_VEX_L_W_OPSIZE, /* 8346 */
+  IC_VEX_L_W_OPSIZE, /* 8347 */
+  IC_VEX_L_W_OPSIZE, /* 8348 */
+  IC_VEX_L_W_OPSIZE, /* 8349 */
+  IC_VEX_L_W_OPSIZE, /* 8350 */
+  IC_VEX_L_W_OPSIZE, /* 8351 */
+  IC_VEX_L, /* 8352 */
+  IC_VEX_L, /* 8353 */
+  IC_VEX_L_XS, /* 8354 */
+  IC_VEX_L_XS, /* 8355 */
+  IC_VEX_L_XD, /* 8356 */
+  IC_VEX_L_XD, /* 8357 */
+  IC_VEX_L_XD, /* 8358 */
+  IC_VEX_L_XD, /* 8359 */
+  IC_VEX_L_W, /* 8360 */
+  IC_VEX_L_W, /* 8361 */
+  IC_VEX_L_W_XS, /* 8362 */
+  IC_VEX_L_W_XS, /* 8363 */
+  IC_VEX_L_W_XD, /* 8364 */
+  IC_VEX_L_W_XD, /* 8365 */
+  IC_VEX_L_W_XD, /* 8366 */
+  IC_VEX_L_W_XD, /* 8367 */
+  IC_VEX_L_OPSIZE, /* 8368 */
+  IC_VEX_L_OPSIZE, /* 8369 */
+  IC_VEX_L_OPSIZE, /* 8370 */
+  IC_VEX_L_OPSIZE, /* 8371 */
+  IC_VEX_L_OPSIZE, /* 8372 */
+  IC_VEX_L_OPSIZE, /* 8373 */
+  IC_VEX_L_OPSIZE, /* 8374 */
+  IC_VEX_L_OPSIZE, /* 8375 */
+  IC_VEX_L_W_OPSIZE, /* 8376 */
+  IC_VEX_L_W_OPSIZE, /* 8377 */
+  IC_VEX_L_W_OPSIZE, /* 8378 */
+  IC_VEX_L_W_OPSIZE, /* 8379 */
+  IC_VEX_L_W_OPSIZE, /* 8380 */
+  IC_VEX_L_W_OPSIZE, /* 8381 */
+  IC_VEX_L_W_OPSIZE, /* 8382 */
+  IC_VEX_L_W_OPSIZE, /* 8383 */
+  IC_VEX_L, /* 8384 */
+  IC_VEX_L, /* 8385 */
+  IC_VEX_L_XS, /* 8386 */
+  IC_VEX_L_XS, /* 8387 */
+  IC_VEX_L_XD, /* 8388 */
+  IC_VEX_L_XD, /* 8389 */
+  IC_VEX_L_XD, /* 8390 */
+  IC_VEX_L_XD, /* 8391 */
+  IC_VEX_L_W, /* 8392 */
+  IC_VEX_L_W, /* 8393 */
+  IC_VEX_L_W_XS, /* 8394 */
+  IC_VEX_L_W_XS, /* 8395 */
+  IC_VEX_L_W_XD, /* 8396 */
+  IC_VEX_L_W_XD, /* 8397 */
+  IC_VEX_L_W_XD, /* 8398 */
+  IC_VEX_L_W_XD, /* 8399 */
+  IC_VEX_L_OPSIZE, /* 8400 */
+  IC_VEX_L_OPSIZE, /* 8401 */
+  IC_VEX_L_OPSIZE, /* 8402 */
+  IC_VEX_L_OPSIZE, /* 8403 */
+  IC_VEX_L_OPSIZE, /* 8404 */
+  IC_VEX_L_OPSIZE, /* 8405 */
+  IC_VEX_L_OPSIZE, /* 8406 */
+  IC_VEX_L_OPSIZE, /* 8407 */
+  IC_VEX_L_W_OPSIZE, /* 8408 */
+  IC_VEX_L_W_OPSIZE, /* 8409 */
+  IC_VEX_L_W_OPSIZE, /* 8410 */
+  IC_VEX_L_W_OPSIZE, /* 8411 */
+  IC_VEX_L_W_OPSIZE, /* 8412 */
+  IC_VEX_L_W_OPSIZE, /* 8413 */
+  IC_VEX_L_W_OPSIZE, /* 8414 */
+  IC_VEX_L_W_OPSIZE, /* 8415 */
+  IC_VEX_L, /* 8416 */
+  IC_VEX_L, /* 8417 */
+  IC_VEX_L_XS, /* 8418 */
+  IC_VEX_L_XS, /* 8419 */
+  IC_VEX_L_XD, /* 8420 */
+  IC_VEX_L_XD, /* 8421 */
+  IC_VEX_L_XD, /* 8422 */
+  IC_VEX_L_XD, /* 8423 */
+  IC_VEX_L_W, /* 8424 */
+  IC_VEX_L_W, /* 8425 */
+  IC_VEX_L_W_XS, /* 8426 */
+  IC_VEX_L_W_XS, /* 8427 */
+  IC_VEX_L_W_XD, /* 8428 */
+  IC_VEX_L_W_XD, /* 8429 */
+  IC_VEX_L_W_XD, /* 8430 */
+  IC_VEX_L_W_XD, /* 8431 */
+  IC_VEX_L_OPSIZE, /* 8432 */
+  IC_VEX_L_OPSIZE, /* 8433 */
+  IC_VEX_L_OPSIZE, /* 8434 */
+  IC_VEX_L_OPSIZE, /* 8435 */
+  IC_VEX_L_OPSIZE, /* 8436 */
+  IC_VEX_L_OPSIZE, /* 8437 */
+  IC_VEX_L_OPSIZE, /* 8438 */
+  IC_VEX_L_OPSIZE, /* 8439 */
+  IC_VEX_L_W_OPSIZE, /* 8440 */
+  IC_VEX_L_W_OPSIZE, /* 8441 */
+  IC_VEX_L_W_OPSIZE, /* 8442 */
+  IC_VEX_L_W_OPSIZE, /* 8443 */
+  IC_VEX_L_W_OPSIZE, /* 8444 */
+  IC_VEX_L_W_OPSIZE, /* 8445 */
+  IC_VEX_L_W_OPSIZE, /* 8446 */
+  IC_VEX_L_W_OPSIZE, /* 8447 */
+  IC_EVEX_B, /* 8448 */
+  IC_EVEX_B, /* 8449 */
+  IC_EVEX_XS_B, /* 8450 */
+  IC_EVEX_XS_B, /* 8451 */
+  IC_EVEX_XD_B, /* 8452 */
+  IC_EVEX_XD_B, /* 8453 */
+  IC_EVEX_XD_B, /* 8454 */
+  IC_EVEX_XD_B, /* 8455 */
+  IC_EVEX_W_B, /* 8456 */
+  IC_EVEX_W_B, /* 8457 */
+  IC_EVEX_W_XS_B, /* 8458 */
+  IC_EVEX_W_XS_B, /* 8459 */
+  IC_EVEX_W_XD_B, /* 8460 */
+  IC_EVEX_W_XD_B, /* 8461 */
+  IC_EVEX_W_XD_B, /* 8462 */
+  IC_EVEX_W_XD_B, /* 8463 */
+  IC_EVEX_OPSIZE_B, /* 8464 */
+  IC_EVEX_OPSIZE_B, /* 8465 */
+  IC_EVEX_OPSIZE_B, /* 8466 */
+  IC_EVEX_OPSIZE_B, /* 8467 */
+  IC_EVEX_OPSIZE_B, /* 8468 */
+  IC_EVEX_OPSIZE_B, /* 8469 */
+  IC_EVEX_OPSIZE_B, /* 8470 */
+  IC_EVEX_OPSIZE_B, /* 8471 */
+  IC_EVEX_W_OPSIZE_B, /* 8472 */
+  IC_EVEX_W_OPSIZE_B, /* 8473 */
+  IC_EVEX_W_OPSIZE_B, /* 8474 */
+  IC_EVEX_W_OPSIZE_B, /* 8475 */
+  IC_EVEX_W_OPSIZE_B, /* 8476 */
+  IC_EVEX_W_OPSIZE_B, /* 8477 */
+  IC_EVEX_W_OPSIZE_B, /* 8478 */
+  IC_EVEX_W_OPSIZE_B, /* 8479 */
+  IC_EVEX_B, /* 8480 */
+  IC_EVEX_B, /* 8481 */
+  IC_EVEX_XS_B, /* 8482 */
+  IC_EVEX_XS_B, /* 8483 */
+  IC_EVEX_XD_B, /* 8484 */
+  IC_EVEX_XD_B, /* 8485 */
+  IC_EVEX_XD_B, /* 8486 */
+  IC_EVEX_XD_B, /* 8487 */
+  IC_EVEX_W_B, /* 8488 */
+  IC_EVEX_W_B, /* 8489 */
+  IC_EVEX_W_XS_B, /* 8490 */
+  IC_EVEX_W_XS_B, /* 8491 */
+  IC_EVEX_W_XD_B, /* 8492 */
+  IC_EVEX_W_XD_B, /* 8493 */
+  IC_EVEX_W_XD_B, /* 8494 */
+  IC_EVEX_W_XD_B, /* 8495 */
+  IC_EVEX_OPSIZE_B, /* 8496 */
+  IC_EVEX_OPSIZE_B, /* 8497 */
+  IC_EVEX_OPSIZE_B, /* 8498 */
+  IC_EVEX_OPSIZE_B, /* 8499 */
+  IC_EVEX_OPSIZE_B, /* 8500 */
+  IC_EVEX_OPSIZE_B, /* 8501 */
+  IC_EVEX_OPSIZE_B, /* 8502 */
+  IC_EVEX_OPSIZE_B, /* 8503 */
+  IC_EVEX_W_OPSIZE_B, /* 8504 */
+  IC_EVEX_W_OPSIZE_B, /* 8505 */
+  IC_EVEX_W_OPSIZE_B, /* 8506 */
+  IC_EVEX_W_OPSIZE_B, /* 8507 */
+  IC_EVEX_W_OPSIZE_B, /* 8508 */
+  IC_EVEX_W_OPSIZE_B, /* 8509 */
+  IC_EVEX_W_OPSIZE_B, /* 8510 */
+  IC_EVEX_W_OPSIZE_B, /* 8511 */
+  IC_EVEX_B, /* 8512 */
+  IC_EVEX_B, /* 8513 */
+  IC_EVEX_XS_B, /* 8514 */
+  IC_EVEX_XS_B, /* 8515 */
+  IC_EVEX_XD_B, /* 8516 */
+  IC_EVEX_XD_B, /* 8517 */
+  IC_EVEX_XD_B, /* 8518 */
+  IC_EVEX_XD_B, /* 8519 */
+  IC_EVEX_W_B, /* 8520 */
+  IC_EVEX_W_B, /* 8521 */
+  IC_EVEX_W_XS_B, /* 8522 */
+  IC_EVEX_W_XS_B, /* 8523 */
+  IC_EVEX_W_XD_B, /* 8524 */
+  IC_EVEX_W_XD_B, /* 8525 */
+  IC_EVEX_W_XD_B, /* 8526 */
+  IC_EVEX_W_XD_B, /* 8527 */
+  IC_EVEX_OPSIZE_B, /* 8528 */
+  IC_EVEX_OPSIZE_B, /* 8529 */
+  IC_EVEX_OPSIZE_B, /* 8530 */
+  IC_EVEX_OPSIZE_B, /* 8531 */
+  IC_EVEX_OPSIZE_B, /* 8532 */
+  IC_EVEX_OPSIZE_B, /* 8533 */
+  IC_EVEX_OPSIZE_B, /* 8534 */
+  IC_EVEX_OPSIZE_B, /* 8535 */
+  IC_EVEX_W_OPSIZE_B, /* 8536 */
+  IC_EVEX_W_OPSIZE_B, /* 8537 */
+  IC_EVEX_W_OPSIZE_B, /* 8538 */
+  IC_EVEX_W_OPSIZE_B, /* 8539 */
+  IC_EVEX_W_OPSIZE_B, /* 8540 */
+  IC_EVEX_W_OPSIZE_B, /* 8541 */
+  IC_EVEX_W_OPSIZE_B, /* 8542 */
+  IC_EVEX_W_OPSIZE_B, /* 8543 */
+  IC_EVEX_B, /* 8544 */
+  IC_EVEX_B, /* 8545 */
+  IC_EVEX_XS_B, /* 8546 */
+  IC_EVEX_XS_B, /* 8547 */
+  IC_EVEX_XD_B, /* 8548 */
+  IC_EVEX_XD_B, /* 8549 */
+  IC_EVEX_XD_B, /* 8550 */
+  IC_EVEX_XD_B, /* 8551 */
+  IC_EVEX_W_B, /* 8552 */
+  IC_EVEX_W_B, /* 8553 */
+  IC_EVEX_W_XS_B, /* 8554 */
+  IC_EVEX_W_XS_B, /* 8555 */
+  IC_EVEX_W_XD_B, /* 8556 */
+  IC_EVEX_W_XD_B, /* 8557 */
+  IC_EVEX_W_XD_B, /* 8558 */
+  IC_EVEX_W_XD_B, /* 8559 */
+  IC_EVEX_OPSIZE_B, /* 8560 */
+  IC_EVEX_OPSIZE_B, /* 8561 */
+  IC_EVEX_OPSIZE_B, /* 8562 */
+  IC_EVEX_OPSIZE_B, /* 8563 */
+  IC_EVEX_OPSIZE_B, /* 8564 */
+  IC_EVEX_OPSIZE_B, /* 8565 */
+  IC_EVEX_OPSIZE_B, /* 8566 */
+  IC_EVEX_OPSIZE_B, /* 8567 */
+  IC_EVEX_W_OPSIZE_B, /* 8568 */
+  IC_EVEX_W_OPSIZE_B, /* 8569 */
+  IC_EVEX_W_OPSIZE_B, /* 8570 */
+  IC_EVEX_W_OPSIZE_B, /* 8571 */
+  IC_EVEX_W_OPSIZE_B, /* 8572 */
+  IC_EVEX_W_OPSIZE_B, /* 8573 */
+  IC_EVEX_W_OPSIZE_B, /* 8574 */
+  IC_EVEX_W_OPSIZE_B, /* 8575 */
+  IC_EVEX_B, /* 8576 */
+  IC_EVEX_B, /* 8577 */
+  IC_EVEX_XS_B, /* 8578 */
+  IC_EVEX_XS_B, /* 8579 */
+  IC_EVEX_XD_B, /* 8580 */
+  IC_EVEX_XD_B, /* 8581 */
+  IC_EVEX_XD_B, /* 8582 */
+  IC_EVEX_XD_B, /* 8583 */
+  IC_EVEX_W_B, /* 8584 */
+  IC_EVEX_W_B, /* 8585 */
+  IC_EVEX_W_XS_B, /* 8586 */
+  IC_EVEX_W_XS_B, /* 8587 */
+  IC_EVEX_W_XD_B, /* 8588 */
+  IC_EVEX_W_XD_B, /* 8589 */
+  IC_EVEX_W_XD_B, /* 8590 */
+  IC_EVEX_W_XD_B, /* 8591 */
+  IC_EVEX_OPSIZE_B, /* 8592 */
+  IC_EVEX_OPSIZE_B, /* 8593 */
+  IC_EVEX_OPSIZE_B, /* 8594 */
+  IC_EVEX_OPSIZE_B, /* 8595 */
+  IC_EVEX_OPSIZE_B, /* 8596 */
+  IC_EVEX_OPSIZE_B, /* 8597 */
+  IC_EVEX_OPSIZE_B, /* 8598 */
+  IC_EVEX_OPSIZE_B, /* 8599 */
+  IC_EVEX_W_OPSIZE_B, /* 8600 */
+  IC_EVEX_W_OPSIZE_B, /* 8601 */
+  IC_EVEX_W_OPSIZE_B, /* 8602 */
+  IC_EVEX_W_OPSIZE_B, /* 8603 */
+  IC_EVEX_W_OPSIZE_B, /* 8604 */
+  IC_EVEX_W_OPSIZE_B, /* 8605 */
+  IC_EVEX_W_OPSIZE_B, /* 8606 */
+  IC_EVEX_W_OPSIZE_B, /* 8607 */
+  IC_EVEX_B, /* 8608 */
+  IC_EVEX_B, /* 8609 */
+  IC_EVEX_XS_B, /* 8610 */
+  IC_EVEX_XS_B, /* 8611 */
+  IC_EVEX_XD_B, /* 8612 */
+  IC_EVEX_XD_B, /* 8613 */
+  IC_EVEX_XD_B, /* 8614 */
+  IC_EVEX_XD_B, /* 8615 */
+  IC_EVEX_W_B, /* 8616 */
+  IC_EVEX_W_B, /* 8617 */
+  IC_EVEX_W_XS_B, /* 8618 */
+  IC_EVEX_W_XS_B, /* 8619 */
+  IC_EVEX_W_XD_B, /* 8620 */
+  IC_EVEX_W_XD_B, /* 8621 */
+  IC_EVEX_W_XD_B, /* 8622 */
+  IC_EVEX_W_XD_B, /* 8623 */
+  IC_EVEX_OPSIZE_B, /* 8624 */
+  IC_EVEX_OPSIZE_B, /* 8625 */
+  IC_EVEX_OPSIZE_B, /* 8626 */
+  IC_EVEX_OPSIZE_B, /* 8627 */
+  IC_EVEX_OPSIZE_B, /* 8628 */
+  IC_EVEX_OPSIZE_B, /* 8629 */
+  IC_EVEX_OPSIZE_B, /* 8630 */
+  IC_EVEX_OPSIZE_B, /* 8631 */
+  IC_EVEX_W_OPSIZE_B, /* 8632 */
+  IC_EVEX_W_OPSIZE_B, /* 8633 */
+  IC_EVEX_W_OPSIZE_B, /* 8634 */
+  IC_EVEX_W_OPSIZE_B, /* 8635 */
+  IC_EVEX_W_OPSIZE_B, /* 8636 */
+  IC_EVEX_W_OPSIZE_B, /* 8637 */
+  IC_EVEX_W_OPSIZE_B, /* 8638 */
+  IC_EVEX_W_OPSIZE_B, /* 8639 */
+  IC_EVEX_B, /* 8640 */
+  IC_EVEX_B, /* 8641 */
+  IC_EVEX_XS_B, /* 8642 */
+  IC_EVEX_XS_B, /* 8643 */
+  IC_EVEX_XD_B, /* 8644 */
+  IC_EVEX_XD_B, /* 8645 */
+  IC_EVEX_XD_B, /* 8646 */
+  IC_EVEX_XD_B, /* 8647 */
+  IC_EVEX_W_B, /* 8648 */
+  IC_EVEX_W_B, /* 8649 */
+  IC_EVEX_W_XS_B, /* 8650 */
+  IC_EVEX_W_XS_B, /* 8651 */
+  IC_EVEX_W_XD_B, /* 8652 */
+  IC_EVEX_W_XD_B, /* 8653 */
+  IC_EVEX_W_XD_B, /* 8654 */
+  IC_EVEX_W_XD_B, /* 8655 */
+  IC_EVEX_OPSIZE_B, /* 8656 */
+  IC_EVEX_OPSIZE_B, /* 8657 */
+  IC_EVEX_OPSIZE_B, /* 8658 */
+  IC_EVEX_OPSIZE_B, /* 8659 */
+  IC_EVEX_OPSIZE_B, /* 8660 */
+  IC_EVEX_OPSIZE_B, /* 8661 */
+  IC_EVEX_OPSIZE_B, /* 8662 */
+  IC_EVEX_OPSIZE_B, /* 8663 */
+  IC_EVEX_W_OPSIZE_B, /* 8664 */
+  IC_EVEX_W_OPSIZE_B, /* 8665 */
+  IC_EVEX_W_OPSIZE_B, /* 8666 */
+  IC_EVEX_W_OPSIZE_B, /* 8667 */
+  IC_EVEX_W_OPSIZE_B, /* 8668 */
+  IC_EVEX_W_OPSIZE_B, /* 8669 */
+  IC_EVEX_W_OPSIZE_B, /* 8670 */
+  IC_EVEX_W_OPSIZE_B, /* 8671 */
+  IC_EVEX_B, /* 8672 */
+  IC_EVEX_B, /* 8673 */
+  IC_EVEX_XS_B, /* 8674 */
+  IC_EVEX_XS_B, /* 8675 */
+  IC_EVEX_XD_B, /* 8676 */
+  IC_EVEX_XD_B, /* 8677 */
+  IC_EVEX_XD_B, /* 8678 */
+  IC_EVEX_XD_B, /* 8679 */
+  IC_EVEX_W_B, /* 8680 */
+  IC_EVEX_W_B, /* 8681 */
+  IC_EVEX_W_XS_B, /* 8682 */
+  IC_EVEX_W_XS_B, /* 8683 */
+  IC_EVEX_W_XD_B, /* 8684 */
+  IC_EVEX_W_XD_B, /* 8685 */
+  IC_EVEX_W_XD_B, /* 8686 */
+  IC_EVEX_W_XD_B, /* 8687 */
+  IC_EVEX_OPSIZE_B, /* 8688 */
+  IC_EVEX_OPSIZE_B, /* 8689 */
+  IC_EVEX_OPSIZE_B, /* 8690 */
+  IC_EVEX_OPSIZE_B, /* 8691 */
+  IC_EVEX_OPSIZE_B, /* 8692 */
+  IC_EVEX_OPSIZE_B, /* 8693 */
+  IC_EVEX_OPSIZE_B, /* 8694 */
+  IC_EVEX_OPSIZE_B, /* 8695 */
+  IC_EVEX_W_OPSIZE_B, /* 8696 */
+  IC_EVEX_W_OPSIZE_B, /* 8697 */
+  IC_EVEX_W_OPSIZE_B, /* 8698 */
+  IC_EVEX_W_OPSIZE_B, /* 8699 */
+  IC_EVEX_W_OPSIZE_B, /* 8700 */
+  IC_EVEX_W_OPSIZE_B, /* 8701 */
+  IC_EVEX_W_OPSIZE_B, /* 8702 */
+  IC_EVEX_W_OPSIZE_B, /* 8703 */
+  IC, /* 8704 */
+  IC_64BIT, /* 8705 */
+  IC_XS, /* 8706 */
+  IC_64BIT_XS, /* 8707 */
+  IC_XD, /* 8708 */
+  IC_64BIT_XD, /* 8709 */
+  IC_XS, /* 8710 */
+  IC_64BIT_XS, /* 8711 */
+  IC, /* 8712 */
+  IC_64BIT_REXW, /* 8713 */
+  IC_XS, /* 8714 */
+  IC_64BIT_REXW_XS, /* 8715 */
+  IC_XD, /* 8716 */
+  IC_64BIT_REXW_XD, /* 8717 */
+  IC_XS, /* 8718 */
+  IC_64BIT_REXW_XS, /* 8719 */
+  IC_OPSIZE, /* 8720 */
+  IC_64BIT_OPSIZE, /* 8721 */
+  IC_XS_OPSIZE, /* 8722 */
+  IC_64BIT_XS_OPSIZE, /* 8723 */
+  IC_XD_OPSIZE, /* 8724 */
+  IC_64BIT_XD_OPSIZE, /* 8725 */
+  IC_XS_OPSIZE, /* 8726 */
+  IC_64BIT_XD_OPSIZE, /* 8727 */
+  IC_OPSIZE, /* 8728 */
+  IC_64BIT_REXW_OPSIZE, /* 8729 */
+  IC_XS_OPSIZE, /* 8730 */
+  IC_64BIT_REXW_XS, /* 8731 */
+  IC_XD_OPSIZE, /* 8732 */
+  IC_64BIT_REXW_XD, /* 8733 */
+  IC_XS_OPSIZE, /* 8734 */
+  IC_64BIT_REXW_XS, /* 8735 */
+  IC_ADSIZE, /* 8736 */
+  IC_64BIT_ADSIZE, /* 8737 */
+  IC_XS, /* 8738 */
+  IC_64BIT_XS, /* 8739 */
+  IC_XD, /* 8740 */
+  IC_64BIT_XD, /* 8741 */
+  IC_XS, /* 8742 */
+  IC_64BIT_XS, /* 8743 */
+  IC_ADSIZE, /* 8744 */
+  IC_64BIT_ADSIZE, /* 8745 */
+  IC_XS, /* 8746 */
+  IC_64BIT_REXW_XS, /* 8747 */
+  IC_XD, /* 8748 */
+  IC_64BIT_REXW_XD, /* 8749 */
+  IC_XS, /* 8750 */
+  IC_64BIT_REXW_XS, /* 8751 */
+  IC_OPSIZE, /* 8752 */
+  IC_64BIT_OPSIZE, /* 8753 */
+  IC_XS_OPSIZE, /* 8754 */
+  IC_64BIT_XS_OPSIZE, /* 8755 */
+  IC_XD_OPSIZE, /* 8756 */
+  IC_64BIT_XD_OPSIZE, /* 8757 */
+  IC_XS_OPSIZE, /* 8758 */
+  IC_64BIT_XD_OPSIZE, /* 8759 */
+  IC_OPSIZE, /* 8760 */
+  IC_64BIT_REXW_OPSIZE, /* 8761 */
+  IC_XS_OPSIZE, /* 8762 */
+  IC_64BIT_REXW_XS, /* 8763 */
+  IC_XD_OPSIZE, /* 8764 */
+  IC_64BIT_REXW_XD, /* 8765 */
+  IC_XS_OPSIZE, /* 8766 */
+  IC_64BIT_REXW_XS, /* 8767 */
+  IC_VEX, /* 8768 */
+  IC_VEX, /* 8769 */
+  IC_VEX_XS, /* 8770 */
+  IC_VEX_XS, /* 8771 */
+  IC_VEX_XD, /* 8772 */
+  IC_VEX_XD, /* 8773 */
+  IC_VEX_XD, /* 8774 */
+  IC_VEX_XD, /* 8775 */
+  IC_VEX_W, /* 8776 */
+  IC_VEX_W, /* 8777 */
+  IC_VEX_W_XS, /* 8778 */
+  IC_VEX_W_XS, /* 8779 */
+  IC_VEX_W_XD, /* 8780 */
+  IC_VEX_W_XD, /* 8781 */
+  IC_VEX_W_XD, /* 8782 */
+  IC_VEX_W_XD, /* 8783 */
+  IC_VEX_OPSIZE, /* 8784 */
+  IC_VEX_OPSIZE, /* 8785 */
+  IC_VEX_OPSIZE, /* 8786 */
+  IC_VEX_OPSIZE, /* 8787 */
+  IC_VEX_OPSIZE, /* 8788 */
+  IC_VEX_OPSIZE, /* 8789 */
+  IC_VEX_OPSIZE, /* 8790 */
+  IC_VEX_OPSIZE, /* 8791 */
+  IC_VEX_W_OPSIZE, /* 8792 */
+  IC_VEX_W_OPSIZE, /* 8793 */
+  IC_VEX_W_OPSIZE, /* 8794 */
+  IC_VEX_W_OPSIZE, /* 8795 */
+  IC_VEX_W_OPSIZE, /* 8796 */
+  IC_VEX_W_OPSIZE, /* 8797 */
+  IC_VEX_W_OPSIZE, /* 8798 */
+  IC_VEX_W_OPSIZE, /* 8799 */
+  IC_VEX, /* 8800 */
+  IC_VEX, /* 8801 */
+  IC_VEX_XS, /* 8802 */
+  IC_VEX_XS, /* 8803 */
+  IC_VEX_XD, /* 8804 */
+  IC_VEX_XD, /* 8805 */
+  IC_VEX_XD, /* 8806 */
+  IC_VEX_XD, /* 8807 */
+  IC_VEX_W, /* 8808 */
+  IC_VEX_W, /* 8809 */
+  IC_VEX_W_XS, /* 8810 */
+  IC_VEX_W_XS, /* 8811 */
+  IC_VEX_W_XD, /* 8812 */
+  IC_VEX_W_XD, /* 8813 */
+  IC_VEX_W_XD, /* 8814 */
+  IC_VEX_W_XD, /* 8815 */
+  IC_VEX_OPSIZE, /* 8816 */
+  IC_VEX_OPSIZE, /* 8817 */
+  IC_VEX_OPSIZE, /* 8818 */
+  IC_VEX_OPSIZE, /* 8819 */
+  IC_VEX_OPSIZE, /* 8820 */
+  IC_VEX_OPSIZE, /* 8821 */
+  IC_VEX_OPSIZE, /* 8822 */
+  IC_VEX_OPSIZE, /* 8823 */
+  IC_VEX_W_OPSIZE, /* 8824 */
+  IC_VEX_W_OPSIZE, /* 8825 */
+  IC_VEX_W_OPSIZE, /* 8826 */
+  IC_VEX_W_OPSIZE, /* 8827 */
+  IC_VEX_W_OPSIZE, /* 8828 */
+  IC_VEX_W_OPSIZE, /* 8829 */
+  IC_VEX_W_OPSIZE, /* 8830 */
+  IC_VEX_W_OPSIZE, /* 8831 */
+  IC_VEX_L, /* 8832 */
+  IC_VEX_L, /* 8833 */
+  IC_VEX_L_XS, /* 8834 */
+  IC_VEX_L_XS, /* 8835 */
+  IC_VEX_L_XD, /* 8836 */
+  IC_VEX_L_XD, /* 8837 */
+  IC_VEX_L_XD, /* 8838 */
+  IC_VEX_L_XD, /* 8839 */
+  IC_VEX_L_W, /* 8840 */
+  IC_VEX_L_W, /* 8841 */
+  IC_VEX_L_W_XS, /* 8842 */
+  IC_VEX_L_W_XS, /* 8843 */
+  IC_VEX_L_W_XD, /* 8844 */
+  IC_VEX_L_W_XD, /* 8845 */
+  IC_VEX_L_W_XD, /* 8846 */
+  IC_VEX_L_W_XD, /* 8847 */
+  IC_VEX_L_OPSIZE, /* 8848 */
+  IC_VEX_L_OPSIZE, /* 8849 */
+  IC_VEX_L_OPSIZE, /* 8850 */
+  IC_VEX_L_OPSIZE, /* 8851 */
+  IC_VEX_L_OPSIZE, /* 8852 */
+  IC_VEX_L_OPSIZE, /* 8853 */
+  IC_VEX_L_OPSIZE, /* 8854 */
+  IC_VEX_L_OPSIZE, /* 8855 */
+  IC_VEX_L_W_OPSIZE, /* 8856 */
+  IC_VEX_L_W_OPSIZE, /* 8857 */
+  IC_VEX_L_W_OPSIZE, /* 8858 */
+  IC_VEX_L_W_OPSIZE, /* 8859 */
+  IC_VEX_L_W_OPSIZE, /* 8860 */
+  IC_VEX_L_W_OPSIZE, /* 8861 */
+  IC_VEX_L_W_OPSIZE, /* 8862 */
+  IC_VEX_L_W_OPSIZE, /* 8863 */
+  IC_VEX_L, /* 8864 */
+  IC_VEX_L, /* 8865 */
+  IC_VEX_L_XS, /* 8866 */
+  IC_VEX_L_XS, /* 8867 */
+  IC_VEX_L_XD, /* 8868 */
+  IC_VEX_L_XD, /* 8869 */
+  IC_VEX_L_XD, /* 8870 */
+  IC_VEX_L_XD, /* 8871 */
+  IC_VEX_L_W, /* 8872 */
+  IC_VEX_L_W, /* 8873 */
+  IC_VEX_L_W_XS, /* 8874 */
+  IC_VEX_L_W_XS, /* 8875 */
+  IC_VEX_L_W_XD, /* 8876 */
+  IC_VEX_L_W_XD, /* 8877 */
+  IC_VEX_L_W_XD, /* 8878 */
+  IC_VEX_L_W_XD, /* 8879 */
+  IC_VEX_L_OPSIZE, /* 8880 */
+  IC_VEX_L_OPSIZE, /* 8881 */
+  IC_VEX_L_OPSIZE, /* 8882 */
+  IC_VEX_L_OPSIZE, /* 8883 */
+  IC_VEX_L_OPSIZE, /* 8884 */
+  IC_VEX_L_OPSIZE, /* 8885 */
+  IC_VEX_L_OPSIZE, /* 8886 */
+  IC_VEX_L_OPSIZE, /* 8887 */
+  IC_VEX_L_W_OPSIZE, /* 8888 */
+  IC_VEX_L_W_OPSIZE, /* 8889 */
+  IC_VEX_L_W_OPSIZE, /* 8890 */
+  IC_VEX_L_W_OPSIZE, /* 8891 */
+  IC_VEX_L_W_OPSIZE, /* 8892 */
+  IC_VEX_L_W_OPSIZE, /* 8893 */
+  IC_VEX_L_W_OPSIZE, /* 8894 */
+  IC_VEX_L_W_OPSIZE, /* 8895 */
+  IC_VEX_L, /* 8896 */
+  IC_VEX_L, /* 8897 */
+  IC_VEX_L_XS, /* 8898 */
+  IC_VEX_L_XS, /* 8899 */
+  IC_VEX_L_XD, /* 8900 */
+  IC_VEX_L_XD, /* 8901 */
+  IC_VEX_L_XD, /* 8902 */
+  IC_VEX_L_XD, /* 8903 */
+  IC_VEX_L_W, /* 8904 */
+  IC_VEX_L_W, /* 8905 */
+  IC_VEX_L_W_XS, /* 8906 */
+  IC_VEX_L_W_XS, /* 8907 */
+  IC_VEX_L_W_XD, /* 8908 */
+  IC_VEX_L_W_XD, /* 8909 */
+  IC_VEX_L_W_XD, /* 8910 */
+  IC_VEX_L_W_XD, /* 8911 */
+  IC_VEX_L_OPSIZE, /* 8912 */
+  IC_VEX_L_OPSIZE, /* 8913 */
+  IC_VEX_L_OPSIZE, /* 8914 */
+  IC_VEX_L_OPSIZE, /* 8915 */
+  IC_VEX_L_OPSIZE, /* 8916 */
+  IC_VEX_L_OPSIZE, /* 8917 */
+  IC_VEX_L_OPSIZE, /* 8918 */
+  IC_VEX_L_OPSIZE, /* 8919 */
+  IC_VEX_L_W_OPSIZE, /* 8920 */
+  IC_VEX_L_W_OPSIZE, /* 8921 */
+  IC_VEX_L_W_OPSIZE, /* 8922 */
+  IC_VEX_L_W_OPSIZE, /* 8923 */
+  IC_VEX_L_W_OPSIZE, /* 8924 */
+  IC_VEX_L_W_OPSIZE, /* 8925 */
+  IC_VEX_L_W_OPSIZE, /* 8926 */
+  IC_VEX_L_W_OPSIZE, /* 8927 */
+  IC_VEX_L, /* 8928 */
+  IC_VEX_L, /* 8929 */
+  IC_VEX_L_XS, /* 8930 */
+  IC_VEX_L_XS, /* 8931 */
+  IC_VEX_L_XD, /* 8932 */
+  IC_VEX_L_XD, /* 8933 */
+  IC_VEX_L_XD, /* 8934 */
+  IC_VEX_L_XD, /* 8935 */
+  IC_VEX_L_W, /* 8936 */
+  IC_VEX_L_W, /* 8937 */
+  IC_VEX_L_W_XS, /* 8938 */
+  IC_VEX_L_W_XS, /* 8939 */
+  IC_VEX_L_W_XD, /* 8940 */
+  IC_VEX_L_W_XD, /* 8941 */
+  IC_VEX_L_W_XD, /* 8942 */
+  IC_VEX_L_W_XD, /* 8943 */
+  IC_VEX_L_OPSIZE, /* 8944 */
+  IC_VEX_L_OPSIZE, /* 8945 */
+  IC_VEX_L_OPSIZE, /* 8946 */
+  IC_VEX_L_OPSIZE, /* 8947 */
+  IC_VEX_L_OPSIZE, /* 8948 */
+  IC_VEX_L_OPSIZE, /* 8949 */
+  IC_VEX_L_OPSIZE, /* 8950 */
+  IC_VEX_L_OPSIZE, /* 8951 */
+  IC_VEX_L_W_OPSIZE, /* 8952 */
+  IC_VEX_L_W_OPSIZE, /* 8953 */
+  IC_VEX_L_W_OPSIZE, /* 8954 */
+  IC_VEX_L_W_OPSIZE, /* 8955 */
+  IC_VEX_L_W_OPSIZE, /* 8956 */
+  IC_VEX_L_W_OPSIZE, /* 8957 */
+  IC_VEX_L_W_OPSIZE, /* 8958 */
+  IC_VEX_L_W_OPSIZE, /* 8959 */
+  IC_EVEX_L_B, /* 8960 */
+  IC_EVEX_L_B, /* 8961 */
+  IC_EVEX_L_XS_B, /* 8962 */
+  IC_EVEX_L_XS_B, /* 8963 */
+  IC_EVEX_L_XD_B, /* 8964 */
+  IC_EVEX_L_XD_B, /* 8965 */
+  IC_EVEX_L_XD_B, /* 8966 */
+  IC_EVEX_L_XD_B, /* 8967 */
+  IC_EVEX_L_W_B, /* 8968 */
+  IC_EVEX_L_W_B, /* 8969 */
+  IC_EVEX_L_W_XS_B, /* 8970 */
+  IC_EVEX_L_W_XS_B, /* 8971 */
+  IC_EVEX_L_W_XD_B, /* 8972 */
+  IC_EVEX_L_W_XD_B, /* 8973 */
+  IC_EVEX_L_W_XD_B, /* 8974 */
+  IC_EVEX_L_W_XD_B, /* 8975 */
+  IC_EVEX_L_OPSIZE_B, /* 8976 */
+  IC_EVEX_L_OPSIZE_B, /* 8977 */
+  IC_EVEX_L_OPSIZE_B, /* 8978 */
+  IC_EVEX_L_OPSIZE_B, /* 8979 */
+  IC_EVEX_L_OPSIZE_B, /* 8980 */
+  IC_EVEX_L_OPSIZE_B, /* 8981 */
+  IC_EVEX_L_OPSIZE_B, /* 8982 */
+  IC_EVEX_L_OPSIZE_B, /* 8983 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8984 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8985 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8986 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8987 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8988 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8989 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8990 */
+  IC_EVEX_L_W_OPSIZE_B, /* 8991 */
+  IC_EVEX_L_B, /* 8992 */
+  IC_EVEX_L_B, /* 8993 */
+  IC_EVEX_L_XS_B, /* 8994 */
+  IC_EVEX_L_XS_B, /* 8995 */
+  IC_EVEX_L_XD_B, /* 8996 */
+  IC_EVEX_L_XD_B, /* 8997 */
+  IC_EVEX_L_XD_B, /* 8998 */
+  IC_EVEX_L_XD_B, /* 8999 */
+  IC_EVEX_L_W_B, /* 9000 */
+  IC_EVEX_L_W_B, /* 9001 */
+  IC_EVEX_L_W_XS_B, /* 9002 */
+  IC_EVEX_L_W_XS_B, /* 9003 */
+  IC_EVEX_L_W_XD_B, /* 9004 */
+  IC_EVEX_L_W_XD_B, /* 9005 */
+  IC_EVEX_L_W_XD_B, /* 9006 */
+  IC_EVEX_L_W_XD_B, /* 9007 */
+  IC_EVEX_L_OPSIZE_B, /* 9008 */
+  IC_EVEX_L_OPSIZE_B, /* 9009 */
+  IC_EVEX_L_OPSIZE_B, /* 9010 */
+  IC_EVEX_L_OPSIZE_B, /* 9011 */
+  IC_EVEX_L_OPSIZE_B, /* 9012 */
+  IC_EVEX_L_OPSIZE_B, /* 9013 */
+  IC_EVEX_L_OPSIZE_B, /* 9014 */
+  IC_EVEX_L_OPSIZE_B, /* 9015 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9016 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9017 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9018 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9019 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9020 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9021 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9022 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9023 */
+  IC_EVEX_L_B, /* 9024 */
+  IC_EVEX_L_B, /* 9025 */
+  IC_EVEX_L_XS_B, /* 9026 */
+  IC_EVEX_L_XS_B, /* 9027 */
+  IC_EVEX_L_XD_B, /* 9028 */
+  IC_EVEX_L_XD_B, /* 9029 */
+  IC_EVEX_L_XD_B, /* 9030 */
+  IC_EVEX_L_XD_B, /* 9031 */
+  IC_EVEX_L_W_B, /* 9032 */
+  IC_EVEX_L_W_B, /* 9033 */
+  IC_EVEX_L_W_XS_B, /* 9034 */
+  IC_EVEX_L_W_XS_B, /* 9035 */
+  IC_EVEX_L_W_XD_B, /* 9036 */
+  IC_EVEX_L_W_XD_B, /* 9037 */
+  IC_EVEX_L_W_XD_B, /* 9038 */
+  IC_EVEX_L_W_XD_B, /* 9039 */
+  IC_EVEX_L_OPSIZE_B, /* 9040 */
+  IC_EVEX_L_OPSIZE_B, /* 9041 */
+  IC_EVEX_L_OPSIZE_B, /* 9042 */
+  IC_EVEX_L_OPSIZE_B, /* 9043 */
+  IC_EVEX_L_OPSIZE_B, /* 9044 */
+  IC_EVEX_L_OPSIZE_B, /* 9045 */
+  IC_EVEX_L_OPSIZE_B, /* 9046 */
+  IC_EVEX_L_OPSIZE_B, /* 9047 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9048 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9049 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9050 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9051 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9052 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9053 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9054 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9055 */
+  IC_EVEX_L_B, /* 9056 */
+  IC_EVEX_L_B, /* 9057 */
+  IC_EVEX_L_XS_B, /* 9058 */
+  IC_EVEX_L_XS_B, /* 9059 */
+  IC_EVEX_L_XD_B, /* 9060 */
+  IC_EVEX_L_XD_B, /* 9061 */
+  IC_EVEX_L_XD_B, /* 9062 */
+  IC_EVEX_L_XD_B, /* 9063 */
+  IC_EVEX_L_W_B, /* 9064 */
+  IC_EVEX_L_W_B, /* 9065 */
+  IC_EVEX_L_W_XS_B, /* 9066 */
+  IC_EVEX_L_W_XS_B, /* 9067 */
+  IC_EVEX_L_W_XD_B, /* 9068 */
+  IC_EVEX_L_W_XD_B, /* 9069 */
+  IC_EVEX_L_W_XD_B, /* 9070 */
+  IC_EVEX_L_W_XD_B, /* 9071 */
+  IC_EVEX_L_OPSIZE_B, /* 9072 */
+  IC_EVEX_L_OPSIZE_B, /* 9073 */
+  IC_EVEX_L_OPSIZE_B, /* 9074 */
+  IC_EVEX_L_OPSIZE_B, /* 9075 */
+  IC_EVEX_L_OPSIZE_B, /* 9076 */
+  IC_EVEX_L_OPSIZE_B, /* 9077 */
+  IC_EVEX_L_OPSIZE_B, /* 9078 */
+  IC_EVEX_L_OPSIZE_B, /* 9079 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9080 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9081 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9082 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9083 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9084 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9085 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9086 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9087 */
+  IC_EVEX_L_B, /* 9088 */
+  IC_EVEX_L_B, /* 9089 */
+  IC_EVEX_L_XS_B, /* 9090 */
+  IC_EVEX_L_XS_B, /* 9091 */
+  IC_EVEX_L_XD_B, /* 9092 */
+  IC_EVEX_L_XD_B, /* 9093 */
+  IC_EVEX_L_XD_B, /* 9094 */
+  IC_EVEX_L_XD_B, /* 9095 */
+  IC_EVEX_L_W_B, /* 9096 */
+  IC_EVEX_L_W_B, /* 9097 */
+  IC_EVEX_L_W_XS_B, /* 9098 */
+  IC_EVEX_L_W_XS_B, /* 9099 */
+  IC_EVEX_L_W_XD_B, /* 9100 */
+  IC_EVEX_L_W_XD_B, /* 9101 */
+  IC_EVEX_L_W_XD_B, /* 9102 */
+  IC_EVEX_L_W_XD_B, /* 9103 */
+  IC_EVEX_L_OPSIZE_B, /* 9104 */
+  IC_EVEX_L_OPSIZE_B, /* 9105 */
+  IC_EVEX_L_OPSIZE_B, /* 9106 */
+  IC_EVEX_L_OPSIZE_B, /* 9107 */
+  IC_EVEX_L_OPSIZE_B, /* 9108 */
+  IC_EVEX_L_OPSIZE_B, /* 9109 */
+  IC_EVEX_L_OPSIZE_B, /* 9110 */
+  IC_EVEX_L_OPSIZE_B, /* 9111 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9112 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9113 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9114 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9115 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9116 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9117 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9118 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9119 */
+  IC_EVEX_L_B, /* 9120 */
+  IC_EVEX_L_B, /* 9121 */
+  IC_EVEX_L_XS_B, /* 9122 */
+  IC_EVEX_L_XS_B, /* 9123 */
+  IC_EVEX_L_XD_B, /* 9124 */
+  IC_EVEX_L_XD_B, /* 9125 */
+  IC_EVEX_L_XD_B, /* 9126 */
+  IC_EVEX_L_XD_B, /* 9127 */
+  IC_EVEX_L_W_B, /* 9128 */
+  IC_EVEX_L_W_B, /* 9129 */
+  IC_EVEX_L_W_XS_B, /* 9130 */
+  IC_EVEX_L_W_XS_B, /* 9131 */
+  IC_EVEX_L_W_XD_B, /* 9132 */
+  IC_EVEX_L_W_XD_B, /* 9133 */
+  IC_EVEX_L_W_XD_B, /* 9134 */
+  IC_EVEX_L_W_XD_B, /* 9135 */
+  IC_EVEX_L_OPSIZE_B, /* 9136 */
+  IC_EVEX_L_OPSIZE_B, /* 9137 */
+  IC_EVEX_L_OPSIZE_B, /* 9138 */
+  IC_EVEX_L_OPSIZE_B, /* 9139 */
+  IC_EVEX_L_OPSIZE_B, /* 9140 */
+  IC_EVEX_L_OPSIZE_B, /* 9141 */
+  IC_EVEX_L_OPSIZE_B, /* 9142 */
+  IC_EVEX_L_OPSIZE_B, /* 9143 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9144 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9145 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9146 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9147 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9148 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9149 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9150 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9151 */
+  IC_EVEX_L_B, /* 9152 */
+  IC_EVEX_L_B, /* 9153 */
+  IC_EVEX_L_XS_B, /* 9154 */
+  IC_EVEX_L_XS_B, /* 9155 */
+  IC_EVEX_L_XD_B, /* 9156 */
+  IC_EVEX_L_XD_B, /* 9157 */
+  IC_EVEX_L_XD_B, /* 9158 */
+  IC_EVEX_L_XD_B, /* 9159 */
+  IC_EVEX_L_W_B, /* 9160 */
+  IC_EVEX_L_W_B, /* 9161 */
+  IC_EVEX_L_W_XS_B, /* 9162 */
+  IC_EVEX_L_W_XS_B, /* 9163 */
+  IC_EVEX_L_W_XD_B, /* 9164 */
+  IC_EVEX_L_W_XD_B, /* 9165 */
+  IC_EVEX_L_W_XD_B, /* 9166 */
+  IC_EVEX_L_W_XD_B, /* 9167 */
+  IC_EVEX_L_OPSIZE_B, /* 9168 */
+  IC_EVEX_L_OPSIZE_B, /* 9169 */
+  IC_EVEX_L_OPSIZE_B, /* 9170 */
+  IC_EVEX_L_OPSIZE_B, /* 9171 */
+  IC_EVEX_L_OPSIZE_B, /* 9172 */
+  IC_EVEX_L_OPSIZE_B, /* 9173 */
+  IC_EVEX_L_OPSIZE_B, /* 9174 */
+  IC_EVEX_L_OPSIZE_B, /* 9175 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9176 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9177 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9178 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9179 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9180 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9181 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9182 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9183 */
+  IC_EVEX_L_B, /* 9184 */
+  IC_EVEX_L_B, /* 9185 */
+  IC_EVEX_L_XS_B, /* 9186 */
+  IC_EVEX_L_XS_B, /* 9187 */
+  IC_EVEX_L_XD_B, /* 9188 */
+  IC_EVEX_L_XD_B, /* 9189 */
+  IC_EVEX_L_XD_B, /* 9190 */
+  IC_EVEX_L_XD_B, /* 9191 */
+  IC_EVEX_L_W_B, /* 9192 */
+  IC_EVEX_L_W_B, /* 9193 */
+  IC_EVEX_L_W_XS_B, /* 9194 */
+  IC_EVEX_L_W_XS_B, /* 9195 */
+  IC_EVEX_L_W_XD_B, /* 9196 */
+  IC_EVEX_L_W_XD_B, /* 9197 */
+  IC_EVEX_L_W_XD_B, /* 9198 */
+  IC_EVEX_L_W_XD_B, /* 9199 */
+  IC_EVEX_L_OPSIZE_B, /* 9200 */
+  IC_EVEX_L_OPSIZE_B, /* 9201 */
+  IC_EVEX_L_OPSIZE_B, /* 9202 */
+  IC_EVEX_L_OPSIZE_B, /* 9203 */
+  IC_EVEX_L_OPSIZE_B, /* 9204 */
+  IC_EVEX_L_OPSIZE_B, /* 9205 */
+  IC_EVEX_L_OPSIZE_B, /* 9206 */
+  IC_EVEX_L_OPSIZE_B, /* 9207 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9208 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9209 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9210 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9211 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9212 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9213 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9214 */
+  IC_EVEX_L_W_OPSIZE_B, /* 9215 */
+  IC, /* 9216 */
+  IC_64BIT, /* 9217 */
+  IC_XS, /* 9218 */
+  IC_64BIT_XS, /* 9219 */
+  IC_XD, /* 9220 */
+  IC_64BIT_XD, /* 9221 */
+  IC_XS, /* 9222 */
+  IC_64BIT_XS, /* 9223 */
+  IC, /* 9224 */
+  IC_64BIT_REXW, /* 9225 */
+  IC_XS, /* 9226 */
+  IC_64BIT_REXW_XS, /* 9227 */
+  IC_XD, /* 9228 */
+  IC_64BIT_REXW_XD, /* 9229 */
+  IC_XS, /* 9230 */
+  IC_64BIT_REXW_XS, /* 9231 */
+  IC_OPSIZE, /* 9232 */
+  IC_64BIT_OPSIZE, /* 9233 */
+  IC_XS_OPSIZE, /* 9234 */
+  IC_64BIT_XS_OPSIZE, /* 9235 */
+  IC_XD_OPSIZE, /* 9236 */
+  IC_64BIT_XD_OPSIZE, /* 9237 */
+  IC_XS_OPSIZE, /* 9238 */
+  IC_64BIT_XD_OPSIZE, /* 9239 */
+  IC_OPSIZE, /* 9240 */
+  IC_64BIT_REXW_OPSIZE, /* 9241 */
+  IC_XS_OPSIZE, /* 9242 */
+  IC_64BIT_REXW_XS, /* 9243 */
+  IC_XD_OPSIZE, /* 9244 */
+  IC_64BIT_REXW_XD, /* 9245 */
+  IC_XS_OPSIZE, /* 9246 */
+  IC_64BIT_REXW_XS, /* 9247 */
+  IC_ADSIZE, /* 9248 */
+  IC_64BIT_ADSIZE, /* 9249 */
+  IC_XS, /* 9250 */
+  IC_64BIT_XS, /* 9251 */
+  IC_XD, /* 9252 */
+  IC_64BIT_XD, /* 9253 */
+  IC_XS, /* 9254 */
+  IC_64BIT_XS, /* 9255 */
+  IC_ADSIZE, /* 9256 */
+  IC_64BIT_ADSIZE, /* 9257 */
+  IC_XS, /* 9258 */
+  IC_64BIT_REXW_XS, /* 9259 */
+  IC_XD, /* 9260 */
+  IC_64BIT_REXW_XD, /* 9261 */
+  IC_XS, /* 9262 */
+  IC_64BIT_REXW_XS, /* 9263 */
+  IC_OPSIZE, /* 9264 */
+  IC_64BIT_OPSIZE, /* 9265 */
+  IC_XS_OPSIZE, /* 9266 */
+  IC_64BIT_XS_OPSIZE, /* 9267 */
+  IC_XD_OPSIZE, /* 9268 */
+  IC_64BIT_XD_OPSIZE, /* 9269 */
+  IC_XS_OPSIZE, /* 9270 */
+  IC_64BIT_XD_OPSIZE, /* 9271 */
+  IC_OPSIZE, /* 9272 */
+  IC_64BIT_REXW_OPSIZE, /* 9273 */
+  IC_XS_OPSIZE, /* 9274 */
+  IC_64BIT_REXW_XS, /* 9275 */
+  IC_XD_OPSIZE, /* 9276 */
+  IC_64BIT_REXW_XD, /* 9277 */
+  IC_XS_OPSIZE, /* 9278 */
+  IC_64BIT_REXW_XS, /* 9279 */
+  IC_VEX, /* 9280 */
+  IC_VEX, /* 9281 */
+  IC_VEX_XS, /* 9282 */
+  IC_VEX_XS, /* 9283 */
+  IC_VEX_XD, /* 9284 */
+  IC_VEX_XD, /* 9285 */
+  IC_VEX_XD, /* 9286 */
+  IC_VEX_XD, /* 9287 */
+  IC_VEX_W, /* 9288 */
+  IC_VEX_W, /* 9289 */
+  IC_VEX_W_XS, /* 9290 */
+  IC_VEX_W_XS, /* 9291 */
+  IC_VEX_W_XD, /* 9292 */
+  IC_VEX_W_XD, /* 9293 */
+  IC_VEX_W_XD, /* 9294 */
+  IC_VEX_W_XD, /* 9295 */
+  IC_VEX_OPSIZE, /* 9296 */
+  IC_VEX_OPSIZE, /* 9297 */
+  IC_VEX_OPSIZE, /* 9298 */
+  IC_VEX_OPSIZE, /* 9299 */
+  IC_VEX_OPSIZE, /* 9300 */
+  IC_VEX_OPSIZE, /* 9301 */
+  IC_VEX_OPSIZE, /* 9302 */
+  IC_VEX_OPSIZE, /* 9303 */
+  IC_VEX_W_OPSIZE, /* 9304 */
+  IC_VEX_W_OPSIZE, /* 9305 */
+  IC_VEX_W_OPSIZE, /* 9306 */
+  IC_VEX_W_OPSIZE, /* 9307 */
+  IC_VEX_W_OPSIZE, /* 9308 */
+  IC_VEX_W_OPSIZE, /* 9309 */
+  IC_VEX_W_OPSIZE, /* 9310 */
+  IC_VEX_W_OPSIZE, /* 9311 */
+  IC_VEX, /* 9312 */
+  IC_VEX, /* 9313 */
+  IC_VEX_XS, /* 9314 */
+  IC_VEX_XS, /* 9315 */
+  IC_VEX_XD, /* 9316 */
+  IC_VEX_XD, /* 9317 */
+  IC_VEX_XD, /* 9318 */
+  IC_VEX_XD, /* 9319 */
+  IC_VEX_W, /* 9320 */
+  IC_VEX_W, /* 9321 */
+  IC_VEX_W_XS, /* 9322 */
+  IC_VEX_W_XS, /* 9323 */
+  IC_VEX_W_XD, /* 9324 */
+  IC_VEX_W_XD, /* 9325 */
+  IC_VEX_W_XD, /* 9326 */
+  IC_VEX_W_XD, /* 9327 */
+  IC_VEX_OPSIZE, /* 9328 */
+  IC_VEX_OPSIZE, /* 9329 */
+  IC_VEX_OPSIZE, /* 9330 */
+  IC_VEX_OPSIZE, /* 9331 */
+  IC_VEX_OPSIZE, /* 9332 */
+  IC_VEX_OPSIZE, /* 9333 */
+  IC_VEX_OPSIZE, /* 9334 */
+  IC_VEX_OPSIZE, /* 9335 */
+  IC_VEX_W_OPSIZE, /* 9336 */
+  IC_VEX_W_OPSIZE, /* 9337 */
+  IC_VEX_W_OPSIZE, /* 9338 */
+  IC_VEX_W_OPSIZE, /* 9339 */
+  IC_VEX_W_OPSIZE, /* 9340 */
+  IC_VEX_W_OPSIZE, /* 9341 */
+  IC_VEX_W_OPSIZE, /* 9342 */
+  IC_VEX_W_OPSIZE, /* 9343 */
+  IC_VEX_L, /* 9344 */
+  IC_VEX_L, /* 9345 */
+  IC_VEX_L_XS, /* 9346 */
+  IC_VEX_L_XS, /* 9347 */
+  IC_VEX_L_XD, /* 9348 */
+  IC_VEX_L_XD, /* 9349 */
+  IC_VEX_L_XD, /* 9350 */
+  IC_VEX_L_XD, /* 9351 */
+  IC_VEX_L_W, /* 9352 */
+  IC_VEX_L_W, /* 9353 */
+  IC_VEX_L_W_XS, /* 9354 */
+  IC_VEX_L_W_XS, /* 9355 */
+  IC_VEX_L_W_XD, /* 9356 */
+  IC_VEX_L_W_XD, /* 9357 */
+  IC_VEX_L_W_XD, /* 9358 */
+  IC_VEX_L_W_XD, /* 9359 */
+  IC_VEX_L_OPSIZE, /* 9360 */
+  IC_VEX_L_OPSIZE, /* 9361 */
+  IC_VEX_L_OPSIZE, /* 9362 */
+  IC_VEX_L_OPSIZE, /* 9363 */
+  IC_VEX_L_OPSIZE, /* 9364 */
+  IC_VEX_L_OPSIZE, /* 9365 */
+  IC_VEX_L_OPSIZE, /* 9366 */
+  IC_VEX_L_OPSIZE, /* 9367 */
+  IC_VEX_L_W_OPSIZE, /* 9368 */
+  IC_VEX_L_W_OPSIZE, /* 9369 */
+  IC_VEX_L_W_OPSIZE, /* 9370 */
+  IC_VEX_L_W_OPSIZE, /* 9371 */
+  IC_VEX_L_W_OPSIZE, /* 9372 */
+  IC_VEX_L_W_OPSIZE, /* 9373 */
+  IC_VEX_L_W_OPSIZE, /* 9374 */
+  IC_VEX_L_W_OPSIZE, /* 9375 */
+  IC_VEX_L, /* 9376 */
+  IC_VEX_L, /* 9377 */
+  IC_VEX_L_XS, /* 9378 */
+  IC_VEX_L_XS, /* 9379 */
+  IC_VEX_L_XD, /* 9380 */
+  IC_VEX_L_XD, /* 9381 */
+  IC_VEX_L_XD, /* 9382 */
+  IC_VEX_L_XD, /* 9383 */
+  IC_VEX_L_W, /* 9384 */
+  IC_VEX_L_W, /* 9385 */
+  IC_VEX_L_W_XS, /* 9386 */
+  IC_VEX_L_W_XS, /* 9387 */
+  IC_VEX_L_W_XD, /* 9388 */
+  IC_VEX_L_W_XD, /* 9389 */
+  IC_VEX_L_W_XD, /* 9390 */
+  IC_VEX_L_W_XD, /* 9391 */
+  IC_VEX_L_OPSIZE, /* 9392 */
+  IC_VEX_L_OPSIZE, /* 9393 */
+  IC_VEX_L_OPSIZE, /* 9394 */
+  IC_VEX_L_OPSIZE, /* 9395 */
+  IC_VEX_L_OPSIZE, /* 9396 */
+  IC_VEX_L_OPSIZE, /* 9397 */
+  IC_VEX_L_OPSIZE, /* 9398 */
+  IC_VEX_L_OPSIZE, /* 9399 */
+  IC_VEX_L_W_OPSIZE, /* 9400 */
+  IC_VEX_L_W_OPSIZE, /* 9401 */
+  IC_VEX_L_W_OPSIZE, /* 9402 */
+  IC_VEX_L_W_OPSIZE, /* 9403 */
+  IC_VEX_L_W_OPSIZE, /* 9404 */
+  IC_VEX_L_W_OPSIZE, /* 9405 */
+  IC_VEX_L_W_OPSIZE, /* 9406 */
+  IC_VEX_L_W_OPSIZE, /* 9407 */
+  IC_VEX_L, /* 9408 */
+  IC_VEX_L, /* 9409 */
+  IC_VEX_L_XS, /* 9410 */
+  IC_VEX_L_XS, /* 9411 */
+  IC_VEX_L_XD, /* 9412 */
+  IC_VEX_L_XD, /* 9413 */
+  IC_VEX_L_XD, /* 9414 */
+  IC_VEX_L_XD, /* 9415 */
+  IC_VEX_L_W, /* 9416 */
+  IC_VEX_L_W, /* 9417 */
+  IC_VEX_L_W_XS, /* 9418 */
+  IC_VEX_L_W_XS, /* 9419 */
+  IC_VEX_L_W_XD, /* 9420 */
+  IC_VEX_L_W_XD, /* 9421 */
+  IC_VEX_L_W_XD, /* 9422 */
+  IC_VEX_L_W_XD, /* 9423 */
+  IC_VEX_L_OPSIZE, /* 9424 */
+  IC_VEX_L_OPSIZE, /* 9425 */
+  IC_VEX_L_OPSIZE, /* 9426 */
+  IC_VEX_L_OPSIZE, /* 9427 */
+  IC_VEX_L_OPSIZE, /* 9428 */
+  IC_VEX_L_OPSIZE, /* 9429 */
+  IC_VEX_L_OPSIZE, /* 9430 */
+  IC_VEX_L_OPSIZE, /* 9431 */
+  IC_VEX_L_W_OPSIZE, /* 9432 */
+  IC_VEX_L_W_OPSIZE, /* 9433 */
+  IC_VEX_L_W_OPSIZE, /* 9434 */
+  IC_VEX_L_W_OPSIZE, /* 9435 */
+  IC_VEX_L_W_OPSIZE, /* 9436 */
+  IC_VEX_L_W_OPSIZE, /* 9437 */
+  IC_VEX_L_W_OPSIZE, /* 9438 */
+  IC_VEX_L_W_OPSIZE, /* 9439 */
+  IC_VEX_L, /* 9440 */
+  IC_VEX_L, /* 9441 */
+  IC_VEX_L_XS, /* 9442 */
+  IC_VEX_L_XS, /* 9443 */
+  IC_VEX_L_XD, /* 9444 */
+  IC_VEX_L_XD, /* 9445 */
+  IC_VEX_L_XD, /* 9446 */
+  IC_VEX_L_XD, /* 9447 */
+  IC_VEX_L_W, /* 9448 */
+  IC_VEX_L_W, /* 9449 */
+  IC_VEX_L_W_XS, /* 9450 */
+  IC_VEX_L_W_XS, /* 9451 */
+  IC_VEX_L_W_XD, /* 9452 */
+  IC_VEX_L_W_XD, /* 9453 */
+  IC_VEX_L_W_XD, /* 9454 */
+  IC_VEX_L_W_XD, /* 9455 */
+  IC_VEX_L_OPSIZE, /* 9456 */
+  IC_VEX_L_OPSIZE, /* 9457 */
+  IC_VEX_L_OPSIZE, /* 9458 */
+  IC_VEX_L_OPSIZE, /* 9459 */
+  IC_VEX_L_OPSIZE, /* 9460 */
+  IC_VEX_L_OPSIZE, /* 9461 */
+  IC_VEX_L_OPSIZE, /* 9462 */
+  IC_VEX_L_OPSIZE, /* 9463 */
+  IC_VEX_L_W_OPSIZE, /* 9464 */
+  IC_VEX_L_W_OPSIZE, /* 9465 */
+  IC_VEX_L_W_OPSIZE, /* 9466 */
+  IC_VEX_L_W_OPSIZE, /* 9467 */
+  IC_VEX_L_W_OPSIZE, /* 9468 */
+  IC_VEX_L_W_OPSIZE, /* 9469 */
+  IC_VEX_L_W_OPSIZE, /* 9470 */
+  IC_VEX_L_W_OPSIZE, /* 9471 */
+  IC_EVEX_L2_B, /* 9472 */
+  IC_EVEX_L2_B, /* 9473 */
+  IC_EVEX_L2_XS_B, /* 9474 */
+  IC_EVEX_L2_XS_B, /* 9475 */
+  IC_EVEX_L2_XD_B, /* 9476 */
+  IC_EVEX_L2_XD_B, /* 9477 */
+  IC_EVEX_L2_XD_B, /* 9478 */
+  IC_EVEX_L2_XD_B, /* 9479 */
+  IC_EVEX_L2_W_B, /* 9480 */
+  IC_EVEX_L2_W_B, /* 9481 */
+  IC_EVEX_L2_W_XS_B, /* 9482 */
+  IC_EVEX_L2_W_XS_B, /* 9483 */
+  IC_EVEX_L2_W_XD_B, /* 9484 */
+  IC_EVEX_L2_W_XD_B, /* 9485 */
+  IC_EVEX_L2_W_XD_B, /* 9486 */
+  IC_EVEX_L2_W_XD_B, /* 9487 */
+  IC_EVEX_L2_OPSIZE_B, /* 9488 */
+  IC_EVEX_L2_OPSIZE_B, /* 9489 */
+  IC_EVEX_L2_OPSIZE_B, /* 9490 */
+  IC_EVEX_L2_OPSIZE_B, /* 9491 */
+  IC_EVEX_L2_OPSIZE_B, /* 9492 */
+  IC_EVEX_L2_OPSIZE_B, /* 9493 */
+  IC_EVEX_L2_OPSIZE_B, /* 9494 */
+  IC_EVEX_L2_OPSIZE_B, /* 9495 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9496 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9497 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9498 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9499 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9500 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9501 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9502 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9503 */
+  IC_EVEX_L2_B, /* 9504 */
+  IC_EVEX_L2_B, /* 9505 */
+  IC_EVEX_L2_XS_B, /* 9506 */
+  IC_EVEX_L2_XS_B, /* 9507 */
+  IC_EVEX_L2_XD_B, /* 9508 */
+  IC_EVEX_L2_XD_B, /* 9509 */
+  IC_EVEX_L2_XD_B, /* 9510 */
+  IC_EVEX_L2_XD_B, /* 9511 */
+  IC_EVEX_L2_W_B, /* 9512 */
+  IC_EVEX_L2_W_B, /* 9513 */
+  IC_EVEX_L2_W_XS_B, /* 9514 */
+  IC_EVEX_L2_W_XS_B, /* 9515 */
+  IC_EVEX_L2_W_XD_B, /* 9516 */
+  IC_EVEX_L2_W_XD_B, /* 9517 */
+  IC_EVEX_L2_W_XD_B, /* 9518 */
+  IC_EVEX_L2_W_XD_B, /* 9519 */
+  IC_EVEX_L2_OPSIZE_B, /* 9520 */
+  IC_EVEX_L2_OPSIZE_B, /* 9521 */
+  IC_EVEX_L2_OPSIZE_B, /* 9522 */
+  IC_EVEX_L2_OPSIZE_B, /* 9523 */
+  IC_EVEX_L2_OPSIZE_B, /* 9524 */
+  IC_EVEX_L2_OPSIZE_B, /* 9525 */
+  IC_EVEX_L2_OPSIZE_B, /* 9526 */
+  IC_EVEX_L2_OPSIZE_B, /* 9527 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9528 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9529 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9530 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9531 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9532 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9533 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9534 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9535 */
+  IC_EVEX_L2_B, /* 9536 */
+  IC_EVEX_L2_B, /* 9537 */
+  IC_EVEX_L2_XS_B, /* 9538 */
+  IC_EVEX_L2_XS_B, /* 9539 */
+  IC_EVEX_L2_XD_B, /* 9540 */
+  IC_EVEX_L2_XD_B, /* 9541 */
+  IC_EVEX_L2_XD_B, /* 9542 */
+  IC_EVEX_L2_XD_B, /* 9543 */
+  IC_EVEX_L2_W_B, /* 9544 */
+  IC_EVEX_L2_W_B, /* 9545 */
+  IC_EVEX_L2_W_XS_B, /* 9546 */
+  IC_EVEX_L2_W_XS_B, /* 9547 */
+  IC_EVEX_L2_W_XD_B, /* 9548 */
+  IC_EVEX_L2_W_XD_B, /* 9549 */
+  IC_EVEX_L2_W_XD_B, /* 9550 */
+  IC_EVEX_L2_W_XD_B, /* 9551 */
+  IC_EVEX_L2_OPSIZE_B, /* 9552 */
+  IC_EVEX_L2_OPSIZE_B, /* 9553 */
+  IC_EVEX_L2_OPSIZE_B, /* 9554 */
+  IC_EVEX_L2_OPSIZE_B, /* 9555 */
+  IC_EVEX_L2_OPSIZE_B, /* 9556 */
+  IC_EVEX_L2_OPSIZE_B, /* 9557 */
+  IC_EVEX_L2_OPSIZE_B, /* 9558 */
+  IC_EVEX_L2_OPSIZE_B, /* 9559 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9560 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9561 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9562 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9563 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9564 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9565 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9566 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9567 */
+  IC_EVEX_L2_B, /* 9568 */
+  IC_EVEX_L2_B, /* 9569 */
+  IC_EVEX_L2_XS_B, /* 9570 */
+  IC_EVEX_L2_XS_B, /* 9571 */
+  IC_EVEX_L2_XD_B, /* 9572 */
+  IC_EVEX_L2_XD_B, /* 9573 */
+  IC_EVEX_L2_XD_B, /* 9574 */
+  IC_EVEX_L2_XD_B, /* 9575 */
+  IC_EVEX_L2_W_B, /* 9576 */
+  IC_EVEX_L2_W_B, /* 9577 */
+  IC_EVEX_L2_W_XS_B, /* 9578 */
+  IC_EVEX_L2_W_XS_B, /* 9579 */
+  IC_EVEX_L2_W_XD_B, /* 9580 */
+  IC_EVEX_L2_W_XD_B, /* 9581 */
+  IC_EVEX_L2_W_XD_B, /* 9582 */
+  IC_EVEX_L2_W_XD_B, /* 9583 */
+  IC_EVEX_L2_OPSIZE_B, /* 9584 */
+  IC_EVEX_L2_OPSIZE_B, /* 9585 */
+  IC_EVEX_L2_OPSIZE_B, /* 9586 */
+  IC_EVEX_L2_OPSIZE_B, /* 9587 */
+  IC_EVEX_L2_OPSIZE_B, /* 9588 */
+  IC_EVEX_L2_OPSIZE_B, /* 9589 */
+  IC_EVEX_L2_OPSIZE_B, /* 9590 */
+  IC_EVEX_L2_OPSIZE_B, /* 9591 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9592 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9593 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9594 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9595 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9596 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9597 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9598 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9599 */
+  IC_EVEX_L2_B, /* 9600 */
+  IC_EVEX_L2_B, /* 9601 */
+  IC_EVEX_L2_XS_B, /* 9602 */
+  IC_EVEX_L2_XS_B, /* 9603 */
+  IC_EVEX_L2_XD_B, /* 9604 */
+  IC_EVEX_L2_XD_B, /* 9605 */
+  IC_EVEX_L2_XD_B, /* 9606 */
+  IC_EVEX_L2_XD_B, /* 9607 */
+  IC_EVEX_L2_W_B, /* 9608 */
+  IC_EVEX_L2_W_B, /* 9609 */
+  IC_EVEX_L2_W_XS_B, /* 9610 */
+  IC_EVEX_L2_W_XS_B, /* 9611 */
+  IC_EVEX_L2_W_XD_B, /* 9612 */
+  IC_EVEX_L2_W_XD_B, /* 9613 */
+  IC_EVEX_L2_W_XD_B, /* 9614 */
+  IC_EVEX_L2_W_XD_B, /* 9615 */
+  IC_EVEX_L2_OPSIZE_B, /* 9616 */
+  IC_EVEX_L2_OPSIZE_B, /* 9617 */
+  IC_EVEX_L2_OPSIZE_B, /* 9618 */
+  IC_EVEX_L2_OPSIZE_B, /* 9619 */
+  IC_EVEX_L2_OPSIZE_B, /* 9620 */
+  IC_EVEX_L2_OPSIZE_B, /* 9621 */
+  IC_EVEX_L2_OPSIZE_B, /* 9622 */
+  IC_EVEX_L2_OPSIZE_B, /* 9623 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9624 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9625 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9626 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9627 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9628 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9629 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9630 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9631 */
+  IC_EVEX_L2_B, /* 9632 */
+  IC_EVEX_L2_B, /* 9633 */
+  IC_EVEX_L2_XS_B, /* 9634 */
+  IC_EVEX_L2_XS_B, /* 9635 */
+  IC_EVEX_L2_XD_B, /* 9636 */
+  IC_EVEX_L2_XD_B, /* 9637 */
+  IC_EVEX_L2_XD_B, /* 9638 */
+  IC_EVEX_L2_XD_B, /* 9639 */
+  IC_EVEX_L2_W_B, /* 9640 */
+  IC_EVEX_L2_W_B, /* 9641 */
+  IC_EVEX_L2_W_XS_B, /* 9642 */
+  IC_EVEX_L2_W_XS_B, /* 9643 */
+  IC_EVEX_L2_W_XD_B, /* 9644 */
+  IC_EVEX_L2_W_XD_B, /* 9645 */
+  IC_EVEX_L2_W_XD_B, /* 9646 */
+  IC_EVEX_L2_W_XD_B, /* 9647 */
+  IC_EVEX_L2_OPSIZE_B, /* 9648 */
+  IC_EVEX_L2_OPSIZE_B, /* 9649 */
+  IC_EVEX_L2_OPSIZE_B, /* 9650 */
+  IC_EVEX_L2_OPSIZE_B, /* 9651 */
+  IC_EVEX_L2_OPSIZE_B, /* 9652 */
+  IC_EVEX_L2_OPSIZE_B, /* 9653 */
+  IC_EVEX_L2_OPSIZE_B, /* 9654 */
+  IC_EVEX_L2_OPSIZE_B, /* 9655 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9656 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9657 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9658 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9659 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9660 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9661 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9662 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9663 */
+  IC_EVEX_L2_B, /* 9664 */
+  IC_EVEX_L2_B, /* 9665 */
+  IC_EVEX_L2_XS_B, /* 9666 */
+  IC_EVEX_L2_XS_B, /* 9667 */
+  IC_EVEX_L2_XD_B, /* 9668 */
+  IC_EVEX_L2_XD_B, /* 9669 */
+  IC_EVEX_L2_XD_B, /* 9670 */
+  IC_EVEX_L2_XD_B, /* 9671 */
+  IC_EVEX_L2_W_B, /* 9672 */
+  IC_EVEX_L2_W_B, /* 9673 */
+  IC_EVEX_L2_W_XS_B, /* 9674 */
+  IC_EVEX_L2_W_XS_B, /* 9675 */
+  IC_EVEX_L2_W_XD_B, /* 9676 */
+  IC_EVEX_L2_W_XD_B, /* 9677 */
+  IC_EVEX_L2_W_XD_B, /* 9678 */
+  IC_EVEX_L2_W_XD_B, /* 9679 */
+  IC_EVEX_L2_OPSIZE_B, /* 9680 */
+  IC_EVEX_L2_OPSIZE_B, /* 9681 */
+  IC_EVEX_L2_OPSIZE_B, /* 9682 */
+  IC_EVEX_L2_OPSIZE_B, /* 9683 */
+  IC_EVEX_L2_OPSIZE_B, /* 9684 */
+  IC_EVEX_L2_OPSIZE_B, /* 9685 */
+  IC_EVEX_L2_OPSIZE_B, /* 9686 */
+  IC_EVEX_L2_OPSIZE_B, /* 9687 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9688 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9689 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9690 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9691 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9692 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9693 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9694 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9695 */
+  IC_EVEX_L2_B, /* 9696 */
+  IC_EVEX_L2_B, /* 9697 */
+  IC_EVEX_L2_XS_B, /* 9698 */
+  IC_EVEX_L2_XS_B, /* 9699 */
+  IC_EVEX_L2_XD_B, /* 9700 */
+  IC_EVEX_L2_XD_B, /* 9701 */
+  IC_EVEX_L2_XD_B, /* 9702 */
+  IC_EVEX_L2_XD_B, /* 9703 */
+  IC_EVEX_L2_W_B, /* 9704 */
+  IC_EVEX_L2_W_B, /* 9705 */
+  IC_EVEX_L2_W_XS_B, /* 9706 */
+  IC_EVEX_L2_W_XS_B, /* 9707 */
+  IC_EVEX_L2_W_XD_B, /* 9708 */
+  IC_EVEX_L2_W_XD_B, /* 9709 */
+  IC_EVEX_L2_W_XD_B, /* 9710 */
+  IC_EVEX_L2_W_XD_B, /* 9711 */
+  IC_EVEX_L2_OPSIZE_B, /* 9712 */
+  IC_EVEX_L2_OPSIZE_B, /* 9713 */
+  IC_EVEX_L2_OPSIZE_B, /* 9714 */
+  IC_EVEX_L2_OPSIZE_B, /* 9715 */
+  IC_EVEX_L2_OPSIZE_B, /* 9716 */
+  IC_EVEX_L2_OPSIZE_B, /* 9717 */
+  IC_EVEX_L2_OPSIZE_B, /* 9718 */
+  IC_EVEX_L2_OPSIZE_B, /* 9719 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9720 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9721 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9722 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9723 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9724 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9725 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9726 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 9727 */
+  IC, /* 9728 */
+  IC_64BIT, /* 9729 */
+  IC_XS, /* 9730 */
+  IC_64BIT_XS, /* 9731 */
+  IC_XD, /* 9732 */
+  IC_64BIT_XD, /* 9733 */
+  IC_XS, /* 9734 */
+  IC_64BIT_XS, /* 9735 */
+  IC, /* 9736 */
+  IC_64BIT_REXW, /* 9737 */
+  IC_XS, /* 9738 */
+  IC_64BIT_REXW_XS, /* 9739 */
+  IC_XD, /* 9740 */
+  IC_64BIT_REXW_XD, /* 9741 */
+  IC_XS, /* 9742 */
+  IC_64BIT_REXW_XS, /* 9743 */
+  IC_OPSIZE, /* 9744 */
+  IC_64BIT_OPSIZE, /* 9745 */
+  IC_XS_OPSIZE, /* 9746 */
+  IC_64BIT_XS_OPSIZE, /* 9747 */
+  IC_XD_OPSIZE, /* 9748 */
+  IC_64BIT_XD_OPSIZE, /* 9749 */
+  IC_XS_OPSIZE, /* 9750 */
+  IC_64BIT_XD_OPSIZE, /* 9751 */
+  IC_OPSIZE, /* 9752 */
+  IC_64BIT_REXW_OPSIZE, /* 9753 */
+  IC_XS_OPSIZE, /* 9754 */
+  IC_64BIT_REXW_XS, /* 9755 */
+  IC_XD_OPSIZE, /* 9756 */
+  IC_64BIT_REXW_XD, /* 9757 */
+  IC_XS_OPSIZE, /* 9758 */
+  IC_64BIT_REXW_XS, /* 9759 */
+  IC_ADSIZE, /* 9760 */
+  IC_64BIT_ADSIZE, /* 9761 */
+  IC_XS, /* 9762 */
+  IC_64BIT_XS, /* 9763 */
+  IC_XD, /* 9764 */
+  IC_64BIT_XD, /* 9765 */
+  IC_XS, /* 9766 */
+  IC_64BIT_XS, /* 9767 */
+  IC_ADSIZE, /* 9768 */
+  IC_64BIT_ADSIZE, /* 9769 */
+  IC_XS, /* 9770 */
+  IC_64BIT_REXW_XS, /* 9771 */
+  IC_XD, /* 9772 */
+  IC_64BIT_REXW_XD, /* 9773 */
+  IC_XS, /* 9774 */
+  IC_64BIT_REXW_XS, /* 9775 */
+  IC_OPSIZE, /* 9776 */
+  IC_64BIT_OPSIZE, /* 9777 */
+  IC_XS_OPSIZE, /* 9778 */
+  IC_64BIT_XS_OPSIZE, /* 9779 */
+  IC_XD_OPSIZE, /* 9780 */
+  IC_64BIT_XD_OPSIZE, /* 9781 */
+  IC_XS_OPSIZE, /* 9782 */
+  IC_64BIT_XD_OPSIZE, /* 9783 */
+  IC_OPSIZE, /* 9784 */
+  IC_64BIT_REXW_OPSIZE, /* 9785 */
+  IC_XS_OPSIZE, /* 9786 */
+  IC_64BIT_REXW_XS, /* 9787 */
+  IC_XD_OPSIZE, /* 9788 */
+  IC_64BIT_REXW_XD, /* 9789 */
+  IC_XS_OPSIZE, /* 9790 */
+  IC_64BIT_REXW_XS, /* 9791 */
+  IC_VEX, /* 9792 */
+  IC_VEX, /* 9793 */
+  IC_VEX_XS, /* 9794 */
+  IC_VEX_XS, /* 9795 */
+  IC_VEX_XD, /* 9796 */
+  IC_VEX_XD, /* 9797 */
+  IC_VEX_XD, /* 9798 */
+  IC_VEX_XD, /* 9799 */
+  IC_VEX_W, /* 9800 */
+  IC_VEX_W, /* 9801 */
+  IC_VEX_W_XS, /* 9802 */
+  IC_VEX_W_XS, /* 9803 */
+  IC_VEX_W_XD, /* 9804 */
+  IC_VEX_W_XD, /* 9805 */
+  IC_VEX_W_XD, /* 9806 */
+  IC_VEX_W_XD, /* 9807 */
+  IC_VEX_OPSIZE, /* 9808 */
+  IC_VEX_OPSIZE, /* 9809 */
+  IC_VEX_OPSIZE, /* 9810 */
+  IC_VEX_OPSIZE, /* 9811 */
+  IC_VEX_OPSIZE, /* 9812 */
+  IC_VEX_OPSIZE, /* 9813 */
+  IC_VEX_OPSIZE, /* 9814 */
+  IC_VEX_OPSIZE, /* 9815 */
+  IC_VEX_W_OPSIZE, /* 9816 */
+  IC_VEX_W_OPSIZE, /* 9817 */
+  IC_VEX_W_OPSIZE, /* 9818 */
+  IC_VEX_W_OPSIZE, /* 9819 */
+  IC_VEX_W_OPSIZE, /* 9820 */
+  IC_VEX_W_OPSIZE, /* 9821 */
+  IC_VEX_W_OPSIZE, /* 9822 */
+  IC_VEX_W_OPSIZE, /* 9823 */
+  IC_VEX, /* 9824 */
+  IC_VEX, /* 9825 */
+  IC_VEX_XS, /* 9826 */
+  IC_VEX_XS, /* 9827 */
+  IC_VEX_XD, /* 9828 */
+  IC_VEX_XD, /* 9829 */
+  IC_VEX_XD, /* 9830 */
+  IC_VEX_XD, /* 9831 */
+  IC_VEX_W, /* 9832 */
+  IC_VEX_W, /* 9833 */
+  IC_VEX_W_XS, /* 9834 */
+  IC_VEX_W_XS, /* 9835 */
+  IC_VEX_W_XD, /* 9836 */
+  IC_VEX_W_XD, /* 9837 */
+  IC_VEX_W_XD, /* 9838 */
+  IC_VEX_W_XD, /* 9839 */
+  IC_VEX_OPSIZE, /* 9840 */
+  IC_VEX_OPSIZE, /* 9841 */
+  IC_VEX_OPSIZE, /* 9842 */
+  IC_VEX_OPSIZE, /* 9843 */
+  IC_VEX_OPSIZE, /* 9844 */
+  IC_VEX_OPSIZE, /* 9845 */
+  IC_VEX_OPSIZE, /* 9846 */
+  IC_VEX_OPSIZE, /* 9847 */
+  IC_VEX_W_OPSIZE, /* 9848 */
+  IC_VEX_W_OPSIZE, /* 9849 */
+  IC_VEX_W_OPSIZE, /* 9850 */
+  IC_VEX_W_OPSIZE, /* 9851 */
+  IC_VEX_W_OPSIZE, /* 9852 */
+  IC_VEX_W_OPSIZE, /* 9853 */
+  IC_VEX_W_OPSIZE, /* 9854 */
+  IC_VEX_W_OPSIZE, /* 9855 */
+  IC_VEX_L, /* 9856 */
+  IC_VEX_L, /* 9857 */
+  IC_VEX_L_XS, /* 9858 */
+  IC_VEX_L_XS, /* 9859 */
+  IC_VEX_L_XD, /* 9860 */
+  IC_VEX_L_XD, /* 9861 */
+  IC_VEX_L_XD, /* 9862 */
+  IC_VEX_L_XD, /* 9863 */
+  IC_VEX_L_W, /* 9864 */
+  IC_VEX_L_W, /* 9865 */
+  IC_VEX_L_W_XS, /* 9866 */
+  IC_VEX_L_W_XS, /* 9867 */
+  IC_VEX_L_W_XD, /* 9868 */
+  IC_VEX_L_W_XD, /* 9869 */
+  IC_VEX_L_W_XD, /* 9870 */
+  IC_VEX_L_W_XD, /* 9871 */
+  IC_VEX_L_OPSIZE, /* 9872 */
+  IC_VEX_L_OPSIZE, /* 9873 */
+  IC_VEX_L_OPSIZE, /* 9874 */
+  IC_VEX_L_OPSIZE, /* 9875 */
+  IC_VEX_L_OPSIZE, /* 9876 */
+  IC_VEX_L_OPSIZE, /* 9877 */
+  IC_VEX_L_OPSIZE, /* 9878 */
+  IC_VEX_L_OPSIZE, /* 9879 */
+  IC_VEX_L_W_OPSIZE, /* 9880 */
+  IC_VEX_L_W_OPSIZE, /* 9881 */
+  IC_VEX_L_W_OPSIZE, /* 9882 */
+  IC_VEX_L_W_OPSIZE, /* 9883 */
+  IC_VEX_L_W_OPSIZE, /* 9884 */
+  IC_VEX_L_W_OPSIZE, /* 9885 */
+  IC_VEX_L_W_OPSIZE, /* 9886 */
+  IC_VEX_L_W_OPSIZE, /* 9887 */
+  IC_VEX_L, /* 9888 */
+  IC_VEX_L, /* 9889 */
+  IC_VEX_L_XS, /* 9890 */
+  IC_VEX_L_XS, /* 9891 */
+  IC_VEX_L_XD, /* 9892 */
+  IC_VEX_L_XD, /* 9893 */
+  IC_VEX_L_XD, /* 9894 */
+  IC_VEX_L_XD, /* 9895 */
+  IC_VEX_L_W, /* 9896 */
+  IC_VEX_L_W, /* 9897 */
+  IC_VEX_L_W_XS, /* 9898 */
+  IC_VEX_L_W_XS, /* 9899 */
+  IC_VEX_L_W_XD, /* 9900 */
+  IC_VEX_L_W_XD, /* 9901 */
+  IC_VEX_L_W_XD, /* 9902 */
+  IC_VEX_L_W_XD, /* 9903 */
+  IC_VEX_L_OPSIZE, /* 9904 */
+  IC_VEX_L_OPSIZE, /* 9905 */
+  IC_VEX_L_OPSIZE, /* 9906 */
+  IC_VEX_L_OPSIZE, /* 9907 */
+  IC_VEX_L_OPSIZE, /* 9908 */
+  IC_VEX_L_OPSIZE, /* 9909 */
+  IC_VEX_L_OPSIZE, /* 9910 */
+  IC_VEX_L_OPSIZE, /* 9911 */
+  IC_VEX_L_W_OPSIZE, /* 9912 */
+  IC_VEX_L_W_OPSIZE, /* 9913 */
+  IC_VEX_L_W_OPSIZE, /* 9914 */
+  IC_VEX_L_W_OPSIZE, /* 9915 */
+  IC_VEX_L_W_OPSIZE, /* 9916 */
+  IC_VEX_L_W_OPSIZE, /* 9917 */
+  IC_VEX_L_W_OPSIZE, /* 9918 */
+  IC_VEX_L_W_OPSIZE, /* 9919 */
+  IC_VEX_L, /* 9920 */
+  IC_VEX_L, /* 9921 */
+  IC_VEX_L_XS, /* 9922 */
+  IC_VEX_L_XS, /* 9923 */
+  IC_VEX_L_XD, /* 9924 */
+  IC_VEX_L_XD, /* 9925 */
+  IC_VEX_L_XD, /* 9926 */
+  IC_VEX_L_XD, /* 9927 */
+  IC_VEX_L_W, /* 9928 */
+  IC_VEX_L_W, /* 9929 */
+  IC_VEX_L_W_XS, /* 9930 */
+  IC_VEX_L_W_XS, /* 9931 */
+  IC_VEX_L_W_XD, /* 9932 */
+  IC_VEX_L_W_XD, /* 9933 */
+  IC_VEX_L_W_XD, /* 9934 */
+  IC_VEX_L_W_XD, /* 9935 */
+  IC_VEX_L_OPSIZE, /* 9936 */
+  IC_VEX_L_OPSIZE, /* 9937 */
+  IC_VEX_L_OPSIZE, /* 9938 */
+  IC_VEX_L_OPSIZE, /* 9939 */
+  IC_VEX_L_OPSIZE, /* 9940 */
+  IC_VEX_L_OPSIZE, /* 9941 */
+  IC_VEX_L_OPSIZE, /* 9942 */
+  IC_VEX_L_OPSIZE, /* 9943 */
+  IC_VEX_L_W_OPSIZE, /* 9944 */
+  IC_VEX_L_W_OPSIZE, /* 9945 */
+  IC_VEX_L_W_OPSIZE, /* 9946 */
+  IC_VEX_L_W_OPSIZE, /* 9947 */
+  IC_VEX_L_W_OPSIZE, /* 9948 */
+  IC_VEX_L_W_OPSIZE, /* 9949 */
+  IC_VEX_L_W_OPSIZE, /* 9950 */
+  IC_VEX_L_W_OPSIZE, /* 9951 */
+  IC_VEX_L, /* 9952 */
+  IC_VEX_L, /* 9953 */
+  IC_VEX_L_XS, /* 9954 */
+  IC_VEX_L_XS, /* 9955 */
+  IC_VEX_L_XD, /* 9956 */
+  IC_VEX_L_XD, /* 9957 */
+  IC_VEX_L_XD, /* 9958 */
+  IC_VEX_L_XD, /* 9959 */
+  IC_VEX_L_W, /* 9960 */
+  IC_VEX_L_W, /* 9961 */
+  IC_VEX_L_W_XS, /* 9962 */
+  IC_VEX_L_W_XS, /* 9963 */
+  IC_VEX_L_W_XD, /* 9964 */
+  IC_VEX_L_W_XD, /* 9965 */
+  IC_VEX_L_W_XD, /* 9966 */
+  IC_VEX_L_W_XD, /* 9967 */
+  IC_VEX_L_OPSIZE, /* 9968 */
+  IC_VEX_L_OPSIZE, /* 9969 */
+  IC_VEX_L_OPSIZE, /* 9970 */
+  IC_VEX_L_OPSIZE, /* 9971 */
+  IC_VEX_L_OPSIZE, /* 9972 */
+  IC_VEX_L_OPSIZE, /* 9973 */
+  IC_VEX_L_OPSIZE, /* 9974 */
+  IC_VEX_L_OPSIZE, /* 9975 */
+  IC_VEX_L_W_OPSIZE, /* 9976 */
+  IC_VEX_L_W_OPSIZE, /* 9977 */
+  IC_VEX_L_W_OPSIZE, /* 9978 */
+  IC_VEX_L_W_OPSIZE, /* 9979 */
+  IC_VEX_L_W_OPSIZE, /* 9980 */
+  IC_VEX_L_W_OPSIZE, /* 9981 */
+  IC_VEX_L_W_OPSIZE, /* 9982 */
+  IC_VEX_L_W_OPSIZE, /* 9983 */
+  IC_EVEX_L2_B, /* 9984 */
+  IC_EVEX_L2_B, /* 9985 */
+  IC_EVEX_L2_XS_B, /* 9986 */
+  IC_EVEX_L2_XS_B, /* 9987 */
+  IC_EVEX_L2_XD_B, /* 9988 */
+  IC_EVEX_L2_XD_B, /* 9989 */
+  IC_EVEX_L2_XD_B, /* 9990 */
+  IC_EVEX_L2_XD_B, /* 9991 */
+  IC_EVEX_L2_W_B, /* 9992 */
+  IC_EVEX_L2_W_B, /* 9993 */
+  IC_EVEX_L2_W_XS_B, /* 9994 */
+  IC_EVEX_L2_W_XS_B, /* 9995 */
+  IC_EVEX_L2_W_XD_B, /* 9996 */
+  IC_EVEX_L2_W_XD_B, /* 9997 */
+  IC_EVEX_L2_W_XD_B, /* 9998 */
+  IC_EVEX_L2_W_XD_B, /* 9999 */
+  IC_EVEX_L2_OPSIZE_B, /* 10000 */
+  IC_EVEX_L2_OPSIZE_B, /* 10001 */
+  IC_EVEX_L2_OPSIZE_B, /* 10002 */
+  IC_EVEX_L2_OPSIZE_B, /* 10003 */
+  IC_EVEX_L2_OPSIZE_B, /* 10004 */
+  IC_EVEX_L2_OPSIZE_B, /* 10005 */
+  IC_EVEX_L2_OPSIZE_B, /* 10006 */
+  IC_EVEX_L2_OPSIZE_B, /* 10007 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10008 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10009 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10010 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10011 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10012 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10013 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10014 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10015 */
+  IC_EVEX_L2_B, /* 10016 */
+  IC_EVEX_L2_B, /* 10017 */
+  IC_EVEX_L2_XS_B, /* 10018 */
+  IC_EVEX_L2_XS_B, /* 10019 */
+  IC_EVEX_L2_XD_B, /* 10020 */
+  IC_EVEX_L2_XD_B, /* 10021 */
+  IC_EVEX_L2_XD_B, /* 10022 */
+  IC_EVEX_L2_XD_B, /* 10023 */
+  IC_EVEX_L2_W_B, /* 10024 */
+  IC_EVEX_L2_W_B, /* 10025 */
+  IC_EVEX_L2_W_XS_B, /* 10026 */
+  IC_EVEX_L2_W_XS_B, /* 10027 */
+  IC_EVEX_L2_W_XD_B, /* 10028 */
+  IC_EVEX_L2_W_XD_B, /* 10029 */
+  IC_EVEX_L2_W_XD_B, /* 10030 */
+  IC_EVEX_L2_W_XD_B, /* 10031 */
+  IC_EVEX_L2_OPSIZE_B, /* 10032 */
+  IC_EVEX_L2_OPSIZE_B, /* 10033 */
+  IC_EVEX_L2_OPSIZE_B, /* 10034 */
+  IC_EVEX_L2_OPSIZE_B, /* 10035 */
+  IC_EVEX_L2_OPSIZE_B, /* 10036 */
+  IC_EVEX_L2_OPSIZE_B, /* 10037 */
+  IC_EVEX_L2_OPSIZE_B, /* 10038 */
+  IC_EVEX_L2_OPSIZE_B, /* 10039 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10040 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10041 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10042 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10043 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10044 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10045 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10046 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10047 */
+  IC_EVEX_L2_B, /* 10048 */
+  IC_EVEX_L2_B, /* 10049 */
+  IC_EVEX_L2_XS_B, /* 10050 */
+  IC_EVEX_L2_XS_B, /* 10051 */
+  IC_EVEX_L2_XD_B, /* 10052 */
+  IC_EVEX_L2_XD_B, /* 10053 */
+  IC_EVEX_L2_XD_B, /* 10054 */
+  IC_EVEX_L2_XD_B, /* 10055 */
+  IC_EVEX_L2_W_B, /* 10056 */
+  IC_EVEX_L2_W_B, /* 10057 */
+  IC_EVEX_L2_W_XS_B, /* 10058 */
+  IC_EVEX_L2_W_XS_B, /* 10059 */
+  IC_EVEX_L2_W_XD_B, /* 10060 */
+  IC_EVEX_L2_W_XD_B, /* 10061 */
+  IC_EVEX_L2_W_XD_B, /* 10062 */
+  IC_EVEX_L2_W_XD_B, /* 10063 */
+  IC_EVEX_L2_OPSIZE_B, /* 10064 */
+  IC_EVEX_L2_OPSIZE_B, /* 10065 */
+  IC_EVEX_L2_OPSIZE_B, /* 10066 */
+  IC_EVEX_L2_OPSIZE_B, /* 10067 */
+  IC_EVEX_L2_OPSIZE_B, /* 10068 */
+  IC_EVEX_L2_OPSIZE_B, /* 10069 */
+  IC_EVEX_L2_OPSIZE_B, /* 10070 */
+  IC_EVEX_L2_OPSIZE_B, /* 10071 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10072 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10073 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10074 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10075 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10076 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10077 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10078 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10079 */
+  IC_EVEX_L2_B, /* 10080 */
+  IC_EVEX_L2_B, /* 10081 */
+  IC_EVEX_L2_XS_B, /* 10082 */
+  IC_EVEX_L2_XS_B, /* 10083 */
+  IC_EVEX_L2_XD_B, /* 10084 */
+  IC_EVEX_L2_XD_B, /* 10085 */
+  IC_EVEX_L2_XD_B, /* 10086 */
+  IC_EVEX_L2_XD_B, /* 10087 */
+  IC_EVEX_L2_W_B, /* 10088 */
+  IC_EVEX_L2_W_B, /* 10089 */
+  IC_EVEX_L2_W_XS_B, /* 10090 */
+  IC_EVEX_L2_W_XS_B, /* 10091 */
+  IC_EVEX_L2_W_XD_B, /* 10092 */
+  IC_EVEX_L2_W_XD_B, /* 10093 */
+  IC_EVEX_L2_W_XD_B, /* 10094 */
+  IC_EVEX_L2_W_XD_B, /* 10095 */
+  IC_EVEX_L2_OPSIZE_B, /* 10096 */
+  IC_EVEX_L2_OPSIZE_B, /* 10097 */
+  IC_EVEX_L2_OPSIZE_B, /* 10098 */
+  IC_EVEX_L2_OPSIZE_B, /* 10099 */
+  IC_EVEX_L2_OPSIZE_B, /* 10100 */
+  IC_EVEX_L2_OPSIZE_B, /* 10101 */
+  IC_EVEX_L2_OPSIZE_B, /* 10102 */
+  IC_EVEX_L2_OPSIZE_B, /* 10103 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10104 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10105 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10106 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10107 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10108 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10109 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10110 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10111 */
+  IC_EVEX_L2_B, /* 10112 */
+  IC_EVEX_L2_B, /* 10113 */
+  IC_EVEX_L2_XS_B, /* 10114 */
+  IC_EVEX_L2_XS_B, /* 10115 */
+  IC_EVEX_L2_XD_B, /* 10116 */
+  IC_EVEX_L2_XD_B, /* 10117 */
+  IC_EVEX_L2_XD_B, /* 10118 */
+  IC_EVEX_L2_XD_B, /* 10119 */
+  IC_EVEX_L2_W_B, /* 10120 */
+  IC_EVEX_L2_W_B, /* 10121 */
+  IC_EVEX_L2_W_XS_B, /* 10122 */
+  IC_EVEX_L2_W_XS_B, /* 10123 */
+  IC_EVEX_L2_W_XD_B, /* 10124 */
+  IC_EVEX_L2_W_XD_B, /* 10125 */
+  IC_EVEX_L2_W_XD_B, /* 10126 */
+  IC_EVEX_L2_W_XD_B, /* 10127 */
+  IC_EVEX_L2_OPSIZE_B, /* 10128 */
+  IC_EVEX_L2_OPSIZE_B, /* 10129 */
+  IC_EVEX_L2_OPSIZE_B, /* 10130 */
+  IC_EVEX_L2_OPSIZE_B, /* 10131 */
+  IC_EVEX_L2_OPSIZE_B, /* 10132 */
+  IC_EVEX_L2_OPSIZE_B, /* 10133 */
+  IC_EVEX_L2_OPSIZE_B, /* 10134 */
+  IC_EVEX_L2_OPSIZE_B, /* 10135 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10136 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10137 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10138 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10139 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10140 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10141 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10142 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10143 */
+  IC_EVEX_L2_B, /* 10144 */
+  IC_EVEX_L2_B, /* 10145 */
+  IC_EVEX_L2_XS_B, /* 10146 */
+  IC_EVEX_L2_XS_B, /* 10147 */
+  IC_EVEX_L2_XD_B, /* 10148 */
+  IC_EVEX_L2_XD_B, /* 10149 */
+  IC_EVEX_L2_XD_B, /* 10150 */
+  IC_EVEX_L2_XD_B, /* 10151 */
+  IC_EVEX_L2_W_B, /* 10152 */
+  IC_EVEX_L2_W_B, /* 10153 */
+  IC_EVEX_L2_W_XS_B, /* 10154 */
+  IC_EVEX_L2_W_XS_B, /* 10155 */
+  IC_EVEX_L2_W_XD_B, /* 10156 */
+  IC_EVEX_L2_W_XD_B, /* 10157 */
+  IC_EVEX_L2_W_XD_B, /* 10158 */
+  IC_EVEX_L2_W_XD_B, /* 10159 */
+  IC_EVEX_L2_OPSIZE_B, /* 10160 */
+  IC_EVEX_L2_OPSIZE_B, /* 10161 */
+  IC_EVEX_L2_OPSIZE_B, /* 10162 */
+  IC_EVEX_L2_OPSIZE_B, /* 10163 */
+  IC_EVEX_L2_OPSIZE_B, /* 10164 */
+  IC_EVEX_L2_OPSIZE_B, /* 10165 */
+  IC_EVEX_L2_OPSIZE_B, /* 10166 */
+  IC_EVEX_L2_OPSIZE_B, /* 10167 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10168 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10169 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10170 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10171 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10172 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10173 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10174 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10175 */
+  IC_EVEX_L2_B, /* 10176 */
+  IC_EVEX_L2_B, /* 10177 */
+  IC_EVEX_L2_XS_B, /* 10178 */
+  IC_EVEX_L2_XS_B, /* 10179 */
+  IC_EVEX_L2_XD_B, /* 10180 */
+  IC_EVEX_L2_XD_B, /* 10181 */
+  IC_EVEX_L2_XD_B, /* 10182 */
+  IC_EVEX_L2_XD_B, /* 10183 */
+  IC_EVEX_L2_W_B, /* 10184 */
+  IC_EVEX_L2_W_B, /* 10185 */
+  IC_EVEX_L2_W_XS_B, /* 10186 */
+  IC_EVEX_L2_W_XS_B, /* 10187 */
+  IC_EVEX_L2_W_XD_B, /* 10188 */
+  IC_EVEX_L2_W_XD_B, /* 10189 */
+  IC_EVEX_L2_W_XD_B, /* 10190 */
+  IC_EVEX_L2_W_XD_B, /* 10191 */
+  IC_EVEX_L2_OPSIZE_B, /* 10192 */
+  IC_EVEX_L2_OPSIZE_B, /* 10193 */
+  IC_EVEX_L2_OPSIZE_B, /* 10194 */
+  IC_EVEX_L2_OPSIZE_B, /* 10195 */
+  IC_EVEX_L2_OPSIZE_B, /* 10196 */
+  IC_EVEX_L2_OPSIZE_B, /* 10197 */
+  IC_EVEX_L2_OPSIZE_B, /* 10198 */
+  IC_EVEX_L2_OPSIZE_B, /* 10199 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10200 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10201 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10202 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10203 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10204 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10205 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10206 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10207 */
+  IC_EVEX_L2_B, /* 10208 */
+  IC_EVEX_L2_B, /* 10209 */
+  IC_EVEX_L2_XS_B, /* 10210 */
+  IC_EVEX_L2_XS_B, /* 10211 */
+  IC_EVEX_L2_XD_B, /* 10212 */
+  IC_EVEX_L2_XD_B, /* 10213 */
+  IC_EVEX_L2_XD_B, /* 10214 */
+  IC_EVEX_L2_XD_B, /* 10215 */
+  IC_EVEX_L2_W_B, /* 10216 */
+  IC_EVEX_L2_W_B, /* 10217 */
+  IC_EVEX_L2_W_XS_B, /* 10218 */
+  IC_EVEX_L2_W_XS_B, /* 10219 */
+  IC_EVEX_L2_W_XD_B, /* 10220 */
+  IC_EVEX_L2_W_XD_B, /* 10221 */
+  IC_EVEX_L2_W_XD_B, /* 10222 */
+  IC_EVEX_L2_W_XD_B, /* 10223 */
+  IC_EVEX_L2_OPSIZE_B, /* 10224 */
+  IC_EVEX_L2_OPSIZE_B, /* 10225 */
+  IC_EVEX_L2_OPSIZE_B, /* 10226 */
+  IC_EVEX_L2_OPSIZE_B, /* 10227 */
+  IC_EVEX_L2_OPSIZE_B, /* 10228 */
+  IC_EVEX_L2_OPSIZE_B, /* 10229 */
+  IC_EVEX_L2_OPSIZE_B, /* 10230 */
+  IC_EVEX_L2_OPSIZE_B, /* 10231 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10232 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10233 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10234 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10235 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10236 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10237 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10238 */
+  IC_EVEX_L2_W_OPSIZE_B, /* 10239 */
+  IC, /* 10240 */
+  IC_64BIT, /* 10241 */
+  IC_XS, /* 10242 */
+  IC_64BIT_XS, /* 10243 */
+  IC_XD, /* 10244 */
+  IC_64BIT_XD, /* 10245 */
+  IC_XS, /* 10246 */
+  IC_64BIT_XS, /* 10247 */
+  IC, /* 10248 */
+  IC_64BIT_REXW, /* 10249 */
+  IC_XS, /* 10250 */
+  IC_64BIT_REXW_XS, /* 10251 */
+  IC_XD, /* 10252 */
+  IC_64BIT_REXW_XD, /* 10253 */
+  IC_XS, /* 10254 */
+  IC_64BIT_REXW_XS, /* 10255 */
+  IC_OPSIZE, /* 10256 */
+  IC_64BIT_OPSIZE, /* 10257 */
+  IC_XS_OPSIZE, /* 10258 */
+  IC_64BIT_XS_OPSIZE, /* 10259 */
+  IC_XD_OPSIZE, /* 10260 */
+  IC_64BIT_XD_OPSIZE, /* 10261 */
+  IC_XS_OPSIZE, /* 10262 */
+  IC_64BIT_XD_OPSIZE, /* 10263 */
+  IC_OPSIZE, /* 10264 */
+  IC_64BIT_REXW_OPSIZE, /* 10265 */
+  IC_XS_OPSIZE, /* 10266 */
+  IC_64BIT_REXW_XS, /* 10267 */
+  IC_XD_OPSIZE, /* 10268 */
+  IC_64BIT_REXW_XD, /* 10269 */
+  IC_XS_OPSIZE, /* 10270 */
+  IC_64BIT_REXW_XS, /* 10271 */
+  IC_ADSIZE, /* 10272 */
+  IC_64BIT_ADSIZE, /* 10273 */
+  IC_XS, /* 10274 */
+  IC_64BIT_XS, /* 10275 */
+  IC_XD, /* 10276 */
+  IC_64BIT_XD, /* 10277 */
+  IC_XS, /* 10278 */
+  IC_64BIT_XS, /* 10279 */
+  IC_ADSIZE, /* 10280 */
+  IC_64BIT_ADSIZE, /* 10281 */
+  IC_XS, /* 10282 */
+  IC_64BIT_REXW_XS, /* 10283 */
+  IC_XD, /* 10284 */
+  IC_64BIT_REXW_XD, /* 10285 */
+  IC_XS, /* 10286 */
+  IC_64BIT_REXW_XS, /* 10287 */
+  IC_OPSIZE, /* 10288 */
+  IC_64BIT_OPSIZE, /* 10289 */
+  IC_XS_OPSIZE, /* 10290 */
+  IC_64BIT_XS_OPSIZE, /* 10291 */
+  IC_XD_OPSIZE, /* 10292 */
+  IC_64BIT_XD_OPSIZE, /* 10293 */
+  IC_XS_OPSIZE, /* 10294 */
+  IC_64BIT_XD_OPSIZE, /* 10295 */
+  IC_OPSIZE, /* 10296 */
+  IC_64BIT_REXW_OPSIZE, /* 10297 */
+  IC_XS_OPSIZE, /* 10298 */
+  IC_64BIT_REXW_XS, /* 10299 */
+  IC_XD_OPSIZE, /* 10300 */
+  IC_64BIT_REXW_XD, /* 10301 */
+  IC_XS_OPSIZE, /* 10302 */
+  IC_64BIT_REXW_XS, /* 10303 */
+  IC_VEX, /* 10304 */
+  IC_VEX, /* 10305 */
+  IC_VEX_XS, /* 10306 */
+  IC_VEX_XS, /* 10307 */
+  IC_VEX_XD, /* 10308 */
+  IC_VEX_XD, /* 10309 */
+  IC_VEX_XD, /* 10310 */
+  IC_VEX_XD, /* 10311 */
+  IC_VEX_W, /* 10312 */
+  IC_VEX_W, /* 10313 */
+  IC_VEX_W_XS, /* 10314 */
+  IC_VEX_W_XS, /* 10315 */
+  IC_VEX_W_XD, /* 10316 */
+  IC_VEX_W_XD, /* 10317 */
+  IC_VEX_W_XD, /* 10318 */
+  IC_VEX_W_XD, /* 10319 */
+  IC_VEX_OPSIZE, /* 10320 */
+  IC_VEX_OPSIZE, /* 10321 */
+  IC_VEX_OPSIZE, /* 10322 */
+  IC_VEX_OPSIZE, /* 10323 */
+  IC_VEX_OPSIZE, /* 10324 */
+  IC_VEX_OPSIZE, /* 10325 */
+  IC_VEX_OPSIZE, /* 10326 */
+  IC_VEX_OPSIZE, /* 10327 */
+  IC_VEX_W_OPSIZE, /* 10328 */
+  IC_VEX_W_OPSIZE, /* 10329 */
+  IC_VEX_W_OPSIZE, /* 10330 */
+  IC_VEX_W_OPSIZE, /* 10331 */
+  IC_VEX_W_OPSIZE, /* 10332 */
+  IC_VEX_W_OPSIZE, /* 10333 */
+  IC_VEX_W_OPSIZE, /* 10334 */
+  IC_VEX_W_OPSIZE, /* 10335 */
+  IC_VEX, /* 10336 */
+  IC_VEX, /* 10337 */
+  IC_VEX_XS, /* 10338 */
+  IC_VEX_XS, /* 10339 */
+  IC_VEX_XD, /* 10340 */
+  IC_VEX_XD, /* 10341 */
+  IC_VEX_XD, /* 10342 */
+  IC_VEX_XD, /* 10343 */
+  IC_VEX_W, /* 10344 */
+  IC_VEX_W, /* 10345 */
+  IC_VEX_W_XS, /* 10346 */
+  IC_VEX_W_XS, /* 10347 */
+  IC_VEX_W_XD, /* 10348 */
+  IC_VEX_W_XD, /* 10349 */
+  IC_VEX_W_XD, /* 10350 */
+  IC_VEX_W_XD, /* 10351 */
+  IC_VEX_OPSIZE, /* 10352 */
+  IC_VEX_OPSIZE, /* 10353 */
+  IC_VEX_OPSIZE, /* 10354 */
+  IC_VEX_OPSIZE, /* 10355 */
+  IC_VEX_OPSIZE, /* 10356 */
+  IC_VEX_OPSIZE, /* 10357 */
+  IC_VEX_OPSIZE, /* 10358 */
+  IC_VEX_OPSIZE, /* 10359 */
+  IC_VEX_W_OPSIZE, /* 10360 */
+  IC_VEX_W_OPSIZE, /* 10361 */
+  IC_VEX_W_OPSIZE, /* 10362 */
+  IC_VEX_W_OPSIZE, /* 10363 */
+  IC_VEX_W_OPSIZE, /* 10364 */
+  IC_VEX_W_OPSIZE, /* 10365 */
+  IC_VEX_W_OPSIZE, /* 10366 */
+  IC_VEX_W_OPSIZE, /* 10367 */
+  IC_VEX_L, /* 10368 */
+  IC_VEX_L, /* 10369 */
+  IC_VEX_L_XS, /* 10370 */
+  IC_VEX_L_XS, /* 10371 */
+  IC_VEX_L_XD, /* 10372 */
+  IC_VEX_L_XD, /* 10373 */
+  IC_VEX_L_XD, /* 10374 */
+  IC_VEX_L_XD, /* 10375 */
+  IC_VEX_L_W, /* 10376 */
+  IC_VEX_L_W, /* 10377 */
+  IC_VEX_L_W_XS, /* 10378 */
+  IC_VEX_L_W_XS, /* 10379 */
+  IC_VEX_L_W_XD, /* 10380 */
+  IC_VEX_L_W_XD, /* 10381 */
+  IC_VEX_L_W_XD, /* 10382 */
+  IC_VEX_L_W_XD, /* 10383 */
+  IC_VEX_L_OPSIZE, /* 10384 */
+  IC_VEX_L_OPSIZE, /* 10385 */
+  IC_VEX_L_OPSIZE, /* 10386 */
+  IC_VEX_L_OPSIZE, /* 10387 */
+  IC_VEX_L_OPSIZE, /* 10388 */
+  IC_VEX_L_OPSIZE, /* 10389 */
+  IC_VEX_L_OPSIZE, /* 10390 */
+  IC_VEX_L_OPSIZE, /* 10391 */
+  IC_VEX_L_W_OPSIZE, /* 10392 */
+  IC_VEX_L_W_OPSIZE, /* 10393 */
+  IC_VEX_L_W_OPSIZE, /* 10394 */
+  IC_VEX_L_W_OPSIZE, /* 10395 */
+  IC_VEX_L_W_OPSIZE, /* 10396 */
+  IC_VEX_L_W_OPSIZE, /* 10397 */
+  IC_VEX_L_W_OPSIZE, /* 10398 */
+  IC_VEX_L_W_OPSIZE, /* 10399 */
+  IC_VEX_L, /* 10400 */
+  IC_VEX_L, /* 10401 */
+  IC_VEX_L_XS, /* 10402 */
+  IC_VEX_L_XS, /* 10403 */
+  IC_VEX_L_XD, /* 10404 */
+  IC_VEX_L_XD, /* 10405 */
+  IC_VEX_L_XD, /* 10406 */
+  IC_VEX_L_XD, /* 10407 */
+  IC_VEX_L_W, /* 10408 */
+  IC_VEX_L_W, /* 10409 */
+  IC_VEX_L_W_XS, /* 10410 */
+  IC_VEX_L_W_XS, /* 10411 */
+  IC_VEX_L_W_XD, /* 10412 */
+  IC_VEX_L_W_XD, /* 10413 */
+  IC_VEX_L_W_XD, /* 10414 */
+  IC_VEX_L_W_XD, /* 10415 */
+  IC_VEX_L_OPSIZE, /* 10416 */
+  IC_VEX_L_OPSIZE, /* 10417 */
+  IC_VEX_L_OPSIZE, /* 10418 */
+  IC_VEX_L_OPSIZE, /* 10419 */
+  IC_VEX_L_OPSIZE, /* 10420 */
+  IC_VEX_L_OPSIZE, /* 10421 */
+  IC_VEX_L_OPSIZE, /* 10422 */
+  IC_VEX_L_OPSIZE, /* 10423 */
+  IC_VEX_L_W_OPSIZE, /* 10424 */
+  IC_VEX_L_W_OPSIZE, /* 10425 */
+  IC_VEX_L_W_OPSIZE, /* 10426 */
+  IC_VEX_L_W_OPSIZE, /* 10427 */
+  IC_VEX_L_W_OPSIZE, /* 10428 */
+  IC_VEX_L_W_OPSIZE, /* 10429 */
+  IC_VEX_L_W_OPSIZE, /* 10430 */
+  IC_VEX_L_W_OPSIZE, /* 10431 */
+  IC_VEX_L, /* 10432 */
+  IC_VEX_L, /* 10433 */
+  IC_VEX_L_XS, /* 10434 */
+  IC_VEX_L_XS, /* 10435 */
+  IC_VEX_L_XD, /* 10436 */
+  IC_VEX_L_XD, /* 10437 */
+  IC_VEX_L_XD, /* 10438 */
+  IC_VEX_L_XD, /* 10439 */
+  IC_VEX_L_W, /* 10440 */
+  IC_VEX_L_W, /* 10441 */
+  IC_VEX_L_W_XS, /* 10442 */
+  IC_VEX_L_W_XS, /* 10443 */
+  IC_VEX_L_W_XD, /* 10444 */
+  IC_VEX_L_W_XD, /* 10445 */
+  IC_VEX_L_W_XD, /* 10446 */
+  IC_VEX_L_W_XD, /* 10447 */
+  IC_VEX_L_OPSIZE, /* 10448 */
+  IC_VEX_L_OPSIZE, /* 10449 */
+  IC_VEX_L_OPSIZE, /* 10450 */
+  IC_VEX_L_OPSIZE, /* 10451 */
+  IC_VEX_L_OPSIZE, /* 10452 */
+  IC_VEX_L_OPSIZE, /* 10453 */
+  IC_VEX_L_OPSIZE, /* 10454 */
+  IC_VEX_L_OPSIZE, /* 10455 */
+  IC_VEX_L_W_OPSIZE, /* 10456 */
+  IC_VEX_L_W_OPSIZE, /* 10457 */
+  IC_VEX_L_W_OPSIZE, /* 10458 */
+  IC_VEX_L_W_OPSIZE, /* 10459 */
+  IC_VEX_L_W_OPSIZE, /* 10460 */
+  IC_VEX_L_W_OPSIZE, /* 10461 */
+  IC_VEX_L_W_OPSIZE, /* 10462 */
+  IC_VEX_L_W_OPSIZE, /* 10463 */
+  IC_VEX_L, /* 10464 */
+  IC_VEX_L, /* 10465 */
+  IC_VEX_L_XS, /* 10466 */
+  IC_VEX_L_XS, /* 10467 */
+  IC_VEX_L_XD, /* 10468 */
+  IC_VEX_L_XD, /* 10469 */
+  IC_VEX_L_XD, /* 10470 */
+  IC_VEX_L_XD, /* 10471 */
+  IC_VEX_L_W, /* 10472 */
+  IC_VEX_L_W, /* 10473 */
+  IC_VEX_L_W_XS, /* 10474 */
+  IC_VEX_L_W_XS, /* 10475 */
+  IC_VEX_L_W_XD, /* 10476 */
+  IC_VEX_L_W_XD, /* 10477 */
+  IC_VEX_L_W_XD, /* 10478 */
+  IC_VEX_L_W_XD, /* 10479 */
+  IC_VEX_L_OPSIZE, /* 10480 */
+  IC_VEX_L_OPSIZE, /* 10481 */
+  IC_VEX_L_OPSIZE, /* 10482 */
+  IC_VEX_L_OPSIZE, /* 10483 */
+  IC_VEX_L_OPSIZE, /* 10484 */
+  IC_VEX_L_OPSIZE, /* 10485 */
+  IC_VEX_L_OPSIZE, /* 10486 */
+  IC_VEX_L_OPSIZE, /* 10487 */
+  IC_VEX_L_W_OPSIZE, /* 10488 */
+  IC_VEX_L_W_OPSIZE, /* 10489 */
+  IC_VEX_L_W_OPSIZE, /* 10490 */
+  IC_VEX_L_W_OPSIZE, /* 10491 */
+  IC_VEX_L_W_OPSIZE, /* 10492 */
+  IC_VEX_L_W_OPSIZE, /* 10493 */
+  IC_VEX_L_W_OPSIZE, /* 10494 */
+  IC_VEX_L_W_OPSIZE, /* 10495 */
+  IC_EVEX_K_B, /* 10496 */
+  IC_EVEX_K_B, /* 10497 */
+  IC_EVEX_XS_K_B, /* 10498 */
+  IC_EVEX_XS_K_B, /* 10499 */
+  IC_EVEX_XD_K_B, /* 10500 */
+  IC_EVEX_XD_K_B, /* 10501 */
+  IC_EVEX_XD_K_B, /* 10502 */
+  IC_EVEX_XD_K_B, /* 10503 */
+  IC_EVEX_W_K_B, /* 10504 */
+  IC_EVEX_W_K_B, /* 10505 */
+  IC_EVEX_W_XS_K_B, /* 10506 */
+  IC_EVEX_W_XS_K_B, /* 10507 */
+  IC_EVEX_W_XD_K_B, /* 10508 */
+  IC_EVEX_W_XD_K_B, /* 10509 */
+  IC_EVEX_W_XD_K_B, /* 10510 */
+  IC_EVEX_W_XD_K_B, /* 10511 */
+  IC_EVEX_OPSIZE_K_B, /* 10512 */
+  IC_EVEX_OPSIZE_K_B, /* 10513 */
+  IC_EVEX_OPSIZE_K_B, /* 10514 */
+  IC_EVEX_OPSIZE_K_B, /* 10515 */
+  IC_EVEX_OPSIZE_K_B, /* 10516 */
+  IC_EVEX_OPSIZE_K_B, /* 10517 */
+  IC_EVEX_OPSIZE_K_B, /* 10518 */
+  IC_EVEX_OPSIZE_K_B, /* 10519 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10520 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10521 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10522 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10523 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10524 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10525 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10526 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10527 */
+  IC_EVEX_K_B, /* 10528 */
+  IC_EVEX_K_B, /* 10529 */
+  IC_EVEX_XS_K_B, /* 10530 */
+  IC_EVEX_XS_K_B, /* 10531 */
+  IC_EVEX_XD_K_B, /* 10532 */
+  IC_EVEX_XD_K_B, /* 10533 */
+  IC_EVEX_XD_K_B, /* 10534 */
+  IC_EVEX_XD_K_B, /* 10535 */
+  IC_EVEX_W_K_B, /* 10536 */
+  IC_EVEX_W_K_B, /* 10537 */
+  IC_EVEX_W_XS_K_B, /* 10538 */
+  IC_EVEX_W_XS_K_B, /* 10539 */
+  IC_EVEX_W_XD_K_B, /* 10540 */
+  IC_EVEX_W_XD_K_B, /* 10541 */
+  IC_EVEX_W_XD_K_B, /* 10542 */
+  IC_EVEX_W_XD_K_B, /* 10543 */
+  IC_EVEX_OPSIZE_K_B, /* 10544 */
+  IC_EVEX_OPSIZE_K_B, /* 10545 */
+  IC_EVEX_OPSIZE_K_B, /* 10546 */
+  IC_EVEX_OPSIZE_K_B, /* 10547 */
+  IC_EVEX_OPSIZE_K_B, /* 10548 */
+  IC_EVEX_OPSIZE_K_B, /* 10549 */
+  IC_EVEX_OPSIZE_K_B, /* 10550 */
+  IC_EVEX_OPSIZE_K_B, /* 10551 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10552 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10553 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10554 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10555 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10556 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10557 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10558 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10559 */
+  IC_EVEX_K_B, /* 10560 */
+  IC_EVEX_K_B, /* 10561 */
+  IC_EVEX_XS_K_B, /* 10562 */
+  IC_EVEX_XS_K_B, /* 10563 */
+  IC_EVEX_XD_K_B, /* 10564 */
+  IC_EVEX_XD_K_B, /* 10565 */
+  IC_EVEX_XD_K_B, /* 10566 */
+  IC_EVEX_XD_K_B, /* 10567 */
+  IC_EVEX_W_K_B, /* 10568 */
+  IC_EVEX_W_K_B, /* 10569 */
+  IC_EVEX_W_XS_K_B, /* 10570 */
+  IC_EVEX_W_XS_K_B, /* 10571 */
+  IC_EVEX_W_XD_K_B, /* 10572 */
+  IC_EVEX_W_XD_K_B, /* 10573 */
+  IC_EVEX_W_XD_K_B, /* 10574 */
+  IC_EVEX_W_XD_K_B, /* 10575 */
+  IC_EVEX_OPSIZE_K_B, /* 10576 */
+  IC_EVEX_OPSIZE_K_B, /* 10577 */
+  IC_EVEX_OPSIZE_K_B, /* 10578 */
+  IC_EVEX_OPSIZE_K_B, /* 10579 */
+  IC_EVEX_OPSIZE_K_B, /* 10580 */
+  IC_EVEX_OPSIZE_K_B, /* 10581 */
+  IC_EVEX_OPSIZE_K_B, /* 10582 */
+  IC_EVEX_OPSIZE_K_B, /* 10583 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10584 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10585 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10586 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10587 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10588 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10589 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10590 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10591 */
+  IC_EVEX_K_B, /* 10592 */
+  IC_EVEX_K_B, /* 10593 */
+  IC_EVEX_XS_K_B, /* 10594 */
+  IC_EVEX_XS_K_B, /* 10595 */
+  IC_EVEX_XD_K_B, /* 10596 */
+  IC_EVEX_XD_K_B, /* 10597 */
+  IC_EVEX_XD_K_B, /* 10598 */
+  IC_EVEX_XD_K_B, /* 10599 */
+  IC_EVEX_W_K_B, /* 10600 */
+  IC_EVEX_W_K_B, /* 10601 */
+  IC_EVEX_W_XS_K_B, /* 10602 */
+  IC_EVEX_W_XS_K_B, /* 10603 */
+  IC_EVEX_W_XD_K_B, /* 10604 */
+  IC_EVEX_W_XD_K_B, /* 10605 */
+  IC_EVEX_W_XD_K_B, /* 10606 */
+  IC_EVEX_W_XD_K_B, /* 10607 */
+  IC_EVEX_OPSIZE_K_B, /* 10608 */
+  IC_EVEX_OPSIZE_K_B, /* 10609 */
+  IC_EVEX_OPSIZE_K_B, /* 10610 */
+  IC_EVEX_OPSIZE_K_B, /* 10611 */
+  IC_EVEX_OPSIZE_K_B, /* 10612 */
+  IC_EVEX_OPSIZE_K_B, /* 10613 */
+  IC_EVEX_OPSIZE_K_B, /* 10614 */
+  IC_EVEX_OPSIZE_K_B, /* 10615 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10616 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10617 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10618 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10619 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10620 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10621 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10622 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10623 */
+  IC_EVEX_K_B, /* 10624 */
+  IC_EVEX_K_B, /* 10625 */
+  IC_EVEX_XS_K_B, /* 10626 */
+  IC_EVEX_XS_K_B, /* 10627 */
+  IC_EVEX_XD_K_B, /* 10628 */
+  IC_EVEX_XD_K_B, /* 10629 */
+  IC_EVEX_XD_K_B, /* 10630 */
+  IC_EVEX_XD_K_B, /* 10631 */
+  IC_EVEX_W_K_B, /* 10632 */
+  IC_EVEX_W_K_B, /* 10633 */
+  IC_EVEX_W_XS_K_B, /* 10634 */
+  IC_EVEX_W_XS_K_B, /* 10635 */
+  IC_EVEX_W_XD_K_B, /* 10636 */
+  IC_EVEX_W_XD_K_B, /* 10637 */
+  IC_EVEX_W_XD_K_B, /* 10638 */
+  IC_EVEX_W_XD_K_B, /* 10639 */
+  IC_EVEX_OPSIZE_K_B, /* 10640 */
+  IC_EVEX_OPSIZE_K_B, /* 10641 */
+  IC_EVEX_OPSIZE_K_B, /* 10642 */
+  IC_EVEX_OPSIZE_K_B, /* 10643 */
+  IC_EVEX_OPSIZE_K_B, /* 10644 */
+  IC_EVEX_OPSIZE_K_B, /* 10645 */
+  IC_EVEX_OPSIZE_K_B, /* 10646 */
+  IC_EVEX_OPSIZE_K_B, /* 10647 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10648 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10649 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10650 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10651 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10652 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10653 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10654 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10655 */
+  IC_EVEX_K_B, /* 10656 */
+  IC_EVEX_K_B, /* 10657 */
+  IC_EVEX_XS_K_B, /* 10658 */
+  IC_EVEX_XS_K_B, /* 10659 */
+  IC_EVEX_XD_K_B, /* 10660 */
+  IC_EVEX_XD_K_B, /* 10661 */
+  IC_EVEX_XD_K_B, /* 10662 */
+  IC_EVEX_XD_K_B, /* 10663 */
+  IC_EVEX_W_K_B, /* 10664 */
+  IC_EVEX_W_K_B, /* 10665 */
+  IC_EVEX_W_XS_K_B, /* 10666 */
+  IC_EVEX_W_XS_K_B, /* 10667 */
+  IC_EVEX_W_XD_K_B, /* 10668 */
+  IC_EVEX_W_XD_K_B, /* 10669 */
+  IC_EVEX_W_XD_K_B, /* 10670 */
+  IC_EVEX_W_XD_K_B, /* 10671 */
+  IC_EVEX_OPSIZE_K_B, /* 10672 */
+  IC_EVEX_OPSIZE_K_B, /* 10673 */
+  IC_EVEX_OPSIZE_K_B, /* 10674 */
+  IC_EVEX_OPSIZE_K_B, /* 10675 */
+  IC_EVEX_OPSIZE_K_B, /* 10676 */
+  IC_EVEX_OPSIZE_K_B, /* 10677 */
+  IC_EVEX_OPSIZE_K_B, /* 10678 */
+  IC_EVEX_OPSIZE_K_B, /* 10679 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10680 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10681 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10682 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10683 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10684 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10685 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10686 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10687 */
+  IC_EVEX_K_B, /* 10688 */
+  IC_EVEX_K_B, /* 10689 */
+  IC_EVEX_XS_K_B, /* 10690 */
+  IC_EVEX_XS_K_B, /* 10691 */
+  IC_EVEX_XD_K_B, /* 10692 */
+  IC_EVEX_XD_K_B, /* 10693 */
+  IC_EVEX_XD_K_B, /* 10694 */
+  IC_EVEX_XD_K_B, /* 10695 */
+  IC_EVEX_W_K_B, /* 10696 */
+  IC_EVEX_W_K_B, /* 10697 */
+  IC_EVEX_W_XS_K_B, /* 10698 */
+  IC_EVEX_W_XS_K_B, /* 10699 */
+  IC_EVEX_W_XD_K_B, /* 10700 */
+  IC_EVEX_W_XD_K_B, /* 10701 */
+  IC_EVEX_W_XD_K_B, /* 10702 */
+  IC_EVEX_W_XD_K_B, /* 10703 */
+  IC_EVEX_OPSIZE_K_B, /* 10704 */
+  IC_EVEX_OPSIZE_K_B, /* 10705 */
+  IC_EVEX_OPSIZE_K_B, /* 10706 */
+  IC_EVEX_OPSIZE_K_B, /* 10707 */
+  IC_EVEX_OPSIZE_K_B, /* 10708 */
+  IC_EVEX_OPSIZE_K_B, /* 10709 */
+  IC_EVEX_OPSIZE_K_B, /* 10710 */
+  IC_EVEX_OPSIZE_K_B, /* 10711 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10712 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10713 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10714 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10715 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10716 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10717 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10718 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10719 */
+  IC_EVEX_K_B, /* 10720 */
+  IC_EVEX_K_B, /* 10721 */
+  IC_EVEX_XS_K_B, /* 10722 */
+  IC_EVEX_XS_K_B, /* 10723 */
+  IC_EVEX_XD_K_B, /* 10724 */
+  IC_EVEX_XD_K_B, /* 10725 */
+  IC_EVEX_XD_K_B, /* 10726 */
+  IC_EVEX_XD_K_B, /* 10727 */
+  IC_EVEX_W_K_B, /* 10728 */
+  IC_EVEX_W_K_B, /* 10729 */
+  IC_EVEX_W_XS_K_B, /* 10730 */
+  IC_EVEX_W_XS_K_B, /* 10731 */
+  IC_EVEX_W_XD_K_B, /* 10732 */
+  IC_EVEX_W_XD_K_B, /* 10733 */
+  IC_EVEX_W_XD_K_B, /* 10734 */
+  IC_EVEX_W_XD_K_B, /* 10735 */
+  IC_EVEX_OPSIZE_K_B, /* 10736 */
+  IC_EVEX_OPSIZE_K_B, /* 10737 */
+  IC_EVEX_OPSIZE_K_B, /* 10738 */
+  IC_EVEX_OPSIZE_K_B, /* 10739 */
+  IC_EVEX_OPSIZE_K_B, /* 10740 */
+  IC_EVEX_OPSIZE_K_B, /* 10741 */
+  IC_EVEX_OPSIZE_K_B, /* 10742 */
+  IC_EVEX_OPSIZE_K_B, /* 10743 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10744 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10745 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10746 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10747 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10748 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10749 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10750 */
+  IC_EVEX_W_OPSIZE_K_B, /* 10751 */
+  IC, /* 10752 */
+  IC_64BIT, /* 10753 */
+  IC_XS, /* 10754 */
+  IC_64BIT_XS, /* 10755 */
+  IC_XD, /* 10756 */
+  IC_64BIT_XD, /* 10757 */
+  IC_XS, /* 10758 */
+  IC_64BIT_XS, /* 10759 */
+  IC, /* 10760 */
+  IC_64BIT_REXW, /* 10761 */
+  IC_XS, /* 10762 */
+  IC_64BIT_REXW_XS, /* 10763 */
+  IC_XD, /* 10764 */
+  IC_64BIT_REXW_XD, /* 10765 */
+  IC_XS, /* 10766 */
+  IC_64BIT_REXW_XS, /* 10767 */
+  IC_OPSIZE, /* 10768 */
+  IC_64BIT_OPSIZE, /* 10769 */
+  IC_XS_OPSIZE, /* 10770 */
+  IC_64BIT_XS_OPSIZE, /* 10771 */
+  IC_XD_OPSIZE, /* 10772 */
+  IC_64BIT_XD_OPSIZE, /* 10773 */
+  IC_XS_OPSIZE, /* 10774 */
+  IC_64BIT_XD_OPSIZE, /* 10775 */
+  IC_OPSIZE, /* 10776 */
+  IC_64BIT_REXW_OPSIZE, /* 10777 */
+  IC_XS_OPSIZE, /* 10778 */
+  IC_64BIT_REXW_XS, /* 10779 */
+  IC_XD_OPSIZE, /* 10780 */
+  IC_64BIT_REXW_XD, /* 10781 */
+  IC_XS_OPSIZE, /* 10782 */
+  IC_64BIT_REXW_XS, /* 10783 */
+  IC_ADSIZE, /* 10784 */
+  IC_64BIT_ADSIZE, /* 10785 */
+  IC_XS, /* 10786 */
+  IC_64BIT_XS, /* 10787 */
+  IC_XD, /* 10788 */
+  IC_64BIT_XD, /* 10789 */
+  IC_XS, /* 10790 */
+  IC_64BIT_XS, /* 10791 */
+  IC_ADSIZE, /* 10792 */
+  IC_64BIT_ADSIZE, /* 10793 */
+  IC_XS, /* 10794 */
+  IC_64BIT_REXW_XS, /* 10795 */
+  IC_XD, /* 10796 */
+  IC_64BIT_REXW_XD, /* 10797 */
+  IC_XS, /* 10798 */
+  IC_64BIT_REXW_XS, /* 10799 */
+  IC_OPSIZE, /* 10800 */
+  IC_64BIT_OPSIZE, /* 10801 */
+  IC_XS_OPSIZE, /* 10802 */
+  IC_64BIT_XS_OPSIZE, /* 10803 */
+  IC_XD_OPSIZE, /* 10804 */
+  IC_64BIT_XD_OPSIZE, /* 10805 */
+  IC_XS_OPSIZE, /* 10806 */
+  IC_64BIT_XD_OPSIZE, /* 10807 */
+  IC_OPSIZE, /* 10808 */
+  IC_64BIT_REXW_OPSIZE, /* 10809 */
+  IC_XS_OPSIZE, /* 10810 */
+  IC_64BIT_REXW_XS, /* 10811 */
+  IC_XD_OPSIZE, /* 10812 */
+  IC_64BIT_REXW_XD, /* 10813 */
+  IC_XS_OPSIZE, /* 10814 */
+  IC_64BIT_REXW_XS, /* 10815 */
+  IC_VEX, /* 10816 */
+  IC_VEX, /* 10817 */
+  IC_VEX_XS, /* 10818 */
+  IC_VEX_XS, /* 10819 */
+  IC_VEX_XD, /* 10820 */
+  IC_VEX_XD, /* 10821 */
+  IC_VEX_XD, /* 10822 */
+  IC_VEX_XD, /* 10823 */
+  IC_VEX_W, /* 10824 */
+  IC_VEX_W, /* 10825 */
+  IC_VEX_W_XS, /* 10826 */
+  IC_VEX_W_XS, /* 10827 */
+  IC_VEX_W_XD, /* 10828 */
+  IC_VEX_W_XD, /* 10829 */
+  IC_VEX_W_XD, /* 10830 */
+  IC_VEX_W_XD, /* 10831 */
+  IC_VEX_OPSIZE, /* 10832 */
+  IC_VEX_OPSIZE, /* 10833 */
+  IC_VEX_OPSIZE, /* 10834 */
+  IC_VEX_OPSIZE, /* 10835 */
+  IC_VEX_OPSIZE, /* 10836 */
+  IC_VEX_OPSIZE, /* 10837 */
+  IC_VEX_OPSIZE, /* 10838 */
+  IC_VEX_OPSIZE, /* 10839 */
+  IC_VEX_W_OPSIZE, /* 10840 */
+  IC_VEX_W_OPSIZE, /* 10841 */
+  IC_VEX_W_OPSIZE, /* 10842 */
+  IC_VEX_W_OPSIZE, /* 10843 */
+  IC_VEX_W_OPSIZE, /* 10844 */
+  IC_VEX_W_OPSIZE, /* 10845 */
+  IC_VEX_W_OPSIZE, /* 10846 */
+  IC_VEX_W_OPSIZE, /* 10847 */
+  IC_VEX, /* 10848 */
+  IC_VEX, /* 10849 */
+  IC_VEX_XS, /* 10850 */
+  IC_VEX_XS, /* 10851 */
+  IC_VEX_XD, /* 10852 */
+  IC_VEX_XD, /* 10853 */
+  IC_VEX_XD, /* 10854 */
+  IC_VEX_XD, /* 10855 */
+  IC_VEX_W, /* 10856 */
+  IC_VEX_W, /* 10857 */
+  IC_VEX_W_XS, /* 10858 */
+  IC_VEX_W_XS, /* 10859 */
+  IC_VEX_W_XD, /* 10860 */
+  IC_VEX_W_XD, /* 10861 */
+  IC_VEX_W_XD, /* 10862 */
+  IC_VEX_W_XD, /* 10863 */
+  IC_VEX_OPSIZE, /* 10864 */
+  IC_VEX_OPSIZE, /* 10865 */
+  IC_VEX_OPSIZE, /* 10866 */
+  IC_VEX_OPSIZE, /* 10867 */
+  IC_VEX_OPSIZE, /* 10868 */
+  IC_VEX_OPSIZE, /* 10869 */
+  IC_VEX_OPSIZE, /* 10870 */
+  IC_VEX_OPSIZE, /* 10871 */
+  IC_VEX_W_OPSIZE, /* 10872 */
+  IC_VEX_W_OPSIZE, /* 10873 */
+  IC_VEX_W_OPSIZE, /* 10874 */
+  IC_VEX_W_OPSIZE, /* 10875 */
+  IC_VEX_W_OPSIZE, /* 10876 */
+  IC_VEX_W_OPSIZE, /* 10877 */
+  IC_VEX_W_OPSIZE, /* 10878 */
+  IC_VEX_W_OPSIZE, /* 10879 */
+  IC_VEX_L, /* 10880 */
+  IC_VEX_L, /* 10881 */
+  IC_VEX_L_XS, /* 10882 */
+  IC_VEX_L_XS, /* 10883 */
+  IC_VEX_L_XD, /* 10884 */
+  IC_VEX_L_XD, /* 10885 */
+  IC_VEX_L_XD, /* 10886 */
+  IC_VEX_L_XD, /* 10887 */
+  IC_VEX_L_W, /* 10888 */
+  IC_VEX_L_W, /* 10889 */
+  IC_VEX_L_W_XS, /* 10890 */
+  IC_VEX_L_W_XS, /* 10891 */
+  IC_VEX_L_W_XD, /* 10892 */
+  IC_VEX_L_W_XD, /* 10893 */
+  IC_VEX_L_W_XD, /* 10894 */
+  IC_VEX_L_W_XD, /* 10895 */
+  IC_VEX_L_OPSIZE, /* 10896 */
+  IC_VEX_L_OPSIZE, /* 10897 */
+  IC_VEX_L_OPSIZE, /* 10898 */
+  IC_VEX_L_OPSIZE, /* 10899 */
+  IC_VEX_L_OPSIZE, /* 10900 */
+  IC_VEX_L_OPSIZE, /* 10901 */
+  IC_VEX_L_OPSIZE, /* 10902 */
+  IC_VEX_L_OPSIZE, /* 10903 */
+  IC_VEX_L_W_OPSIZE, /* 10904 */
+  IC_VEX_L_W_OPSIZE, /* 10905 */
+  IC_VEX_L_W_OPSIZE, /* 10906 */
+  IC_VEX_L_W_OPSIZE, /* 10907 */
+  IC_VEX_L_W_OPSIZE, /* 10908 */
+  IC_VEX_L_W_OPSIZE, /* 10909 */
+  IC_VEX_L_W_OPSIZE, /* 10910 */
+  IC_VEX_L_W_OPSIZE, /* 10911 */
+  IC_VEX_L, /* 10912 */
+  IC_VEX_L, /* 10913 */
+  IC_VEX_L_XS, /* 10914 */
+  IC_VEX_L_XS, /* 10915 */
+  IC_VEX_L_XD, /* 10916 */
+  IC_VEX_L_XD, /* 10917 */
+  IC_VEX_L_XD, /* 10918 */
+  IC_VEX_L_XD, /* 10919 */
+  IC_VEX_L_W, /* 10920 */
+  IC_VEX_L_W, /* 10921 */
+  IC_VEX_L_W_XS, /* 10922 */
+  IC_VEX_L_W_XS, /* 10923 */
+  IC_VEX_L_W_XD, /* 10924 */
+  IC_VEX_L_W_XD, /* 10925 */
+  IC_VEX_L_W_XD, /* 10926 */
+  IC_VEX_L_W_XD, /* 10927 */
+  IC_VEX_L_OPSIZE, /* 10928 */
+  IC_VEX_L_OPSIZE, /* 10929 */
+  IC_VEX_L_OPSIZE, /* 10930 */
+  IC_VEX_L_OPSIZE, /* 10931 */
+  IC_VEX_L_OPSIZE, /* 10932 */
+  IC_VEX_L_OPSIZE, /* 10933 */
+  IC_VEX_L_OPSIZE, /* 10934 */
+  IC_VEX_L_OPSIZE, /* 10935 */
+  IC_VEX_L_W_OPSIZE, /* 10936 */
+  IC_VEX_L_W_OPSIZE, /* 10937 */
+  IC_VEX_L_W_OPSIZE, /* 10938 */
+  IC_VEX_L_W_OPSIZE, /* 10939 */
+  IC_VEX_L_W_OPSIZE, /* 10940 */
+  IC_VEX_L_W_OPSIZE, /* 10941 */
+  IC_VEX_L_W_OPSIZE, /* 10942 */
+  IC_VEX_L_W_OPSIZE, /* 10943 */
+  IC_VEX_L, /* 10944 */
+  IC_VEX_L, /* 10945 */
+  IC_VEX_L_XS, /* 10946 */
+  IC_VEX_L_XS, /* 10947 */
+  IC_VEX_L_XD, /* 10948 */
+  IC_VEX_L_XD, /* 10949 */
+  IC_VEX_L_XD, /* 10950 */
+  IC_VEX_L_XD, /* 10951 */
+  IC_VEX_L_W, /* 10952 */
+  IC_VEX_L_W, /* 10953 */
+  IC_VEX_L_W_XS, /* 10954 */
+  IC_VEX_L_W_XS, /* 10955 */
+  IC_VEX_L_W_XD, /* 10956 */
+  IC_VEX_L_W_XD, /* 10957 */
+  IC_VEX_L_W_XD, /* 10958 */
+  IC_VEX_L_W_XD, /* 10959 */
+  IC_VEX_L_OPSIZE, /* 10960 */
+  IC_VEX_L_OPSIZE, /* 10961 */
+  IC_VEX_L_OPSIZE, /* 10962 */
+  IC_VEX_L_OPSIZE, /* 10963 */
+  IC_VEX_L_OPSIZE, /* 10964 */
+  IC_VEX_L_OPSIZE, /* 10965 */
+  IC_VEX_L_OPSIZE, /* 10966 */
+  IC_VEX_L_OPSIZE, /* 10967 */
+  IC_VEX_L_W_OPSIZE, /* 10968 */
+  IC_VEX_L_W_OPSIZE, /* 10969 */
+  IC_VEX_L_W_OPSIZE, /* 10970 */
+  IC_VEX_L_W_OPSIZE, /* 10971 */
+  IC_VEX_L_W_OPSIZE, /* 10972 */
+  IC_VEX_L_W_OPSIZE, /* 10973 */
+  IC_VEX_L_W_OPSIZE, /* 10974 */
+  IC_VEX_L_W_OPSIZE, /* 10975 */
+  IC_VEX_L, /* 10976 */
+  IC_VEX_L, /* 10977 */
+  IC_VEX_L_XS, /* 10978 */
+  IC_VEX_L_XS, /* 10979 */
+  IC_VEX_L_XD, /* 10980 */
+  IC_VEX_L_XD, /* 10981 */
+  IC_VEX_L_XD, /* 10982 */
+  IC_VEX_L_XD, /* 10983 */
+  IC_VEX_L_W, /* 10984 */
+  IC_VEX_L_W, /* 10985 */
+  IC_VEX_L_W_XS, /* 10986 */
+  IC_VEX_L_W_XS, /* 10987 */
+  IC_VEX_L_W_XD, /* 10988 */
+  IC_VEX_L_W_XD, /* 10989 */
+  IC_VEX_L_W_XD, /* 10990 */
+  IC_VEX_L_W_XD, /* 10991 */
+  IC_VEX_L_OPSIZE, /* 10992 */
+  IC_VEX_L_OPSIZE, /* 10993 */
+  IC_VEX_L_OPSIZE, /* 10994 */
+  IC_VEX_L_OPSIZE, /* 10995 */
+  IC_VEX_L_OPSIZE, /* 10996 */
+  IC_VEX_L_OPSIZE, /* 10997 */
+  IC_VEX_L_OPSIZE, /* 10998 */
+  IC_VEX_L_OPSIZE, /* 10999 */
+  IC_VEX_L_W_OPSIZE, /* 11000 */
+  IC_VEX_L_W_OPSIZE, /* 11001 */
+  IC_VEX_L_W_OPSIZE, /* 11002 */
+  IC_VEX_L_W_OPSIZE, /* 11003 */
+  IC_VEX_L_W_OPSIZE, /* 11004 */
+  IC_VEX_L_W_OPSIZE, /* 11005 */
+  IC_VEX_L_W_OPSIZE, /* 11006 */
+  IC_VEX_L_W_OPSIZE, /* 11007 */
+  IC_EVEX_L_K_B, /* 11008 */
+  IC_EVEX_L_K_B, /* 11009 */
+  IC_EVEX_L_XS_K_B, /* 11010 */
+  IC_EVEX_L_XS_K_B, /* 11011 */
+  IC_EVEX_L_XD_K_B, /* 11012 */
+  IC_EVEX_L_XD_K_B, /* 11013 */
+  IC_EVEX_L_XD_K_B, /* 11014 */
+  IC_EVEX_L_XD_K_B, /* 11015 */
+  IC_EVEX_L_W_K_B, /* 11016 */
+  IC_EVEX_L_W_K_B, /* 11017 */
+  IC_EVEX_L_W_XS_K_B, /* 11018 */
+  IC_EVEX_L_W_XS_K_B, /* 11019 */
+  IC_EVEX_L_W_XD_K_B, /* 11020 */
+  IC_EVEX_L_W_XD_K_B, /* 11021 */
+  IC_EVEX_L_W_XD_K_B, /* 11022 */
+  IC_EVEX_L_W_XD_K_B, /* 11023 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11024 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11025 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11026 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11027 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11028 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11029 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11030 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11031 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11032 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11033 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11034 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11035 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11036 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11037 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11038 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11039 */
+  IC_EVEX_L_K_B, /* 11040 */
+  IC_EVEX_L_K_B, /* 11041 */
+  IC_EVEX_L_XS_K_B, /* 11042 */
+  IC_EVEX_L_XS_K_B, /* 11043 */
+  IC_EVEX_L_XD_K_B, /* 11044 */
+  IC_EVEX_L_XD_K_B, /* 11045 */
+  IC_EVEX_L_XD_K_B, /* 11046 */
+  IC_EVEX_L_XD_K_B, /* 11047 */
+  IC_EVEX_L_W_K_B, /* 11048 */
+  IC_EVEX_L_W_K_B, /* 11049 */
+  IC_EVEX_L_W_XS_K_B, /* 11050 */
+  IC_EVEX_L_W_XS_K_B, /* 11051 */
+  IC_EVEX_L_W_XD_K_B, /* 11052 */
+  IC_EVEX_L_W_XD_K_B, /* 11053 */
+  IC_EVEX_L_W_XD_K_B, /* 11054 */
+  IC_EVEX_L_W_XD_K_B, /* 11055 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11056 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11057 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11058 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11059 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11060 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11061 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11062 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11063 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11064 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11065 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11066 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11067 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11068 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11069 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11070 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11071 */
+  IC_EVEX_L_K_B, /* 11072 */
+  IC_EVEX_L_K_B, /* 11073 */
+  IC_EVEX_L_XS_K_B, /* 11074 */
+  IC_EVEX_L_XS_K_B, /* 11075 */
+  IC_EVEX_L_XD_K_B, /* 11076 */
+  IC_EVEX_L_XD_K_B, /* 11077 */
+  IC_EVEX_L_XD_K_B, /* 11078 */
+  IC_EVEX_L_XD_K_B, /* 11079 */
+  IC_EVEX_L_W_K_B, /* 11080 */
+  IC_EVEX_L_W_K_B, /* 11081 */
+  IC_EVEX_L_W_XS_K_B, /* 11082 */
+  IC_EVEX_L_W_XS_K_B, /* 11083 */
+  IC_EVEX_L_W_XD_K_B, /* 11084 */
+  IC_EVEX_L_W_XD_K_B, /* 11085 */
+  IC_EVEX_L_W_XD_K_B, /* 11086 */
+  IC_EVEX_L_W_XD_K_B, /* 11087 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11088 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11089 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11090 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11091 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11092 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11093 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11094 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11095 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11096 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11097 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11098 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11099 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11100 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11101 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11102 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11103 */
+  IC_EVEX_L_K_B, /* 11104 */
+  IC_EVEX_L_K_B, /* 11105 */
+  IC_EVEX_L_XS_K_B, /* 11106 */
+  IC_EVEX_L_XS_K_B, /* 11107 */
+  IC_EVEX_L_XD_K_B, /* 11108 */
+  IC_EVEX_L_XD_K_B, /* 11109 */
+  IC_EVEX_L_XD_K_B, /* 11110 */
+  IC_EVEX_L_XD_K_B, /* 11111 */
+  IC_EVEX_L_W_K_B, /* 11112 */
+  IC_EVEX_L_W_K_B, /* 11113 */
+  IC_EVEX_L_W_XS_K_B, /* 11114 */
+  IC_EVEX_L_W_XS_K_B, /* 11115 */
+  IC_EVEX_L_W_XD_K_B, /* 11116 */
+  IC_EVEX_L_W_XD_K_B, /* 11117 */
+  IC_EVEX_L_W_XD_K_B, /* 11118 */
+  IC_EVEX_L_W_XD_K_B, /* 11119 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11120 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11121 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11122 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11123 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11124 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11125 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11126 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11127 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11128 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11129 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11130 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11131 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11132 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11133 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11134 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11135 */
+  IC_EVEX_L_K_B, /* 11136 */
+  IC_EVEX_L_K_B, /* 11137 */
+  IC_EVEX_L_XS_K_B, /* 11138 */
+  IC_EVEX_L_XS_K_B, /* 11139 */
+  IC_EVEX_L_XD_K_B, /* 11140 */
+  IC_EVEX_L_XD_K_B, /* 11141 */
+  IC_EVEX_L_XD_K_B, /* 11142 */
+  IC_EVEX_L_XD_K_B, /* 11143 */
+  IC_EVEX_L_W_K_B, /* 11144 */
+  IC_EVEX_L_W_K_B, /* 11145 */
+  IC_EVEX_L_W_XS_K_B, /* 11146 */
+  IC_EVEX_L_W_XS_K_B, /* 11147 */
+  IC_EVEX_L_W_XD_K_B, /* 11148 */
+  IC_EVEX_L_W_XD_K_B, /* 11149 */
+  IC_EVEX_L_W_XD_K_B, /* 11150 */
+  IC_EVEX_L_W_XD_K_B, /* 11151 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11152 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11153 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11154 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11155 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11156 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11157 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11158 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11159 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11160 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11161 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11162 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11163 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11164 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11165 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11166 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11167 */
+  IC_EVEX_L_K_B, /* 11168 */
+  IC_EVEX_L_K_B, /* 11169 */
+  IC_EVEX_L_XS_K_B, /* 11170 */
+  IC_EVEX_L_XS_K_B, /* 11171 */
+  IC_EVEX_L_XD_K_B, /* 11172 */
+  IC_EVEX_L_XD_K_B, /* 11173 */
+  IC_EVEX_L_XD_K_B, /* 11174 */
+  IC_EVEX_L_XD_K_B, /* 11175 */
+  IC_EVEX_L_W_K_B, /* 11176 */
+  IC_EVEX_L_W_K_B, /* 11177 */
+  IC_EVEX_L_W_XS_K_B, /* 11178 */
+  IC_EVEX_L_W_XS_K_B, /* 11179 */
+  IC_EVEX_L_W_XD_K_B, /* 11180 */
+  IC_EVEX_L_W_XD_K_B, /* 11181 */
+  IC_EVEX_L_W_XD_K_B, /* 11182 */
+  IC_EVEX_L_W_XD_K_B, /* 11183 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11184 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11185 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11186 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11187 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11188 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11189 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11190 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11191 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11192 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11193 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11194 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11195 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11196 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11197 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11198 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11199 */
+  IC_EVEX_L_K_B, /* 11200 */
+  IC_EVEX_L_K_B, /* 11201 */
+  IC_EVEX_L_XS_K_B, /* 11202 */
+  IC_EVEX_L_XS_K_B, /* 11203 */
+  IC_EVEX_L_XD_K_B, /* 11204 */
+  IC_EVEX_L_XD_K_B, /* 11205 */
+  IC_EVEX_L_XD_K_B, /* 11206 */
+  IC_EVEX_L_XD_K_B, /* 11207 */
+  IC_EVEX_L_W_K_B, /* 11208 */
+  IC_EVEX_L_W_K_B, /* 11209 */
+  IC_EVEX_L_W_XS_K_B, /* 11210 */
+  IC_EVEX_L_W_XS_K_B, /* 11211 */
+  IC_EVEX_L_W_XD_K_B, /* 11212 */
+  IC_EVEX_L_W_XD_K_B, /* 11213 */
+  IC_EVEX_L_W_XD_K_B, /* 11214 */
+  IC_EVEX_L_W_XD_K_B, /* 11215 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11216 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11217 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11218 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11219 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11220 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11221 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11222 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11223 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11224 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11225 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11226 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11227 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11228 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11229 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11230 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11231 */
+  IC_EVEX_L_K_B, /* 11232 */
+  IC_EVEX_L_K_B, /* 11233 */
+  IC_EVEX_L_XS_K_B, /* 11234 */
+  IC_EVEX_L_XS_K_B, /* 11235 */
+  IC_EVEX_L_XD_K_B, /* 11236 */
+  IC_EVEX_L_XD_K_B, /* 11237 */
+  IC_EVEX_L_XD_K_B, /* 11238 */
+  IC_EVEX_L_XD_K_B, /* 11239 */
+  IC_EVEX_L_W_K_B, /* 11240 */
+  IC_EVEX_L_W_K_B, /* 11241 */
+  IC_EVEX_L_W_XS_K_B, /* 11242 */
+  IC_EVEX_L_W_XS_K_B, /* 11243 */
+  IC_EVEX_L_W_XD_K_B, /* 11244 */
+  IC_EVEX_L_W_XD_K_B, /* 11245 */
+  IC_EVEX_L_W_XD_K_B, /* 11246 */
+  IC_EVEX_L_W_XD_K_B, /* 11247 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11248 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11249 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11250 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11251 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11252 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11253 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11254 */
+  IC_EVEX_L_OPSIZE_K_B, /* 11255 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11256 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11257 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11258 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11259 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11260 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11261 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11262 */
+  IC_EVEX_L_W_OPSIZE_K_B, /* 11263 */
+  IC, /* 11264 */
+  IC_64BIT, /* 11265 */
+  IC_XS, /* 11266 */
+  IC_64BIT_XS, /* 11267 */
+  IC_XD, /* 11268 */
+  IC_64BIT_XD, /* 11269 */
+  IC_XS, /* 11270 */
+  IC_64BIT_XS, /* 11271 */
+  IC, /* 11272 */
+  IC_64BIT_REXW, /* 11273 */
+  IC_XS, /* 11274 */
+  IC_64BIT_REXW_XS, /* 11275 */
+  IC_XD, /* 11276 */
+  IC_64BIT_REXW_XD, /* 11277 */
+  IC_XS, /* 11278 */
+  IC_64BIT_REXW_XS, /* 11279 */
+  IC_OPSIZE, /* 11280 */
+  IC_64BIT_OPSIZE, /* 11281 */
+  IC_XS_OPSIZE, /* 11282 */
+  IC_64BIT_XS_OPSIZE, /* 11283 */
+  IC_XD_OPSIZE, /* 11284 */
+  IC_64BIT_XD_OPSIZE, /* 11285 */
+  IC_XS_OPSIZE, /* 11286 */
+  IC_64BIT_XD_OPSIZE, /* 11287 */
+  IC_OPSIZE, /* 11288 */
+  IC_64BIT_REXW_OPSIZE, /* 11289 */
+  IC_XS_OPSIZE, /* 11290 */
+  IC_64BIT_REXW_XS, /* 11291 */
+  IC_XD_OPSIZE, /* 11292 */
+  IC_64BIT_REXW_XD, /* 11293 */
+  IC_XS_OPSIZE, /* 11294 */
+  IC_64BIT_REXW_XS, /* 11295 */
+  IC_ADSIZE, /* 11296 */
+  IC_64BIT_ADSIZE, /* 11297 */
+  IC_XS, /* 11298 */
+  IC_64BIT_XS, /* 11299 */
+  IC_XD, /* 11300 */
+  IC_64BIT_XD, /* 11301 */
+  IC_XS, /* 11302 */
+  IC_64BIT_XS, /* 11303 */
+  IC_ADSIZE, /* 11304 */
+  IC_64BIT_ADSIZE, /* 11305 */
+  IC_XS, /* 11306 */
+  IC_64BIT_REXW_XS, /* 11307 */
+  IC_XD, /* 11308 */
+  IC_64BIT_REXW_XD, /* 11309 */
+  IC_XS, /* 11310 */
+  IC_64BIT_REXW_XS, /* 11311 */
+  IC_OPSIZE, /* 11312 */
+  IC_64BIT_OPSIZE, /* 11313 */
+  IC_XS_OPSIZE, /* 11314 */
+  IC_64BIT_XS_OPSIZE, /* 11315 */
+  IC_XD_OPSIZE, /* 11316 */
+  IC_64BIT_XD_OPSIZE, /* 11317 */
+  IC_XS_OPSIZE, /* 11318 */
+  IC_64BIT_XD_OPSIZE, /* 11319 */
+  IC_OPSIZE, /* 11320 */
+  IC_64BIT_REXW_OPSIZE, /* 11321 */
+  IC_XS_OPSIZE, /* 11322 */
+  IC_64BIT_REXW_XS, /* 11323 */
+  IC_XD_OPSIZE, /* 11324 */
+  IC_64BIT_REXW_XD, /* 11325 */
+  IC_XS_OPSIZE, /* 11326 */
+  IC_64BIT_REXW_XS, /* 11327 */
+  IC_VEX, /* 11328 */
+  IC_VEX, /* 11329 */
+  IC_VEX_XS, /* 11330 */
+  IC_VEX_XS, /* 11331 */
+  IC_VEX_XD, /* 11332 */
+  IC_VEX_XD, /* 11333 */
+  IC_VEX_XD, /* 11334 */
+  IC_VEX_XD, /* 11335 */
+  IC_VEX_W, /* 11336 */
+  IC_VEX_W, /* 11337 */
+  IC_VEX_W_XS, /* 11338 */
+  IC_VEX_W_XS, /* 11339 */
+  IC_VEX_W_XD, /* 11340 */
+  IC_VEX_W_XD, /* 11341 */
+  IC_VEX_W_XD, /* 11342 */
+  IC_VEX_W_XD, /* 11343 */
+  IC_VEX_OPSIZE, /* 11344 */
+  IC_VEX_OPSIZE, /* 11345 */
+  IC_VEX_OPSIZE, /* 11346 */
+  IC_VEX_OPSIZE, /* 11347 */
+  IC_VEX_OPSIZE, /* 11348 */
+  IC_VEX_OPSIZE, /* 11349 */
+  IC_VEX_OPSIZE, /* 11350 */
+  IC_VEX_OPSIZE, /* 11351 */
+  IC_VEX_W_OPSIZE, /* 11352 */
+  IC_VEX_W_OPSIZE, /* 11353 */
+  IC_VEX_W_OPSIZE, /* 11354 */
+  IC_VEX_W_OPSIZE, /* 11355 */
+  IC_VEX_W_OPSIZE, /* 11356 */
+  IC_VEX_W_OPSIZE, /* 11357 */
+  IC_VEX_W_OPSIZE, /* 11358 */
+  IC_VEX_W_OPSIZE, /* 11359 */
+  IC_VEX, /* 11360 */
+  IC_VEX, /* 11361 */
+  IC_VEX_XS, /* 11362 */
+  IC_VEX_XS, /* 11363 */
+  IC_VEX_XD, /* 11364 */
+  IC_VEX_XD, /* 11365 */
+  IC_VEX_XD, /* 11366 */
+  IC_VEX_XD, /* 11367 */
+  IC_VEX_W, /* 11368 */
+  IC_VEX_W, /* 11369 */
+  IC_VEX_W_XS, /* 11370 */
+  IC_VEX_W_XS, /* 11371 */
+  IC_VEX_W_XD, /* 11372 */
+  IC_VEX_W_XD, /* 11373 */
+  IC_VEX_W_XD, /* 11374 */
+  IC_VEX_W_XD, /* 11375 */
+  IC_VEX_OPSIZE, /* 11376 */
+  IC_VEX_OPSIZE, /* 11377 */
+  IC_VEX_OPSIZE, /* 11378 */
+  IC_VEX_OPSIZE, /* 11379 */
+  IC_VEX_OPSIZE, /* 11380 */
+  IC_VEX_OPSIZE, /* 11381 */
+  IC_VEX_OPSIZE, /* 11382 */
+  IC_VEX_OPSIZE, /* 11383 */
+  IC_VEX_W_OPSIZE, /* 11384 */
+  IC_VEX_W_OPSIZE, /* 11385 */
+  IC_VEX_W_OPSIZE, /* 11386 */
+  IC_VEX_W_OPSIZE, /* 11387 */
+  IC_VEX_W_OPSIZE, /* 11388 */
+  IC_VEX_W_OPSIZE, /* 11389 */
+  IC_VEX_W_OPSIZE, /* 11390 */
+  IC_VEX_W_OPSIZE, /* 11391 */
+  IC_VEX_L, /* 11392 */
+  IC_VEX_L, /* 11393 */
+  IC_VEX_L_XS, /* 11394 */
+  IC_VEX_L_XS, /* 11395 */
+  IC_VEX_L_XD, /* 11396 */
+  IC_VEX_L_XD, /* 11397 */
+  IC_VEX_L_XD, /* 11398 */
+  IC_VEX_L_XD, /* 11399 */
+  IC_VEX_L_W, /* 11400 */
+  IC_VEX_L_W, /* 11401 */
+  IC_VEX_L_W_XS, /* 11402 */
+  IC_VEX_L_W_XS, /* 11403 */
+  IC_VEX_L_W_XD, /* 11404 */
+  IC_VEX_L_W_XD, /* 11405 */
+  IC_VEX_L_W_XD, /* 11406 */
+  IC_VEX_L_W_XD, /* 11407 */
+  IC_VEX_L_OPSIZE, /* 11408 */
+  IC_VEX_L_OPSIZE, /* 11409 */
+  IC_VEX_L_OPSIZE, /* 11410 */
+  IC_VEX_L_OPSIZE, /* 11411 */
+  IC_VEX_L_OPSIZE, /* 11412 */
+  IC_VEX_L_OPSIZE, /* 11413 */
+  IC_VEX_L_OPSIZE, /* 11414 */
+  IC_VEX_L_OPSIZE, /* 11415 */
+  IC_VEX_L_W_OPSIZE, /* 11416 */
+  IC_VEX_L_W_OPSIZE, /* 11417 */
+  IC_VEX_L_W_OPSIZE, /* 11418 */
+  IC_VEX_L_W_OPSIZE, /* 11419 */
+  IC_VEX_L_W_OPSIZE, /* 11420 */
+  IC_VEX_L_W_OPSIZE, /* 11421 */
+  IC_VEX_L_W_OPSIZE, /* 11422 */
+  IC_VEX_L_W_OPSIZE, /* 11423 */
+  IC_VEX_L, /* 11424 */
+  IC_VEX_L, /* 11425 */
+  IC_VEX_L_XS, /* 11426 */
+  IC_VEX_L_XS, /* 11427 */
+  IC_VEX_L_XD, /* 11428 */
+  IC_VEX_L_XD, /* 11429 */
+  IC_VEX_L_XD, /* 11430 */
+  IC_VEX_L_XD, /* 11431 */
+  IC_VEX_L_W, /* 11432 */
+  IC_VEX_L_W, /* 11433 */
+  IC_VEX_L_W_XS, /* 11434 */
+  IC_VEX_L_W_XS, /* 11435 */
+  IC_VEX_L_W_XD, /* 11436 */
+  IC_VEX_L_W_XD, /* 11437 */
+  IC_VEX_L_W_XD, /* 11438 */
+  IC_VEX_L_W_XD, /* 11439 */
+  IC_VEX_L_OPSIZE, /* 11440 */
+  IC_VEX_L_OPSIZE, /* 11441 */
+  IC_VEX_L_OPSIZE, /* 11442 */
+  IC_VEX_L_OPSIZE, /* 11443 */
+  IC_VEX_L_OPSIZE, /* 11444 */
+  IC_VEX_L_OPSIZE, /* 11445 */
+  IC_VEX_L_OPSIZE, /* 11446 */
+  IC_VEX_L_OPSIZE, /* 11447 */
+  IC_VEX_L_W_OPSIZE, /* 11448 */
+  IC_VEX_L_W_OPSIZE, /* 11449 */
+  IC_VEX_L_W_OPSIZE, /* 11450 */
+  IC_VEX_L_W_OPSIZE, /* 11451 */
+  IC_VEX_L_W_OPSIZE, /* 11452 */
+  IC_VEX_L_W_OPSIZE, /* 11453 */
+  IC_VEX_L_W_OPSIZE, /* 11454 */
+  IC_VEX_L_W_OPSIZE, /* 11455 */
+  IC_VEX_L, /* 11456 */
+  IC_VEX_L, /* 11457 */
+  IC_VEX_L_XS, /* 11458 */
+  IC_VEX_L_XS, /* 11459 */
+  IC_VEX_L_XD, /* 11460 */
+  IC_VEX_L_XD, /* 11461 */
+  IC_VEX_L_XD, /* 11462 */
+  IC_VEX_L_XD, /* 11463 */
+  IC_VEX_L_W, /* 11464 */
+  IC_VEX_L_W, /* 11465 */
+  IC_VEX_L_W_XS, /* 11466 */
+  IC_VEX_L_W_XS, /* 11467 */
+  IC_VEX_L_W_XD, /* 11468 */
+  IC_VEX_L_W_XD, /* 11469 */
+  IC_VEX_L_W_XD, /* 11470 */
+  IC_VEX_L_W_XD, /* 11471 */
+  IC_VEX_L_OPSIZE, /* 11472 */
+  IC_VEX_L_OPSIZE, /* 11473 */
+  IC_VEX_L_OPSIZE, /* 11474 */
+  IC_VEX_L_OPSIZE, /* 11475 */
+  IC_VEX_L_OPSIZE, /* 11476 */
+  IC_VEX_L_OPSIZE, /* 11477 */
+  IC_VEX_L_OPSIZE, /* 11478 */
+  IC_VEX_L_OPSIZE, /* 11479 */
+  IC_VEX_L_W_OPSIZE, /* 11480 */
+  IC_VEX_L_W_OPSIZE, /* 11481 */
+  IC_VEX_L_W_OPSIZE, /* 11482 */
+  IC_VEX_L_W_OPSIZE, /* 11483 */
+  IC_VEX_L_W_OPSIZE, /* 11484 */
+  IC_VEX_L_W_OPSIZE, /* 11485 */
+  IC_VEX_L_W_OPSIZE, /* 11486 */
+  IC_VEX_L_W_OPSIZE, /* 11487 */
+  IC_VEX_L, /* 11488 */
+  IC_VEX_L, /* 11489 */
+  IC_VEX_L_XS, /* 11490 */
+  IC_VEX_L_XS, /* 11491 */
+  IC_VEX_L_XD, /* 11492 */
+  IC_VEX_L_XD, /* 11493 */
+  IC_VEX_L_XD, /* 11494 */
+  IC_VEX_L_XD, /* 11495 */
+  IC_VEX_L_W, /* 11496 */
+  IC_VEX_L_W, /* 11497 */
+  IC_VEX_L_W_XS, /* 11498 */
+  IC_VEX_L_W_XS, /* 11499 */
+  IC_VEX_L_W_XD, /* 11500 */
+  IC_VEX_L_W_XD, /* 11501 */
+  IC_VEX_L_W_XD, /* 11502 */
+  IC_VEX_L_W_XD, /* 11503 */
+  IC_VEX_L_OPSIZE, /* 11504 */
+  IC_VEX_L_OPSIZE, /* 11505 */
+  IC_VEX_L_OPSIZE, /* 11506 */
+  IC_VEX_L_OPSIZE, /* 11507 */
+  IC_VEX_L_OPSIZE, /* 11508 */
+  IC_VEX_L_OPSIZE, /* 11509 */
+  IC_VEX_L_OPSIZE, /* 11510 */
+  IC_VEX_L_OPSIZE, /* 11511 */
+  IC_VEX_L_W_OPSIZE, /* 11512 */
+  IC_VEX_L_W_OPSIZE, /* 11513 */
+  IC_VEX_L_W_OPSIZE, /* 11514 */
+  IC_VEX_L_W_OPSIZE, /* 11515 */
+  IC_VEX_L_W_OPSIZE, /* 11516 */
+  IC_VEX_L_W_OPSIZE, /* 11517 */
+  IC_VEX_L_W_OPSIZE, /* 11518 */
+  IC_VEX_L_W_OPSIZE, /* 11519 */
+  IC_EVEX_L2_K_B, /* 11520 */
+  IC_EVEX_L2_K_B, /* 11521 */
+  IC_EVEX_L2_XS_K_B, /* 11522 */
+  IC_EVEX_L2_XS_K_B, /* 11523 */
+  IC_EVEX_L2_XD_K_B, /* 11524 */
+  IC_EVEX_L2_XD_K_B, /* 11525 */
+  IC_EVEX_L2_XD_K_B, /* 11526 */
+  IC_EVEX_L2_XD_K_B, /* 11527 */
+  IC_EVEX_L2_W_K_B, /* 11528 */
+  IC_EVEX_L2_W_K_B, /* 11529 */
+  IC_EVEX_L2_W_XS_K_B, /* 11530 */
+  IC_EVEX_L2_W_XS_K_B, /* 11531 */
+  IC_EVEX_L2_W_XD_K_B, /* 11532 */
+  IC_EVEX_L2_W_XD_K_B, /* 11533 */
+  IC_EVEX_L2_W_XD_K_B, /* 11534 */
+  IC_EVEX_L2_W_XD_K_B, /* 11535 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11536 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11537 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11538 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11539 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11540 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11541 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11542 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11543 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11544 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11545 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11546 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11547 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11548 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11549 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11550 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11551 */
+  IC_EVEX_L2_K_B, /* 11552 */
+  IC_EVEX_L2_K_B, /* 11553 */
+  IC_EVEX_L2_XS_K_B, /* 11554 */
+  IC_EVEX_L2_XS_K_B, /* 11555 */
+  IC_EVEX_L2_XD_K_B, /* 11556 */
+  IC_EVEX_L2_XD_K_B, /* 11557 */
+  IC_EVEX_L2_XD_K_B, /* 11558 */
+  IC_EVEX_L2_XD_K_B, /* 11559 */
+  IC_EVEX_L2_W_K_B, /* 11560 */
+  IC_EVEX_L2_W_K_B, /* 11561 */
+  IC_EVEX_L2_W_XS_K_B, /* 11562 */
+  IC_EVEX_L2_W_XS_K_B, /* 11563 */
+  IC_EVEX_L2_W_XD_K_B, /* 11564 */
+  IC_EVEX_L2_W_XD_K_B, /* 11565 */
+  IC_EVEX_L2_W_XD_K_B, /* 11566 */
+  IC_EVEX_L2_W_XD_K_B, /* 11567 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11568 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11569 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11570 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11571 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11572 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11573 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11574 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11575 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11576 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11577 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11578 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11579 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11580 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11581 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11582 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11583 */
+  IC_EVEX_L2_K_B, /* 11584 */
+  IC_EVEX_L2_K_B, /* 11585 */
+  IC_EVEX_L2_XS_K_B, /* 11586 */
+  IC_EVEX_L2_XS_K_B, /* 11587 */
+  IC_EVEX_L2_XD_K_B, /* 11588 */
+  IC_EVEX_L2_XD_K_B, /* 11589 */
+  IC_EVEX_L2_XD_K_B, /* 11590 */
+  IC_EVEX_L2_XD_K_B, /* 11591 */
+  IC_EVEX_L2_W_K_B, /* 11592 */
+  IC_EVEX_L2_W_K_B, /* 11593 */
+  IC_EVEX_L2_W_XS_K_B, /* 11594 */
+  IC_EVEX_L2_W_XS_K_B, /* 11595 */
+  IC_EVEX_L2_W_XD_K_B, /* 11596 */
+  IC_EVEX_L2_W_XD_K_B, /* 11597 */
+  IC_EVEX_L2_W_XD_K_B, /* 11598 */
+  IC_EVEX_L2_W_XD_K_B, /* 11599 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11600 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11601 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11602 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11603 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11604 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11605 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11606 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11607 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11608 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11609 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11610 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11611 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11612 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11613 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11614 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11615 */
+  IC_EVEX_L2_K_B, /* 11616 */
+  IC_EVEX_L2_K_B, /* 11617 */
+  IC_EVEX_L2_XS_K_B, /* 11618 */
+  IC_EVEX_L2_XS_K_B, /* 11619 */
+  IC_EVEX_L2_XD_K_B, /* 11620 */
+  IC_EVEX_L2_XD_K_B, /* 11621 */
+  IC_EVEX_L2_XD_K_B, /* 11622 */
+  IC_EVEX_L2_XD_K_B, /* 11623 */
+  IC_EVEX_L2_W_K_B, /* 11624 */
+  IC_EVEX_L2_W_K_B, /* 11625 */
+  IC_EVEX_L2_W_XS_K_B, /* 11626 */
+  IC_EVEX_L2_W_XS_K_B, /* 11627 */
+  IC_EVEX_L2_W_XD_K_B, /* 11628 */
+  IC_EVEX_L2_W_XD_K_B, /* 11629 */
+  IC_EVEX_L2_W_XD_K_B, /* 11630 */
+  IC_EVEX_L2_W_XD_K_B, /* 11631 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11632 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11633 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11634 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11635 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11636 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11637 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11638 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11639 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11640 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11641 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11642 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11643 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11644 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11645 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11646 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11647 */
+  IC_EVEX_L2_K_B, /* 11648 */
+  IC_EVEX_L2_K_B, /* 11649 */
+  IC_EVEX_L2_XS_K_B, /* 11650 */
+  IC_EVEX_L2_XS_K_B, /* 11651 */
+  IC_EVEX_L2_XD_K_B, /* 11652 */
+  IC_EVEX_L2_XD_K_B, /* 11653 */
+  IC_EVEX_L2_XD_K_B, /* 11654 */
+  IC_EVEX_L2_XD_K_B, /* 11655 */
+  IC_EVEX_L2_W_K_B, /* 11656 */
+  IC_EVEX_L2_W_K_B, /* 11657 */
+  IC_EVEX_L2_W_XS_K_B, /* 11658 */
+  IC_EVEX_L2_W_XS_K_B, /* 11659 */
+  IC_EVEX_L2_W_XD_K_B, /* 11660 */
+  IC_EVEX_L2_W_XD_K_B, /* 11661 */
+  IC_EVEX_L2_W_XD_K_B, /* 11662 */
+  IC_EVEX_L2_W_XD_K_B, /* 11663 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11664 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11665 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11666 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11667 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11668 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11669 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11670 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11671 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11672 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11673 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11674 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11675 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11676 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11677 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11678 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11679 */
+  IC_EVEX_L2_K_B, /* 11680 */
+  IC_EVEX_L2_K_B, /* 11681 */
+  IC_EVEX_L2_XS_K_B, /* 11682 */
+  IC_EVEX_L2_XS_K_B, /* 11683 */
+  IC_EVEX_L2_XD_K_B, /* 11684 */
+  IC_EVEX_L2_XD_K_B, /* 11685 */
+  IC_EVEX_L2_XD_K_B, /* 11686 */
+  IC_EVEX_L2_XD_K_B, /* 11687 */
+  IC_EVEX_L2_W_K_B, /* 11688 */
+  IC_EVEX_L2_W_K_B, /* 11689 */
+  IC_EVEX_L2_W_XS_K_B, /* 11690 */
+  IC_EVEX_L2_W_XS_K_B, /* 11691 */
+  IC_EVEX_L2_W_XD_K_B, /* 11692 */
+  IC_EVEX_L2_W_XD_K_B, /* 11693 */
+  IC_EVEX_L2_W_XD_K_B, /* 11694 */
+  IC_EVEX_L2_W_XD_K_B, /* 11695 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11696 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11697 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11698 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11699 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11700 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11701 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11702 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11703 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11704 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11705 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11706 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11707 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11708 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11709 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11710 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11711 */
+  IC_EVEX_L2_K_B, /* 11712 */
+  IC_EVEX_L2_K_B, /* 11713 */
+  IC_EVEX_L2_XS_K_B, /* 11714 */
+  IC_EVEX_L2_XS_K_B, /* 11715 */
+  IC_EVEX_L2_XD_K_B, /* 11716 */
+  IC_EVEX_L2_XD_K_B, /* 11717 */
+  IC_EVEX_L2_XD_K_B, /* 11718 */
+  IC_EVEX_L2_XD_K_B, /* 11719 */
+  IC_EVEX_L2_W_K_B, /* 11720 */
+  IC_EVEX_L2_W_K_B, /* 11721 */
+  IC_EVEX_L2_W_XS_K_B, /* 11722 */
+  IC_EVEX_L2_W_XS_K_B, /* 11723 */
+  IC_EVEX_L2_W_XD_K_B, /* 11724 */
+  IC_EVEX_L2_W_XD_K_B, /* 11725 */
+  IC_EVEX_L2_W_XD_K_B, /* 11726 */
+  IC_EVEX_L2_W_XD_K_B, /* 11727 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11728 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11729 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11730 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11731 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11732 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11733 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11734 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11735 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11736 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11737 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11738 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11739 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11740 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11741 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11742 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11743 */
+  IC_EVEX_L2_K_B, /* 11744 */
+  IC_EVEX_L2_K_B, /* 11745 */
+  IC_EVEX_L2_XS_K_B, /* 11746 */
+  IC_EVEX_L2_XS_K_B, /* 11747 */
+  IC_EVEX_L2_XD_K_B, /* 11748 */
+  IC_EVEX_L2_XD_K_B, /* 11749 */
+  IC_EVEX_L2_XD_K_B, /* 11750 */
+  IC_EVEX_L2_XD_K_B, /* 11751 */
+  IC_EVEX_L2_W_K_B, /* 11752 */
+  IC_EVEX_L2_W_K_B, /* 11753 */
+  IC_EVEX_L2_W_XS_K_B, /* 11754 */
+  IC_EVEX_L2_W_XS_K_B, /* 11755 */
+  IC_EVEX_L2_W_XD_K_B, /* 11756 */
+  IC_EVEX_L2_W_XD_K_B, /* 11757 */
+  IC_EVEX_L2_W_XD_K_B, /* 11758 */
+  IC_EVEX_L2_W_XD_K_B, /* 11759 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11760 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11761 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11762 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11763 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11764 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11765 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11766 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 11767 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11768 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11769 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11770 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11771 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11772 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11773 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11774 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 11775 */
+  IC, /* 11776 */
+  IC_64BIT, /* 11777 */
+  IC_XS, /* 11778 */
+  IC_64BIT_XS, /* 11779 */
+  IC_XD, /* 11780 */
+  IC_64BIT_XD, /* 11781 */
+  IC_XS, /* 11782 */
+  IC_64BIT_XS, /* 11783 */
+  IC, /* 11784 */
+  IC_64BIT_REXW, /* 11785 */
+  IC_XS, /* 11786 */
+  IC_64BIT_REXW_XS, /* 11787 */
+  IC_XD, /* 11788 */
+  IC_64BIT_REXW_XD, /* 11789 */
+  IC_XS, /* 11790 */
+  IC_64BIT_REXW_XS, /* 11791 */
+  IC_OPSIZE, /* 11792 */
+  IC_64BIT_OPSIZE, /* 11793 */
+  IC_XS_OPSIZE, /* 11794 */
+  IC_64BIT_XS_OPSIZE, /* 11795 */
+  IC_XD_OPSIZE, /* 11796 */
+  IC_64BIT_XD_OPSIZE, /* 11797 */
+  IC_XS_OPSIZE, /* 11798 */
+  IC_64BIT_XD_OPSIZE, /* 11799 */
+  IC_OPSIZE, /* 11800 */
+  IC_64BIT_REXW_OPSIZE, /* 11801 */
+  IC_XS_OPSIZE, /* 11802 */
+  IC_64BIT_REXW_XS, /* 11803 */
+  IC_XD_OPSIZE, /* 11804 */
+  IC_64BIT_REXW_XD, /* 11805 */
+  IC_XS_OPSIZE, /* 11806 */
+  IC_64BIT_REXW_XS, /* 11807 */
+  IC_ADSIZE, /* 11808 */
+  IC_64BIT_ADSIZE, /* 11809 */
+  IC_XS, /* 11810 */
+  IC_64BIT_XS, /* 11811 */
+  IC_XD, /* 11812 */
+  IC_64BIT_XD, /* 11813 */
+  IC_XS, /* 11814 */
+  IC_64BIT_XS, /* 11815 */
+  IC_ADSIZE, /* 11816 */
+  IC_64BIT_ADSIZE, /* 11817 */
+  IC_XS, /* 11818 */
+  IC_64BIT_REXW_XS, /* 11819 */
+  IC_XD, /* 11820 */
+  IC_64BIT_REXW_XD, /* 11821 */
+  IC_XS, /* 11822 */
+  IC_64BIT_REXW_XS, /* 11823 */
+  IC_OPSIZE, /* 11824 */
+  IC_64BIT_OPSIZE, /* 11825 */
+  IC_XS_OPSIZE, /* 11826 */
+  IC_64BIT_XS_OPSIZE, /* 11827 */
+  IC_XD_OPSIZE, /* 11828 */
+  IC_64BIT_XD_OPSIZE, /* 11829 */
+  IC_XS_OPSIZE, /* 11830 */
+  IC_64BIT_XD_OPSIZE, /* 11831 */
+  IC_OPSIZE, /* 11832 */
+  IC_64BIT_REXW_OPSIZE, /* 11833 */
+  IC_XS_OPSIZE, /* 11834 */
+  IC_64BIT_REXW_XS, /* 11835 */
+  IC_XD_OPSIZE, /* 11836 */
+  IC_64BIT_REXW_XD, /* 11837 */
+  IC_XS_OPSIZE, /* 11838 */
+  IC_64BIT_REXW_XS, /* 11839 */
+  IC_VEX, /* 11840 */
+  IC_VEX, /* 11841 */
+  IC_VEX_XS, /* 11842 */
+  IC_VEX_XS, /* 11843 */
+  IC_VEX_XD, /* 11844 */
+  IC_VEX_XD, /* 11845 */
+  IC_VEX_XD, /* 11846 */
+  IC_VEX_XD, /* 11847 */
+  IC_VEX_W, /* 11848 */
+  IC_VEX_W, /* 11849 */
+  IC_VEX_W_XS, /* 11850 */
+  IC_VEX_W_XS, /* 11851 */
+  IC_VEX_W_XD, /* 11852 */
+  IC_VEX_W_XD, /* 11853 */
+  IC_VEX_W_XD, /* 11854 */
+  IC_VEX_W_XD, /* 11855 */
+  IC_VEX_OPSIZE, /* 11856 */
+  IC_VEX_OPSIZE, /* 11857 */
+  IC_VEX_OPSIZE, /* 11858 */
+  IC_VEX_OPSIZE, /* 11859 */
+  IC_VEX_OPSIZE, /* 11860 */
+  IC_VEX_OPSIZE, /* 11861 */
+  IC_VEX_OPSIZE, /* 11862 */
+  IC_VEX_OPSIZE, /* 11863 */
+  IC_VEX_W_OPSIZE, /* 11864 */
+  IC_VEX_W_OPSIZE, /* 11865 */
+  IC_VEX_W_OPSIZE, /* 11866 */
+  IC_VEX_W_OPSIZE, /* 11867 */
+  IC_VEX_W_OPSIZE, /* 11868 */
+  IC_VEX_W_OPSIZE, /* 11869 */
+  IC_VEX_W_OPSIZE, /* 11870 */
+  IC_VEX_W_OPSIZE, /* 11871 */
+  IC_VEX, /* 11872 */
+  IC_VEX, /* 11873 */
+  IC_VEX_XS, /* 11874 */
+  IC_VEX_XS, /* 11875 */
+  IC_VEX_XD, /* 11876 */
+  IC_VEX_XD, /* 11877 */
+  IC_VEX_XD, /* 11878 */
+  IC_VEX_XD, /* 11879 */
+  IC_VEX_W, /* 11880 */
+  IC_VEX_W, /* 11881 */
+  IC_VEX_W_XS, /* 11882 */
+  IC_VEX_W_XS, /* 11883 */
+  IC_VEX_W_XD, /* 11884 */
+  IC_VEX_W_XD, /* 11885 */
+  IC_VEX_W_XD, /* 11886 */
+  IC_VEX_W_XD, /* 11887 */
+  IC_VEX_OPSIZE, /* 11888 */
+  IC_VEX_OPSIZE, /* 11889 */
+  IC_VEX_OPSIZE, /* 11890 */
+  IC_VEX_OPSIZE, /* 11891 */
+  IC_VEX_OPSIZE, /* 11892 */
+  IC_VEX_OPSIZE, /* 11893 */
+  IC_VEX_OPSIZE, /* 11894 */
+  IC_VEX_OPSIZE, /* 11895 */
+  IC_VEX_W_OPSIZE, /* 11896 */
+  IC_VEX_W_OPSIZE, /* 11897 */
+  IC_VEX_W_OPSIZE, /* 11898 */
+  IC_VEX_W_OPSIZE, /* 11899 */
+  IC_VEX_W_OPSIZE, /* 11900 */
+  IC_VEX_W_OPSIZE, /* 11901 */
+  IC_VEX_W_OPSIZE, /* 11902 */
+  IC_VEX_W_OPSIZE, /* 11903 */
+  IC_VEX_L, /* 11904 */
+  IC_VEX_L, /* 11905 */
+  IC_VEX_L_XS, /* 11906 */
+  IC_VEX_L_XS, /* 11907 */
+  IC_VEX_L_XD, /* 11908 */
+  IC_VEX_L_XD, /* 11909 */
+  IC_VEX_L_XD, /* 11910 */
+  IC_VEX_L_XD, /* 11911 */
+  IC_VEX_L_W, /* 11912 */
+  IC_VEX_L_W, /* 11913 */
+  IC_VEX_L_W_XS, /* 11914 */
+  IC_VEX_L_W_XS, /* 11915 */
+  IC_VEX_L_W_XD, /* 11916 */
+  IC_VEX_L_W_XD, /* 11917 */
+  IC_VEX_L_W_XD, /* 11918 */
+  IC_VEX_L_W_XD, /* 11919 */
+  IC_VEX_L_OPSIZE, /* 11920 */
+  IC_VEX_L_OPSIZE, /* 11921 */
+  IC_VEX_L_OPSIZE, /* 11922 */
+  IC_VEX_L_OPSIZE, /* 11923 */
+  IC_VEX_L_OPSIZE, /* 11924 */
+  IC_VEX_L_OPSIZE, /* 11925 */
+  IC_VEX_L_OPSIZE, /* 11926 */
+  IC_VEX_L_OPSIZE, /* 11927 */
+  IC_VEX_L_W_OPSIZE, /* 11928 */
+  IC_VEX_L_W_OPSIZE, /* 11929 */
+  IC_VEX_L_W_OPSIZE, /* 11930 */
+  IC_VEX_L_W_OPSIZE, /* 11931 */
+  IC_VEX_L_W_OPSIZE, /* 11932 */
+  IC_VEX_L_W_OPSIZE, /* 11933 */
+  IC_VEX_L_W_OPSIZE, /* 11934 */
+  IC_VEX_L_W_OPSIZE, /* 11935 */
+  IC_VEX_L, /* 11936 */
+  IC_VEX_L, /* 11937 */
+  IC_VEX_L_XS, /* 11938 */
+  IC_VEX_L_XS, /* 11939 */
+  IC_VEX_L_XD, /* 11940 */
+  IC_VEX_L_XD, /* 11941 */
+  IC_VEX_L_XD, /* 11942 */
+  IC_VEX_L_XD, /* 11943 */
+  IC_VEX_L_W, /* 11944 */
+  IC_VEX_L_W, /* 11945 */
+  IC_VEX_L_W_XS, /* 11946 */
+  IC_VEX_L_W_XS, /* 11947 */
+  IC_VEX_L_W_XD, /* 11948 */
+  IC_VEX_L_W_XD, /* 11949 */
+  IC_VEX_L_W_XD, /* 11950 */
+  IC_VEX_L_W_XD, /* 11951 */
+  IC_VEX_L_OPSIZE, /* 11952 */
+  IC_VEX_L_OPSIZE, /* 11953 */
+  IC_VEX_L_OPSIZE, /* 11954 */
+  IC_VEX_L_OPSIZE, /* 11955 */
+  IC_VEX_L_OPSIZE, /* 11956 */
+  IC_VEX_L_OPSIZE, /* 11957 */
+  IC_VEX_L_OPSIZE, /* 11958 */
+  IC_VEX_L_OPSIZE, /* 11959 */
+  IC_VEX_L_W_OPSIZE, /* 11960 */
+  IC_VEX_L_W_OPSIZE, /* 11961 */
+  IC_VEX_L_W_OPSIZE, /* 11962 */
+  IC_VEX_L_W_OPSIZE, /* 11963 */
+  IC_VEX_L_W_OPSIZE, /* 11964 */
+  IC_VEX_L_W_OPSIZE, /* 11965 */
+  IC_VEX_L_W_OPSIZE, /* 11966 */
+  IC_VEX_L_W_OPSIZE, /* 11967 */
+  IC_VEX_L, /* 11968 */
+  IC_VEX_L, /* 11969 */
+  IC_VEX_L_XS, /* 11970 */
+  IC_VEX_L_XS, /* 11971 */
+  IC_VEX_L_XD, /* 11972 */
+  IC_VEX_L_XD, /* 11973 */
+  IC_VEX_L_XD, /* 11974 */
+  IC_VEX_L_XD, /* 11975 */
+  IC_VEX_L_W, /* 11976 */
+  IC_VEX_L_W, /* 11977 */
+  IC_VEX_L_W_XS, /* 11978 */
+  IC_VEX_L_W_XS, /* 11979 */
+  IC_VEX_L_W_XD, /* 11980 */
+  IC_VEX_L_W_XD, /* 11981 */
+  IC_VEX_L_W_XD, /* 11982 */
+  IC_VEX_L_W_XD, /* 11983 */
+  IC_VEX_L_OPSIZE, /* 11984 */
+  IC_VEX_L_OPSIZE, /* 11985 */
+  IC_VEX_L_OPSIZE, /* 11986 */
+  IC_VEX_L_OPSIZE, /* 11987 */
+  IC_VEX_L_OPSIZE, /* 11988 */
+  IC_VEX_L_OPSIZE, /* 11989 */
+  IC_VEX_L_OPSIZE, /* 11990 */
+  IC_VEX_L_OPSIZE, /* 11991 */
+  IC_VEX_L_W_OPSIZE, /* 11992 */
+  IC_VEX_L_W_OPSIZE, /* 11993 */
+  IC_VEX_L_W_OPSIZE, /* 11994 */
+  IC_VEX_L_W_OPSIZE, /* 11995 */
+  IC_VEX_L_W_OPSIZE, /* 11996 */
+  IC_VEX_L_W_OPSIZE, /* 11997 */
+  IC_VEX_L_W_OPSIZE, /* 11998 */
+  IC_VEX_L_W_OPSIZE, /* 11999 */
+  IC_VEX_L, /* 12000 */
+  IC_VEX_L, /* 12001 */
+  IC_VEX_L_XS, /* 12002 */
+  IC_VEX_L_XS, /* 12003 */
+  IC_VEX_L_XD, /* 12004 */
+  IC_VEX_L_XD, /* 12005 */
+  IC_VEX_L_XD, /* 12006 */
+  IC_VEX_L_XD, /* 12007 */
+  IC_VEX_L_W, /* 12008 */
+  IC_VEX_L_W, /* 12009 */
+  IC_VEX_L_W_XS, /* 12010 */
+  IC_VEX_L_W_XS, /* 12011 */
+  IC_VEX_L_W_XD, /* 12012 */
+  IC_VEX_L_W_XD, /* 12013 */
+  IC_VEX_L_W_XD, /* 12014 */
+  IC_VEX_L_W_XD, /* 12015 */
+  IC_VEX_L_OPSIZE, /* 12016 */
+  IC_VEX_L_OPSIZE, /* 12017 */
+  IC_VEX_L_OPSIZE, /* 12018 */
+  IC_VEX_L_OPSIZE, /* 12019 */
+  IC_VEX_L_OPSIZE, /* 12020 */
+  IC_VEX_L_OPSIZE, /* 12021 */
+  IC_VEX_L_OPSIZE, /* 12022 */
+  IC_VEX_L_OPSIZE, /* 12023 */
+  IC_VEX_L_W_OPSIZE, /* 12024 */
+  IC_VEX_L_W_OPSIZE, /* 12025 */
+  IC_VEX_L_W_OPSIZE, /* 12026 */
+  IC_VEX_L_W_OPSIZE, /* 12027 */
+  IC_VEX_L_W_OPSIZE, /* 12028 */
+  IC_VEX_L_W_OPSIZE, /* 12029 */
+  IC_VEX_L_W_OPSIZE, /* 12030 */
+  IC_VEX_L_W_OPSIZE, /* 12031 */
+  IC_EVEX_L2_K_B, /* 12032 */
+  IC_EVEX_L2_K_B, /* 12033 */
+  IC_EVEX_L2_XS_K_B, /* 12034 */
+  IC_EVEX_L2_XS_K_B, /* 12035 */
+  IC_EVEX_L2_XD_K_B, /* 12036 */
+  IC_EVEX_L2_XD_K_B, /* 12037 */
+  IC_EVEX_L2_XD_K_B, /* 12038 */
+  IC_EVEX_L2_XD_K_B, /* 12039 */
+  IC_EVEX_L2_W_K_B, /* 12040 */
+  IC_EVEX_L2_W_K_B, /* 12041 */
+  IC_EVEX_L2_W_XS_K_B, /* 12042 */
+  IC_EVEX_L2_W_XS_K_B, /* 12043 */
+  IC_EVEX_L2_W_XD_K_B, /* 12044 */
+  IC_EVEX_L2_W_XD_K_B, /* 12045 */
+  IC_EVEX_L2_W_XD_K_B, /* 12046 */
+  IC_EVEX_L2_W_XD_K_B, /* 12047 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12048 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12049 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12050 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12051 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12052 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12053 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12054 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12055 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12056 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12057 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12058 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12059 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12060 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12061 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12062 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12063 */
+  IC_EVEX_L2_K_B, /* 12064 */
+  IC_EVEX_L2_K_B, /* 12065 */
+  IC_EVEX_L2_XS_K_B, /* 12066 */
+  IC_EVEX_L2_XS_K_B, /* 12067 */
+  IC_EVEX_L2_XD_K_B, /* 12068 */
+  IC_EVEX_L2_XD_K_B, /* 12069 */
+  IC_EVEX_L2_XD_K_B, /* 12070 */
+  IC_EVEX_L2_XD_K_B, /* 12071 */
+  IC_EVEX_L2_W_K_B, /* 12072 */
+  IC_EVEX_L2_W_K_B, /* 12073 */
+  IC_EVEX_L2_W_XS_K_B, /* 12074 */
+  IC_EVEX_L2_W_XS_K_B, /* 12075 */
+  IC_EVEX_L2_W_XD_K_B, /* 12076 */
+  IC_EVEX_L2_W_XD_K_B, /* 12077 */
+  IC_EVEX_L2_W_XD_K_B, /* 12078 */
+  IC_EVEX_L2_W_XD_K_B, /* 12079 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12080 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12081 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12082 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12083 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12084 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12085 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12086 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12087 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12088 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12089 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12090 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12091 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12092 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12093 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12094 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12095 */
+  IC_EVEX_L2_K_B, /* 12096 */
+  IC_EVEX_L2_K_B, /* 12097 */
+  IC_EVEX_L2_XS_K_B, /* 12098 */
+  IC_EVEX_L2_XS_K_B, /* 12099 */
+  IC_EVEX_L2_XD_K_B, /* 12100 */
+  IC_EVEX_L2_XD_K_B, /* 12101 */
+  IC_EVEX_L2_XD_K_B, /* 12102 */
+  IC_EVEX_L2_XD_K_B, /* 12103 */
+  IC_EVEX_L2_W_K_B, /* 12104 */
+  IC_EVEX_L2_W_K_B, /* 12105 */
+  IC_EVEX_L2_W_XS_K_B, /* 12106 */
+  IC_EVEX_L2_W_XS_K_B, /* 12107 */
+  IC_EVEX_L2_W_XD_K_B, /* 12108 */
+  IC_EVEX_L2_W_XD_K_B, /* 12109 */
+  IC_EVEX_L2_W_XD_K_B, /* 12110 */
+  IC_EVEX_L2_W_XD_K_B, /* 12111 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12112 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12113 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12114 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12115 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12116 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12117 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12118 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12119 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12120 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12121 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12122 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12123 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12124 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12125 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12126 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12127 */
+  IC_EVEX_L2_K_B, /* 12128 */
+  IC_EVEX_L2_K_B, /* 12129 */
+  IC_EVEX_L2_XS_K_B, /* 12130 */
+  IC_EVEX_L2_XS_K_B, /* 12131 */
+  IC_EVEX_L2_XD_K_B, /* 12132 */
+  IC_EVEX_L2_XD_K_B, /* 12133 */
+  IC_EVEX_L2_XD_K_B, /* 12134 */
+  IC_EVEX_L2_XD_K_B, /* 12135 */
+  IC_EVEX_L2_W_K_B, /* 12136 */
+  IC_EVEX_L2_W_K_B, /* 12137 */
+  IC_EVEX_L2_W_XS_K_B, /* 12138 */
+  IC_EVEX_L2_W_XS_K_B, /* 12139 */
+  IC_EVEX_L2_W_XD_K_B, /* 12140 */
+  IC_EVEX_L2_W_XD_K_B, /* 12141 */
+  IC_EVEX_L2_W_XD_K_B, /* 12142 */
+  IC_EVEX_L2_W_XD_K_B, /* 12143 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12144 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12145 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12146 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12147 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12148 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12149 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12150 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12151 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12152 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12153 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12154 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12155 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12156 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12157 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12158 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12159 */
+  IC_EVEX_L2_K_B, /* 12160 */
+  IC_EVEX_L2_K_B, /* 12161 */
+  IC_EVEX_L2_XS_K_B, /* 12162 */
+  IC_EVEX_L2_XS_K_B, /* 12163 */
+  IC_EVEX_L2_XD_K_B, /* 12164 */
+  IC_EVEX_L2_XD_K_B, /* 12165 */
+  IC_EVEX_L2_XD_K_B, /* 12166 */
+  IC_EVEX_L2_XD_K_B, /* 12167 */
+  IC_EVEX_L2_W_K_B, /* 12168 */
+  IC_EVEX_L2_W_K_B, /* 12169 */
+  IC_EVEX_L2_W_XS_K_B, /* 12170 */
+  IC_EVEX_L2_W_XS_K_B, /* 12171 */
+  IC_EVEX_L2_W_XD_K_B, /* 12172 */
+  IC_EVEX_L2_W_XD_K_B, /* 12173 */
+  IC_EVEX_L2_W_XD_K_B, /* 12174 */
+  IC_EVEX_L2_W_XD_K_B, /* 12175 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12176 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12177 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12178 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12179 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12180 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12181 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12182 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12183 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12184 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12185 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12186 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12187 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12188 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12189 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12190 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12191 */
+  IC_EVEX_L2_K_B, /* 12192 */
+  IC_EVEX_L2_K_B, /* 12193 */
+  IC_EVEX_L2_XS_K_B, /* 12194 */
+  IC_EVEX_L2_XS_K_B, /* 12195 */
+  IC_EVEX_L2_XD_K_B, /* 12196 */
+  IC_EVEX_L2_XD_K_B, /* 12197 */
+  IC_EVEX_L2_XD_K_B, /* 12198 */
+  IC_EVEX_L2_XD_K_B, /* 12199 */
+  IC_EVEX_L2_W_K_B, /* 12200 */
+  IC_EVEX_L2_W_K_B, /* 12201 */
+  IC_EVEX_L2_W_XS_K_B, /* 12202 */
+  IC_EVEX_L2_W_XS_K_B, /* 12203 */
+  IC_EVEX_L2_W_XD_K_B, /* 12204 */
+  IC_EVEX_L2_W_XD_K_B, /* 12205 */
+  IC_EVEX_L2_W_XD_K_B, /* 12206 */
+  IC_EVEX_L2_W_XD_K_B, /* 12207 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12208 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12209 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12210 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12211 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12212 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12213 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12214 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12215 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12216 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12217 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12218 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12219 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12220 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12221 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12222 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12223 */
+  IC_EVEX_L2_K_B, /* 12224 */
+  IC_EVEX_L2_K_B, /* 12225 */
+  IC_EVEX_L2_XS_K_B, /* 12226 */
+  IC_EVEX_L2_XS_K_B, /* 12227 */
+  IC_EVEX_L2_XD_K_B, /* 12228 */
+  IC_EVEX_L2_XD_K_B, /* 12229 */
+  IC_EVEX_L2_XD_K_B, /* 12230 */
+  IC_EVEX_L2_XD_K_B, /* 12231 */
+  IC_EVEX_L2_W_K_B, /* 12232 */
+  IC_EVEX_L2_W_K_B, /* 12233 */
+  IC_EVEX_L2_W_XS_K_B, /* 12234 */
+  IC_EVEX_L2_W_XS_K_B, /* 12235 */
+  IC_EVEX_L2_W_XD_K_B, /* 12236 */
+  IC_EVEX_L2_W_XD_K_B, /* 12237 */
+  IC_EVEX_L2_W_XD_K_B, /* 12238 */
+  IC_EVEX_L2_W_XD_K_B, /* 12239 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12240 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12241 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12242 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12243 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12244 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12245 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12246 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12247 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12248 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12249 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12250 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12251 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12252 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12253 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12254 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12255 */
+  IC_EVEX_L2_K_B, /* 12256 */
+  IC_EVEX_L2_K_B, /* 12257 */
+  IC_EVEX_L2_XS_K_B, /* 12258 */
+  IC_EVEX_L2_XS_K_B, /* 12259 */
+  IC_EVEX_L2_XD_K_B, /* 12260 */
+  IC_EVEX_L2_XD_K_B, /* 12261 */
+  IC_EVEX_L2_XD_K_B, /* 12262 */
+  IC_EVEX_L2_XD_K_B, /* 12263 */
+  IC_EVEX_L2_W_K_B, /* 12264 */
+  IC_EVEX_L2_W_K_B, /* 12265 */
+  IC_EVEX_L2_W_XS_K_B, /* 12266 */
+  IC_EVEX_L2_W_XS_K_B, /* 12267 */
+  IC_EVEX_L2_W_XD_K_B, /* 12268 */
+  IC_EVEX_L2_W_XD_K_B, /* 12269 */
+  IC_EVEX_L2_W_XD_K_B, /* 12270 */
+  IC_EVEX_L2_W_XD_K_B, /* 12271 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12272 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12273 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12274 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12275 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12276 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12277 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12278 */
+  IC_EVEX_L2_OPSIZE_K_B, /* 12279 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12280 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12281 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12282 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12283 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12284 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12285 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12286 */
+  IC_EVEX_L2_W_OPSIZE_K_B, /* 12287 */
+  IC, /* 12288 */
+  IC_64BIT, /* 12289 */
+  IC_XS, /* 12290 */
+  IC_64BIT_XS, /* 12291 */
+  IC_XD, /* 12292 */
+  IC_64BIT_XD, /* 12293 */
+  IC_XS, /* 12294 */
+  IC_64BIT_XS, /* 12295 */
+  IC, /* 12296 */
+  IC_64BIT_REXW, /* 12297 */
+  IC_XS, /* 12298 */
+  IC_64BIT_REXW_XS, /* 12299 */
+  IC_XD, /* 12300 */
+  IC_64BIT_REXW_XD, /* 12301 */
+  IC_XS, /* 12302 */
+  IC_64BIT_REXW_XS, /* 12303 */
+  IC_OPSIZE, /* 12304 */
+  IC_64BIT_OPSIZE, /* 12305 */
+  IC_XS_OPSIZE, /* 12306 */
+  IC_64BIT_XS_OPSIZE, /* 12307 */
+  IC_XD_OPSIZE, /* 12308 */
+  IC_64BIT_XD_OPSIZE, /* 12309 */
+  IC_XS_OPSIZE, /* 12310 */
+  IC_64BIT_XD_OPSIZE, /* 12311 */
+  IC_OPSIZE, /* 12312 */
+  IC_64BIT_REXW_OPSIZE, /* 12313 */
+  IC_XS_OPSIZE, /* 12314 */
+  IC_64BIT_REXW_XS, /* 12315 */
+  IC_XD_OPSIZE, /* 12316 */
+  IC_64BIT_REXW_XD, /* 12317 */
+  IC_XS_OPSIZE, /* 12318 */
+  IC_64BIT_REXW_XS, /* 12319 */
+  IC_ADSIZE, /* 12320 */
+  IC_64BIT_ADSIZE, /* 12321 */
+  IC_XS, /* 12322 */
+  IC_64BIT_XS, /* 12323 */
+  IC_XD, /* 12324 */
+  IC_64BIT_XD, /* 12325 */
+  IC_XS, /* 12326 */
+  IC_64BIT_XS, /* 12327 */
+  IC_ADSIZE, /* 12328 */
+  IC_64BIT_ADSIZE, /* 12329 */
+  IC_XS, /* 12330 */
+  IC_64BIT_REXW_XS, /* 12331 */
+  IC_XD, /* 12332 */
+  IC_64BIT_REXW_XD, /* 12333 */
+  IC_XS, /* 12334 */
+  IC_64BIT_REXW_XS, /* 12335 */
+  IC_OPSIZE, /* 12336 */
+  IC_64BIT_OPSIZE, /* 12337 */
+  IC_XS_OPSIZE, /* 12338 */
+  IC_64BIT_XS_OPSIZE, /* 12339 */
+  IC_XD_OPSIZE, /* 12340 */
+  IC_64BIT_XD_OPSIZE, /* 12341 */
+  IC_XS_OPSIZE, /* 12342 */
+  IC_64BIT_XD_OPSIZE, /* 12343 */
+  IC_OPSIZE, /* 12344 */
+  IC_64BIT_REXW_OPSIZE, /* 12345 */
+  IC_XS_OPSIZE, /* 12346 */
+  IC_64BIT_REXW_XS, /* 12347 */
+  IC_XD_OPSIZE, /* 12348 */
+  IC_64BIT_REXW_XD, /* 12349 */
+  IC_XS_OPSIZE, /* 12350 */
+  IC_64BIT_REXW_XS, /* 12351 */
+  IC_VEX, /* 12352 */
+  IC_VEX, /* 12353 */
+  IC_VEX_XS, /* 12354 */
+  IC_VEX_XS, /* 12355 */
+  IC_VEX_XD, /* 12356 */
+  IC_VEX_XD, /* 12357 */
+  IC_VEX_XD, /* 12358 */
+  IC_VEX_XD, /* 12359 */
+  IC_VEX_W, /* 12360 */
+  IC_VEX_W, /* 12361 */
+  IC_VEX_W_XS, /* 12362 */
+  IC_VEX_W_XS, /* 12363 */
+  IC_VEX_W_XD, /* 12364 */
+  IC_VEX_W_XD, /* 12365 */
+  IC_VEX_W_XD, /* 12366 */
+  IC_VEX_W_XD, /* 12367 */
+  IC_VEX_OPSIZE, /* 12368 */
+  IC_VEX_OPSIZE, /* 12369 */
+  IC_VEX_OPSIZE, /* 12370 */
+  IC_VEX_OPSIZE, /* 12371 */
+  IC_VEX_OPSIZE, /* 12372 */
+  IC_VEX_OPSIZE, /* 12373 */
+  IC_VEX_OPSIZE, /* 12374 */
+  IC_VEX_OPSIZE, /* 12375 */
+  IC_VEX_W_OPSIZE, /* 12376 */
+  IC_VEX_W_OPSIZE, /* 12377 */
+  IC_VEX_W_OPSIZE, /* 12378 */
+  IC_VEX_W_OPSIZE, /* 12379 */
+  IC_VEX_W_OPSIZE, /* 12380 */
+  IC_VEX_W_OPSIZE, /* 12381 */
+  IC_VEX_W_OPSIZE, /* 12382 */
+  IC_VEX_W_OPSIZE, /* 12383 */
+  IC_VEX, /* 12384 */
+  IC_VEX, /* 12385 */
+  IC_VEX_XS, /* 12386 */
+  IC_VEX_XS, /* 12387 */
+  IC_VEX_XD, /* 12388 */
+  IC_VEX_XD, /* 12389 */
+  IC_VEX_XD, /* 12390 */
+  IC_VEX_XD, /* 12391 */
+  IC_VEX_W, /* 12392 */
+  IC_VEX_W, /* 12393 */
+  IC_VEX_W_XS, /* 12394 */
+  IC_VEX_W_XS, /* 12395 */
+  IC_VEX_W_XD, /* 12396 */
+  IC_VEX_W_XD, /* 12397 */
+  IC_VEX_W_XD, /* 12398 */
+  IC_VEX_W_XD, /* 12399 */
+  IC_VEX_OPSIZE, /* 12400 */
+  IC_VEX_OPSIZE, /* 12401 */
+  IC_VEX_OPSIZE, /* 12402 */
+  IC_VEX_OPSIZE, /* 12403 */
+  IC_VEX_OPSIZE, /* 12404 */
+  IC_VEX_OPSIZE, /* 12405 */
+  IC_VEX_OPSIZE, /* 12406 */
+  IC_VEX_OPSIZE, /* 12407 */
+  IC_VEX_W_OPSIZE, /* 12408 */
+  IC_VEX_W_OPSIZE, /* 12409 */
+  IC_VEX_W_OPSIZE, /* 12410 */
+  IC_VEX_W_OPSIZE, /* 12411 */
+  IC_VEX_W_OPSIZE, /* 12412 */
+  IC_VEX_W_OPSIZE, /* 12413 */
+  IC_VEX_W_OPSIZE, /* 12414 */
+  IC_VEX_W_OPSIZE, /* 12415 */
+  IC_VEX_L, /* 12416 */
+  IC_VEX_L, /* 12417 */
+  IC_VEX_L_XS, /* 12418 */
+  IC_VEX_L_XS, /* 12419 */
+  IC_VEX_L_XD, /* 12420 */
+  IC_VEX_L_XD, /* 12421 */
+  IC_VEX_L_XD, /* 12422 */
+  IC_VEX_L_XD, /* 12423 */
+  IC_VEX_L_W, /* 12424 */
+  IC_VEX_L_W, /* 12425 */
+  IC_VEX_L_W_XS, /* 12426 */
+  IC_VEX_L_W_XS, /* 12427 */
+  IC_VEX_L_W_XD, /* 12428 */
+  IC_VEX_L_W_XD, /* 12429 */
+  IC_VEX_L_W_XD, /* 12430 */
+  IC_VEX_L_W_XD, /* 12431 */
+  IC_VEX_L_OPSIZE, /* 12432 */
+  IC_VEX_L_OPSIZE, /* 12433 */
+  IC_VEX_L_OPSIZE, /* 12434 */
+  IC_VEX_L_OPSIZE, /* 12435 */
+  IC_VEX_L_OPSIZE, /* 12436 */
+  IC_VEX_L_OPSIZE, /* 12437 */
+  IC_VEX_L_OPSIZE, /* 12438 */
+  IC_VEX_L_OPSIZE, /* 12439 */
+  IC_VEX_L_W_OPSIZE, /* 12440 */
+  IC_VEX_L_W_OPSIZE, /* 12441 */
+  IC_VEX_L_W_OPSIZE, /* 12442 */
+  IC_VEX_L_W_OPSIZE, /* 12443 */
+  IC_VEX_L_W_OPSIZE, /* 12444 */
+  IC_VEX_L_W_OPSIZE, /* 12445 */
+  IC_VEX_L_W_OPSIZE, /* 12446 */
+  IC_VEX_L_W_OPSIZE, /* 12447 */
+  IC_VEX_L, /* 12448 */
+  IC_VEX_L, /* 12449 */
+  IC_VEX_L_XS, /* 12450 */
+  IC_VEX_L_XS, /* 12451 */
+  IC_VEX_L_XD, /* 12452 */
+  IC_VEX_L_XD, /* 12453 */
+  IC_VEX_L_XD, /* 12454 */
+  IC_VEX_L_XD, /* 12455 */
+  IC_VEX_L_W, /* 12456 */
+  IC_VEX_L_W, /* 12457 */
+  IC_VEX_L_W_XS, /* 12458 */
+  IC_VEX_L_W_XS, /* 12459 */
+  IC_VEX_L_W_XD, /* 12460 */
+  IC_VEX_L_W_XD, /* 12461 */
+  IC_VEX_L_W_XD, /* 12462 */
+  IC_VEX_L_W_XD, /* 12463 */
+  IC_VEX_L_OPSIZE, /* 12464 */
+  IC_VEX_L_OPSIZE, /* 12465 */
+  IC_VEX_L_OPSIZE, /* 12466 */
+  IC_VEX_L_OPSIZE, /* 12467 */
+  IC_VEX_L_OPSIZE, /* 12468 */
+  IC_VEX_L_OPSIZE, /* 12469 */
+  IC_VEX_L_OPSIZE, /* 12470 */
+  IC_VEX_L_OPSIZE, /* 12471 */
+  IC_VEX_L_W_OPSIZE, /* 12472 */
+  IC_VEX_L_W_OPSIZE, /* 12473 */
+  IC_VEX_L_W_OPSIZE, /* 12474 */
+  IC_VEX_L_W_OPSIZE, /* 12475 */
+  IC_VEX_L_W_OPSIZE, /* 12476 */
+  IC_VEX_L_W_OPSIZE, /* 12477 */
+  IC_VEX_L_W_OPSIZE, /* 12478 */
+  IC_VEX_L_W_OPSIZE, /* 12479 */
+  IC_VEX_L, /* 12480 */
+  IC_VEX_L, /* 12481 */
+  IC_VEX_L_XS, /* 12482 */
+  IC_VEX_L_XS, /* 12483 */
+  IC_VEX_L_XD, /* 12484 */
+  IC_VEX_L_XD, /* 12485 */
+  IC_VEX_L_XD, /* 12486 */
+  IC_VEX_L_XD, /* 12487 */
+  IC_VEX_L_W, /* 12488 */
+  IC_VEX_L_W, /* 12489 */
+  IC_VEX_L_W_XS, /* 12490 */
+  IC_VEX_L_W_XS, /* 12491 */
+  IC_VEX_L_W_XD, /* 12492 */
+  IC_VEX_L_W_XD, /* 12493 */
+  IC_VEX_L_W_XD, /* 12494 */
+  IC_VEX_L_W_XD, /* 12495 */
+  IC_VEX_L_OPSIZE, /* 12496 */
+  IC_VEX_L_OPSIZE, /* 12497 */
+  IC_VEX_L_OPSIZE, /* 12498 */
+  IC_VEX_L_OPSIZE, /* 12499 */
+  IC_VEX_L_OPSIZE, /* 12500 */
+  IC_VEX_L_OPSIZE, /* 12501 */
+  IC_VEX_L_OPSIZE, /* 12502 */
+  IC_VEX_L_OPSIZE, /* 12503 */
+  IC_VEX_L_W_OPSIZE, /* 12504 */
+  IC_VEX_L_W_OPSIZE, /* 12505 */
+  IC_VEX_L_W_OPSIZE, /* 12506 */
+  IC_VEX_L_W_OPSIZE, /* 12507 */
+  IC_VEX_L_W_OPSIZE, /* 12508 */
+  IC_VEX_L_W_OPSIZE, /* 12509 */
+  IC_VEX_L_W_OPSIZE, /* 12510 */
+  IC_VEX_L_W_OPSIZE, /* 12511 */
+  IC_VEX_L, /* 12512 */
+  IC_VEX_L, /* 12513 */
+  IC_VEX_L_XS, /* 12514 */
+  IC_VEX_L_XS, /* 12515 */
+  IC_VEX_L_XD, /* 12516 */
+  IC_VEX_L_XD, /* 12517 */
+  IC_VEX_L_XD, /* 12518 */
+  IC_VEX_L_XD, /* 12519 */
+  IC_VEX_L_W, /* 12520 */
+  IC_VEX_L_W, /* 12521 */
+  IC_VEX_L_W_XS, /* 12522 */
+  IC_VEX_L_W_XS, /* 12523 */
+  IC_VEX_L_W_XD, /* 12524 */
+  IC_VEX_L_W_XD, /* 12525 */
+  IC_VEX_L_W_XD, /* 12526 */
+  IC_VEX_L_W_XD, /* 12527 */
+  IC_VEX_L_OPSIZE, /* 12528 */
+  IC_VEX_L_OPSIZE, /* 12529 */
+  IC_VEX_L_OPSIZE, /* 12530 */
+  IC_VEX_L_OPSIZE, /* 12531 */
+  IC_VEX_L_OPSIZE, /* 12532 */
+  IC_VEX_L_OPSIZE, /* 12533 */
+  IC_VEX_L_OPSIZE, /* 12534 */
+  IC_VEX_L_OPSIZE, /* 12535 */
+  IC_VEX_L_W_OPSIZE, /* 12536 */
+  IC_VEX_L_W_OPSIZE, /* 12537 */
+  IC_VEX_L_W_OPSIZE, /* 12538 */
+  IC_VEX_L_W_OPSIZE, /* 12539 */
+  IC_VEX_L_W_OPSIZE, /* 12540 */
+  IC_VEX_L_W_OPSIZE, /* 12541 */
+  IC_VEX_L_W_OPSIZE, /* 12542 */
+  IC_VEX_L_W_OPSIZE, /* 12543 */
+  IC_EVEX_KZ_B, /* 12544 */
+  IC_EVEX_KZ_B, /* 12545 */
+  IC_EVEX_XS_KZ_B, /* 12546 */
+  IC_EVEX_XS_KZ_B, /* 12547 */
+  IC_EVEX_XD_KZ_B, /* 12548 */
+  IC_EVEX_XD_KZ_B, /* 12549 */
+  IC_EVEX_XD_KZ_B, /* 12550 */
+  IC_EVEX_XD_KZ_B, /* 12551 */
+  IC_EVEX_W_KZ_B, /* 12552 */
+  IC_EVEX_W_KZ_B, /* 12553 */
+  IC_EVEX_W_XS_KZ_B, /* 12554 */
+  IC_EVEX_W_XS_KZ_B, /* 12555 */
+  IC_EVEX_W_XD_KZ_B, /* 12556 */
+  IC_EVEX_W_XD_KZ_B, /* 12557 */
+  IC_EVEX_W_XD_KZ_B, /* 12558 */
+  IC_EVEX_W_XD_KZ_B, /* 12559 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12560 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12561 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12562 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12563 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12564 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12565 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12566 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12567 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12568 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12569 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12570 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12571 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12572 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12573 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12574 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12575 */
+  IC_EVEX_KZ_B, /* 12576 */
+  IC_EVEX_KZ_B, /* 12577 */
+  IC_EVEX_XS_KZ_B, /* 12578 */
+  IC_EVEX_XS_KZ_B, /* 12579 */
+  IC_EVEX_XD_KZ_B, /* 12580 */
+  IC_EVEX_XD_KZ_B, /* 12581 */
+  IC_EVEX_XD_KZ_B, /* 12582 */
+  IC_EVEX_XD_KZ_B, /* 12583 */
+  IC_EVEX_W_KZ_B, /* 12584 */
+  IC_EVEX_W_KZ_B, /* 12585 */
+  IC_EVEX_W_XS_KZ_B, /* 12586 */
+  IC_EVEX_W_XS_KZ_B, /* 12587 */
+  IC_EVEX_W_XD_KZ_B, /* 12588 */
+  IC_EVEX_W_XD_KZ_B, /* 12589 */
+  IC_EVEX_W_XD_KZ_B, /* 12590 */
+  IC_EVEX_W_XD_KZ_B, /* 12591 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12592 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12593 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12594 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12595 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12596 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12597 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12598 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12599 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12600 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12601 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12602 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12603 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12604 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12605 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12606 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12607 */
+  IC_EVEX_KZ_B, /* 12608 */
+  IC_EVEX_KZ_B, /* 12609 */
+  IC_EVEX_XS_KZ_B, /* 12610 */
+  IC_EVEX_XS_KZ_B, /* 12611 */
+  IC_EVEX_XD_KZ_B, /* 12612 */
+  IC_EVEX_XD_KZ_B, /* 12613 */
+  IC_EVEX_XD_KZ_B, /* 12614 */
+  IC_EVEX_XD_KZ_B, /* 12615 */
+  IC_EVEX_W_KZ_B, /* 12616 */
+  IC_EVEX_W_KZ_B, /* 12617 */
+  IC_EVEX_W_XS_KZ_B, /* 12618 */
+  IC_EVEX_W_XS_KZ_B, /* 12619 */
+  IC_EVEX_W_XD_KZ_B, /* 12620 */
+  IC_EVEX_W_XD_KZ_B, /* 12621 */
+  IC_EVEX_W_XD_KZ_B, /* 12622 */
+  IC_EVEX_W_XD_KZ_B, /* 12623 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12624 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12625 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12626 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12627 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12628 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12629 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12630 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12631 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12632 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12633 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12634 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12635 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12636 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12637 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12638 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12639 */
+  IC_EVEX_KZ_B, /* 12640 */
+  IC_EVEX_KZ_B, /* 12641 */
+  IC_EVEX_XS_KZ_B, /* 12642 */
+  IC_EVEX_XS_KZ_B, /* 12643 */
+  IC_EVEX_XD_KZ_B, /* 12644 */
+  IC_EVEX_XD_KZ_B, /* 12645 */
+  IC_EVEX_XD_KZ_B, /* 12646 */
+  IC_EVEX_XD_KZ_B, /* 12647 */
+  IC_EVEX_W_KZ_B, /* 12648 */
+  IC_EVEX_W_KZ_B, /* 12649 */
+  IC_EVEX_W_XS_KZ_B, /* 12650 */
+  IC_EVEX_W_XS_KZ_B, /* 12651 */
+  IC_EVEX_W_XD_KZ_B, /* 12652 */
+  IC_EVEX_W_XD_KZ_B, /* 12653 */
+  IC_EVEX_W_XD_KZ_B, /* 12654 */
+  IC_EVEX_W_XD_KZ_B, /* 12655 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12656 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12657 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12658 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12659 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12660 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12661 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12662 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12663 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12664 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12665 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12666 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12667 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12668 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12669 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12670 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12671 */
+  IC_EVEX_KZ_B, /* 12672 */
+  IC_EVEX_KZ_B, /* 12673 */
+  IC_EVEX_XS_KZ_B, /* 12674 */
+  IC_EVEX_XS_KZ_B, /* 12675 */
+  IC_EVEX_XD_KZ_B, /* 12676 */
+  IC_EVEX_XD_KZ_B, /* 12677 */
+  IC_EVEX_XD_KZ_B, /* 12678 */
+  IC_EVEX_XD_KZ_B, /* 12679 */
+  IC_EVEX_W_KZ_B, /* 12680 */
+  IC_EVEX_W_KZ_B, /* 12681 */
+  IC_EVEX_W_XS_KZ_B, /* 12682 */
+  IC_EVEX_W_XS_KZ_B, /* 12683 */
+  IC_EVEX_W_XD_KZ_B, /* 12684 */
+  IC_EVEX_W_XD_KZ_B, /* 12685 */
+  IC_EVEX_W_XD_KZ_B, /* 12686 */
+  IC_EVEX_W_XD_KZ_B, /* 12687 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12688 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12689 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12690 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12691 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12692 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12693 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12694 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12695 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12696 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12697 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12698 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12699 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12700 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12701 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12702 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12703 */
+  IC_EVEX_KZ_B, /* 12704 */
+  IC_EVEX_KZ_B, /* 12705 */
+  IC_EVEX_XS_KZ_B, /* 12706 */
+  IC_EVEX_XS_KZ_B, /* 12707 */
+  IC_EVEX_XD_KZ_B, /* 12708 */
+  IC_EVEX_XD_KZ_B, /* 12709 */
+  IC_EVEX_XD_KZ_B, /* 12710 */
+  IC_EVEX_XD_KZ_B, /* 12711 */
+  IC_EVEX_W_KZ_B, /* 12712 */
+  IC_EVEX_W_KZ_B, /* 12713 */
+  IC_EVEX_W_XS_KZ_B, /* 12714 */
+  IC_EVEX_W_XS_KZ_B, /* 12715 */
+  IC_EVEX_W_XD_KZ_B, /* 12716 */
+  IC_EVEX_W_XD_KZ_B, /* 12717 */
+  IC_EVEX_W_XD_KZ_B, /* 12718 */
+  IC_EVEX_W_XD_KZ_B, /* 12719 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12720 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12721 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12722 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12723 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12724 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12725 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12726 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12727 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12728 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12729 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12730 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12731 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12732 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12733 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12734 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12735 */
+  IC_EVEX_KZ_B, /* 12736 */
+  IC_EVEX_KZ_B, /* 12737 */
+  IC_EVEX_XS_KZ_B, /* 12738 */
+  IC_EVEX_XS_KZ_B, /* 12739 */
+  IC_EVEX_XD_KZ_B, /* 12740 */
+  IC_EVEX_XD_KZ_B, /* 12741 */
+  IC_EVEX_XD_KZ_B, /* 12742 */
+  IC_EVEX_XD_KZ_B, /* 12743 */
+  IC_EVEX_W_KZ_B, /* 12744 */
+  IC_EVEX_W_KZ_B, /* 12745 */
+  IC_EVEX_W_XS_KZ_B, /* 12746 */
+  IC_EVEX_W_XS_KZ_B, /* 12747 */
+  IC_EVEX_W_XD_KZ_B, /* 12748 */
+  IC_EVEX_W_XD_KZ_B, /* 12749 */
+  IC_EVEX_W_XD_KZ_B, /* 12750 */
+  IC_EVEX_W_XD_KZ_B, /* 12751 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12752 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12753 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12754 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12755 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12756 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12757 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12758 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12759 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12760 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12761 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12762 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12763 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12764 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12765 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12766 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12767 */
+  IC_EVEX_KZ_B, /* 12768 */
+  IC_EVEX_KZ_B, /* 12769 */
+  IC_EVEX_XS_KZ_B, /* 12770 */
+  IC_EVEX_XS_KZ_B, /* 12771 */
+  IC_EVEX_XD_KZ_B, /* 12772 */
+  IC_EVEX_XD_KZ_B, /* 12773 */
+  IC_EVEX_XD_KZ_B, /* 12774 */
+  IC_EVEX_XD_KZ_B, /* 12775 */
+  IC_EVEX_W_KZ_B, /* 12776 */
+  IC_EVEX_W_KZ_B, /* 12777 */
+  IC_EVEX_W_XS_KZ_B, /* 12778 */
+  IC_EVEX_W_XS_KZ_B, /* 12779 */
+  IC_EVEX_W_XD_KZ_B, /* 12780 */
+  IC_EVEX_W_XD_KZ_B, /* 12781 */
+  IC_EVEX_W_XD_KZ_B, /* 12782 */
+  IC_EVEX_W_XD_KZ_B, /* 12783 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12784 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12785 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12786 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12787 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12788 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12789 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12790 */
+  IC_EVEX_OPSIZE_KZ_B, /* 12791 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12792 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12793 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12794 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12795 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12796 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12797 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12798 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 12799 */
+  IC, /* 12800 */
+  IC_64BIT, /* 12801 */
+  IC_XS, /* 12802 */
+  IC_64BIT_XS, /* 12803 */
+  IC_XD, /* 12804 */
+  IC_64BIT_XD, /* 12805 */
+  IC_XS, /* 12806 */
+  IC_64BIT_XS, /* 12807 */
+  IC, /* 12808 */
+  IC_64BIT_REXW, /* 12809 */
+  IC_XS, /* 12810 */
+  IC_64BIT_REXW_XS, /* 12811 */
+  IC_XD, /* 12812 */
+  IC_64BIT_REXW_XD, /* 12813 */
+  IC_XS, /* 12814 */
+  IC_64BIT_REXW_XS, /* 12815 */
+  IC_OPSIZE, /* 12816 */
+  IC_64BIT_OPSIZE, /* 12817 */
+  IC_XS_OPSIZE, /* 12818 */
+  IC_64BIT_XS_OPSIZE, /* 12819 */
+  IC_XD_OPSIZE, /* 12820 */
+  IC_64BIT_XD_OPSIZE, /* 12821 */
+  IC_XS_OPSIZE, /* 12822 */
+  IC_64BIT_XD_OPSIZE, /* 12823 */
+  IC_OPSIZE, /* 12824 */
+  IC_64BIT_REXW_OPSIZE, /* 12825 */
+  IC_XS_OPSIZE, /* 12826 */
+  IC_64BIT_REXW_XS, /* 12827 */
+  IC_XD_OPSIZE, /* 12828 */
+  IC_64BIT_REXW_XD, /* 12829 */
+  IC_XS_OPSIZE, /* 12830 */
+  IC_64BIT_REXW_XS, /* 12831 */
+  IC_ADSIZE, /* 12832 */
+  IC_64BIT_ADSIZE, /* 12833 */
+  IC_XS, /* 12834 */
+  IC_64BIT_XS, /* 12835 */
+  IC_XD, /* 12836 */
+  IC_64BIT_XD, /* 12837 */
+  IC_XS, /* 12838 */
+  IC_64BIT_XS, /* 12839 */
+  IC_ADSIZE, /* 12840 */
+  IC_64BIT_ADSIZE, /* 12841 */
+  IC_XS, /* 12842 */
+  IC_64BIT_REXW_XS, /* 12843 */
+  IC_XD, /* 12844 */
+  IC_64BIT_REXW_XD, /* 12845 */
+  IC_XS, /* 12846 */
+  IC_64BIT_REXW_XS, /* 12847 */
+  IC_OPSIZE, /* 12848 */
+  IC_64BIT_OPSIZE, /* 12849 */
+  IC_XS_OPSIZE, /* 12850 */
+  IC_64BIT_XS_OPSIZE, /* 12851 */
+  IC_XD_OPSIZE, /* 12852 */
+  IC_64BIT_XD_OPSIZE, /* 12853 */
+  IC_XS_OPSIZE, /* 12854 */
+  IC_64BIT_XD_OPSIZE, /* 12855 */
+  IC_OPSIZE, /* 12856 */
+  IC_64BIT_REXW_OPSIZE, /* 12857 */
+  IC_XS_OPSIZE, /* 12858 */
+  IC_64BIT_REXW_XS, /* 12859 */
+  IC_XD_OPSIZE, /* 12860 */
+  IC_64BIT_REXW_XD, /* 12861 */
+  IC_XS_OPSIZE, /* 12862 */
+  IC_64BIT_REXW_XS, /* 12863 */
+  IC_VEX, /* 12864 */
+  IC_VEX, /* 12865 */
+  IC_VEX_XS, /* 12866 */
+  IC_VEX_XS, /* 12867 */
+  IC_VEX_XD, /* 12868 */
+  IC_VEX_XD, /* 12869 */
+  IC_VEX_XD, /* 12870 */
+  IC_VEX_XD, /* 12871 */
+  IC_VEX_W, /* 12872 */
+  IC_VEX_W, /* 12873 */
+  IC_VEX_W_XS, /* 12874 */
+  IC_VEX_W_XS, /* 12875 */
+  IC_VEX_W_XD, /* 12876 */
+  IC_VEX_W_XD, /* 12877 */
+  IC_VEX_W_XD, /* 12878 */
+  IC_VEX_W_XD, /* 12879 */
+  IC_VEX_OPSIZE, /* 12880 */
+  IC_VEX_OPSIZE, /* 12881 */
+  IC_VEX_OPSIZE, /* 12882 */
+  IC_VEX_OPSIZE, /* 12883 */
+  IC_VEX_OPSIZE, /* 12884 */
+  IC_VEX_OPSIZE, /* 12885 */
+  IC_VEX_OPSIZE, /* 12886 */
+  IC_VEX_OPSIZE, /* 12887 */
+  IC_VEX_W_OPSIZE, /* 12888 */
+  IC_VEX_W_OPSIZE, /* 12889 */
+  IC_VEX_W_OPSIZE, /* 12890 */
+  IC_VEX_W_OPSIZE, /* 12891 */
+  IC_VEX_W_OPSIZE, /* 12892 */
+  IC_VEX_W_OPSIZE, /* 12893 */
+  IC_VEX_W_OPSIZE, /* 12894 */
+  IC_VEX_W_OPSIZE, /* 12895 */
+  IC_VEX, /* 12896 */
+  IC_VEX, /* 12897 */
+  IC_VEX_XS, /* 12898 */
+  IC_VEX_XS, /* 12899 */
+  IC_VEX_XD, /* 12900 */
+  IC_VEX_XD, /* 12901 */
+  IC_VEX_XD, /* 12902 */
+  IC_VEX_XD, /* 12903 */
+  IC_VEX_W, /* 12904 */
+  IC_VEX_W, /* 12905 */
+  IC_VEX_W_XS, /* 12906 */
+  IC_VEX_W_XS, /* 12907 */
+  IC_VEX_W_XD, /* 12908 */
+  IC_VEX_W_XD, /* 12909 */
+  IC_VEX_W_XD, /* 12910 */
+  IC_VEX_W_XD, /* 12911 */
+  IC_VEX_OPSIZE, /* 12912 */
+  IC_VEX_OPSIZE, /* 12913 */
+  IC_VEX_OPSIZE, /* 12914 */
+  IC_VEX_OPSIZE, /* 12915 */
+  IC_VEX_OPSIZE, /* 12916 */
+  IC_VEX_OPSIZE, /* 12917 */
+  IC_VEX_OPSIZE, /* 12918 */
+  IC_VEX_OPSIZE, /* 12919 */
+  IC_VEX_W_OPSIZE, /* 12920 */
+  IC_VEX_W_OPSIZE, /* 12921 */
+  IC_VEX_W_OPSIZE, /* 12922 */
+  IC_VEX_W_OPSIZE, /* 12923 */
+  IC_VEX_W_OPSIZE, /* 12924 */
+  IC_VEX_W_OPSIZE, /* 12925 */
+  IC_VEX_W_OPSIZE, /* 12926 */
+  IC_VEX_W_OPSIZE, /* 12927 */
+  IC_VEX_L, /* 12928 */
+  IC_VEX_L, /* 12929 */
+  IC_VEX_L_XS, /* 12930 */
+  IC_VEX_L_XS, /* 12931 */
+  IC_VEX_L_XD, /* 12932 */
+  IC_VEX_L_XD, /* 12933 */
+  IC_VEX_L_XD, /* 12934 */
+  IC_VEX_L_XD, /* 12935 */
+  IC_VEX_L_W, /* 12936 */
+  IC_VEX_L_W, /* 12937 */
+  IC_VEX_L_W_XS, /* 12938 */
+  IC_VEX_L_W_XS, /* 12939 */
+  IC_VEX_L_W_XD, /* 12940 */
+  IC_VEX_L_W_XD, /* 12941 */
+  IC_VEX_L_W_XD, /* 12942 */
+  IC_VEX_L_W_XD, /* 12943 */
+  IC_VEX_L_OPSIZE, /* 12944 */
+  IC_VEX_L_OPSIZE, /* 12945 */
+  IC_VEX_L_OPSIZE, /* 12946 */
+  IC_VEX_L_OPSIZE, /* 12947 */
+  IC_VEX_L_OPSIZE, /* 12948 */
+  IC_VEX_L_OPSIZE, /* 12949 */
+  IC_VEX_L_OPSIZE, /* 12950 */
+  IC_VEX_L_OPSIZE, /* 12951 */
+  IC_VEX_L_W_OPSIZE, /* 12952 */
+  IC_VEX_L_W_OPSIZE, /* 12953 */
+  IC_VEX_L_W_OPSIZE, /* 12954 */
+  IC_VEX_L_W_OPSIZE, /* 12955 */
+  IC_VEX_L_W_OPSIZE, /* 12956 */
+  IC_VEX_L_W_OPSIZE, /* 12957 */
+  IC_VEX_L_W_OPSIZE, /* 12958 */
+  IC_VEX_L_W_OPSIZE, /* 12959 */
+  IC_VEX_L, /* 12960 */
+  IC_VEX_L, /* 12961 */
+  IC_VEX_L_XS, /* 12962 */
+  IC_VEX_L_XS, /* 12963 */
+  IC_VEX_L_XD, /* 12964 */
+  IC_VEX_L_XD, /* 12965 */
+  IC_VEX_L_XD, /* 12966 */
+  IC_VEX_L_XD, /* 12967 */
+  IC_VEX_L_W, /* 12968 */
+  IC_VEX_L_W, /* 12969 */
+  IC_VEX_L_W_XS, /* 12970 */
+  IC_VEX_L_W_XS, /* 12971 */
+  IC_VEX_L_W_XD, /* 12972 */
+  IC_VEX_L_W_XD, /* 12973 */
+  IC_VEX_L_W_XD, /* 12974 */
+  IC_VEX_L_W_XD, /* 12975 */
+  IC_VEX_L_OPSIZE, /* 12976 */
+  IC_VEX_L_OPSIZE, /* 12977 */
+  IC_VEX_L_OPSIZE, /* 12978 */
+  IC_VEX_L_OPSIZE, /* 12979 */
+  IC_VEX_L_OPSIZE, /* 12980 */
+  IC_VEX_L_OPSIZE, /* 12981 */
+  IC_VEX_L_OPSIZE, /* 12982 */
+  IC_VEX_L_OPSIZE, /* 12983 */
+  IC_VEX_L_W_OPSIZE, /* 12984 */
+  IC_VEX_L_W_OPSIZE, /* 12985 */
+  IC_VEX_L_W_OPSIZE, /* 12986 */
+  IC_VEX_L_W_OPSIZE, /* 12987 */
+  IC_VEX_L_W_OPSIZE, /* 12988 */
+  IC_VEX_L_W_OPSIZE, /* 12989 */
+  IC_VEX_L_W_OPSIZE, /* 12990 */
+  IC_VEX_L_W_OPSIZE, /* 12991 */
+  IC_VEX_L, /* 12992 */
+  IC_VEX_L, /* 12993 */
+  IC_VEX_L_XS, /* 12994 */
+  IC_VEX_L_XS, /* 12995 */
+  IC_VEX_L_XD, /* 12996 */
+  IC_VEX_L_XD, /* 12997 */
+  IC_VEX_L_XD, /* 12998 */
+  IC_VEX_L_XD, /* 12999 */
+  IC_VEX_L_W, /* 13000 */
+  IC_VEX_L_W, /* 13001 */
+  IC_VEX_L_W_XS, /* 13002 */
+  IC_VEX_L_W_XS, /* 13003 */
+  IC_VEX_L_W_XD, /* 13004 */
+  IC_VEX_L_W_XD, /* 13005 */
+  IC_VEX_L_W_XD, /* 13006 */
+  IC_VEX_L_W_XD, /* 13007 */
+  IC_VEX_L_OPSIZE, /* 13008 */
+  IC_VEX_L_OPSIZE, /* 13009 */
+  IC_VEX_L_OPSIZE, /* 13010 */
+  IC_VEX_L_OPSIZE, /* 13011 */
+  IC_VEX_L_OPSIZE, /* 13012 */
+  IC_VEX_L_OPSIZE, /* 13013 */
+  IC_VEX_L_OPSIZE, /* 13014 */
+  IC_VEX_L_OPSIZE, /* 13015 */
+  IC_VEX_L_W_OPSIZE, /* 13016 */
+  IC_VEX_L_W_OPSIZE, /* 13017 */
+  IC_VEX_L_W_OPSIZE, /* 13018 */
+  IC_VEX_L_W_OPSIZE, /* 13019 */
+  IC_VEX_L_W_OPSIZE, /* 13020 */
+  IC_VEX_L_W_OPSIZE, /* 13021 */
+  IC_VEX_L_W_OPSIZE, /* 13022 */
+  IC_VEX_L_W_OPSIZE, /* 13023 */
+  IC_VEX_L, /* 13024 */
+  IC_VEX_L, /* 13025 */
+  IC_VEX_L_XS, /* 13026 */
+  IC_VEX_L_XS, /* 13027 */
+  IC_VEX_L_XD, /* 13028 */
+  IC_VEX_L_XD, /* 13029 */
+  IC_VEX_L_XD, /* 13030 */
+  IC_VEX_L_XD, /* 13031 */
+  IC_VEX_L_W, /* 13032 */
+  IC_VEX_L_W, /* 13033 */
+  IC_VEX_L_W_XS, /* 13034 */
+  IC_VEX_L_W_XS, /* 13035 */
+  IC_VEX_L_W_XD, /* 13036 */
+  IC_VEX_L_W_XD, /* 13037 */
+  IC_VEX_L_W_XD, /* 13038 */
+  IC_VEX_L_W_XD, /* 13039 */
+  IC_VEX_L_OPSIZE, /* 13040 */
+  IC_VEX_L_OPSIZE, /* 13041 */
+  IC_VEX_L_OPSIZE, /* 13042 */
+  IC_VEX_L_OPSIZE, /* 13043 */
+  IC_VEX_L_OPSIZE, /* 13044 */
+  IC_VEX_L_OPSIZE, /* 13045 */
+  IC_VEX_L_OPSIZE, /* 13046 */
+  IC_VEX_L_OPSIZE, /* 13047 */
+  IC_VEX_L_W_OPSIZE, /* 13048 */
+  IC_VEX_L_W_OPSIZE, /* 13049 */
+  IC_VEX_L_W_OPSIZE, /* 13050 */
+  IC_VEX_L_W_OPSIZE, /* 13051 */
+  IC_VEX_L_W_OPSIZE, /* 13052 */
+  IC_VEX_L_W_OPSIZE, /* 13053 */
+  IC_VEX_L_W_OPSIZE, /* 13054 */
+  IC_VEX_L_W_OPSIZE, /* 13055 */
+  IC_EVEX_L_KZ_B, /* 13056 */
+  IC_EVEX_L_KZ_B, /* 13057 */
+  IC_EVEX_L_XS_KZ_B, /* 13058 */
+  IC_EVEX_L_XS_KZ_B, /* 13059 */
+  IC_EVEX_L_XD_KZ_B, /* 13060 */
+  IC_EVEX_L_XD_KZ_B, /* 13061 */
+  IC_EVEX_L_XD_KZ_B, /* 13062 */
+  IC_EVEX_L_XD_KZ_B, /* 13063 */
+  IC_EVEX_L_W_KZ_B, /* 13064 */
+  IC_EVEX_L_W_KZ_B, /* 13065 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13066 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13067 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13068 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13069 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13070 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13071 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13072 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13073 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13074 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13075 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13076 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13077 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13078 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13079 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13080 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13081 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13082 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13083 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13084 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13085 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13086 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13087 */
+  IC_EVEX_L_KZ_B, /* 13088 */
+  IC_EVEX_L_KZ_B, /* 13089 */
+  IC_EVEX_L_XS_KZ_B, /* 13090 */
+  IC_EVEX_L_XS_KZ_B, /* 13091 */
+  IC_EVEX_L_XD_KZ_B, /* 13092 */
+  IC_EVEX_L_XD_KZ_B, /* 13093 */
+  IC_EVEX_L_XD_KZ_B, /* 13094 */
+  IC_EVEX_L_XD_KZ_B, /* 13095 */
+  IC_EVEX_L_W_KZ_B, /* 13096 */
+  IC_EVEX_L_W_KZ_B, /* 13097 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13098 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13099 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13100 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13101 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13102 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13103 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13104 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13105 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13106 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13107 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13108 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13109 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13110 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13111 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13112 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13113 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13114 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13115 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13116 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13117 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13118 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13119 */
+  IC_EVEX_L_KZ_B, /* 13120 */
+  IC_EVEX_L_KZ_B, /* 13121 */
+  IC_EVEX_L_XS_KZ_B, /* 13122 */
+  IC_EVEX_L_XS_KZ_B, /* 13123 */
+  IC_EVEX_L_XD_KZ_B, /* 13124 */
+  IC_EVEX_L_XD_KZ_B, /* 13125 */
+  IC_EVEX_L_XD_KZ_B, /* 13126 */
+  IC_EVEX_L_XD_KZ_B, /* 13127 */
+  IC_EVEX_L_W_KZ_B, /* 13128 */
+  IC_EVEX_L_W_KZ_B, /* 13129 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13130 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13131 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13132 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13133 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13134 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13135 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13136 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13137 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13138 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13139 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13140 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13141 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13142 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13143 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13144 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13145 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13146 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13147 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13148 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13149 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13150 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13151 */
+  IC_EVEX_L_KZ_B, /* 13152 */
+  IC_EVEX_L_KZ_B, /* 13153 */
+  IC_EVEX_L_XS_KZ_B, /* 13154 */
+  IC_EVEX_L_XS_KZ_B, /* 13155 */
+  IC_EVEX_L_XD_KZ_B, /* 13156 */
+  IC_EVEX_L_XD_KZ_B, /* 13157 */
+  IC_EVEX_L_XD_KZ_B, /* 13158 */
+  IC_EVEX_L_XD_KZ_B, /* 13159 */
+  IC_EVEX_L_W_KZ_B, /* 13160 */
+  IC_EVEX_L_W_KZ_B, /* 13161 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13162 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13163 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13164 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13165 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13166 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13167 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13168 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13169 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13170 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13171 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13172 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13173 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13174 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13175 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13176 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13177 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13178 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13179 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13180 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13181 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13182 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13183 */
+  IC_EVEX_L_KZ_B, /* 13184 */
+  IC_EVEX_L_KZ_B, /* 13185 */
+  IC_EVEX_L_XS_KZ_B, /* 13186 */
+  IC_EVEX_L_XS_KZ_B, /* 13187 */
+  IC_EVEX_L_XD_KZ_B, /* 13188 */
+  IC_EVEX_L_XD_KZ_B, /* 13189 */
+  IC_EVEX_L_XD_KZ_B, /* 13190 */
+  IC_EVEX_L_XD_KZ_B, /* 13191 */
+  IC_EVEX_L_W_KZ_B, /* 13192 */
+  IC_EVEX_L_W_KZ_B, /* 13193 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13194 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13195 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13196 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13197 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13198 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13199 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13200 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13201 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13202 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13203 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13204 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13205 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13206 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13207 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13208 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13209 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13210 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13211 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13212 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13213 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13214 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13215 */
+  IC_EVEX_L_KZ_B, /* 13216 */
+  IC_EVEX_L_KZ_B, /* 13217 */
+  IC_EVEX_L_XS_KZ_B, /* 13218 */
+  IC_EVEX_L_XS_KZ_B, /* 13219 */
+  IC_EVEX_L_XD_KZ_B, /* 13220 */
+  IC_EVEX_L_XD_KZ_B, /* 13221 */
+  IC_EVEX_L_XD_KZ_B, /* 13222 */
+  IC_EVEX_L_XD_KZ_B, /* 13223 */
+  IC_EVEX_L_W_KZ_B, /* 13224 */
+  IC_EVEX_L_W_KZ_B, /* 13225 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13226 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13227 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13228 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13229 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13230 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13231 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13232 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13233 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13234 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13235 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13236 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13237 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13238 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13239 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13240 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13241 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13242 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13243 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13244 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13245 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13246 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13247 */
+  IC_EVEX_L_KZ_B, /* 13248 */
+  IC_EVEX_L_KZ_B, /* 13249 */
+  IC_EVEX_L_XS_KZ_B, /* 13250 */
+  IC_EVEX_L_XS_KZ_B, /* 13251 */
+  IC_EVEX_L_XD_KZ_B, /* 13252 */
+  IC_EVEX_L_XD_KZ_B, /* 13253 */
+  IC_EVEX_L_XD_KZ_B, /* 13254 */
+  IC_EVEX_L_XD_KZ_B, /* 13255 */
+  IC_EVEX_L_W_KZ_B, /* 13256 */
+  IC_EVEX_L_W_KZ_B, /* 13257 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13258 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13259 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13260 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13261 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13262 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13263 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13264 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13265 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13266 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13267 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13268 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13269 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13270 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13271 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13272 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13273 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13274 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13275 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13276 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13277 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13278 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13279 */
+  IC_EVEX_L_KZ_B, /* 13280 */
+  IC_EVEX_L_KZ_B, /* 13281 */
+  IC_EVEX_L_XS_KZ_B, /* 13282 */
+  IC_EVEX_L_XS_KZ_B, /* 13283 */
+  IC_EVEX_L_XD_KZ_B, /* 13284 */
+  IC_EVEX_L_XD_KZ_B, /* 13285 */
+  IC_EVEX_L_XD_KZ_B, /* 13286 */
+  IC_EVEX_L_XD_KZ_B, /* 13287 */
+  IC_EVEX_L_W_KZ_B, /* 13288 */
+  IC_EVEX_L_W_KZ_B, /* 13289 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13290 */
+  IC_EVEX_L_W_XS_KZ_B, /* 13291 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13292 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13293 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13294 */
+  IC_EVEX_L_W_XD_KZ_B, /* 13295 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13296 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13297 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13298 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13299 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13300 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13301 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13302 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 13303 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13304 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13305 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13306 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13307 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13308 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13309 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13310 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 13311 */
+  IC, /* 13312 */
+  IC_64BIT, /* 13313 */
+  IC_XS, /* 13314 */
+  IC_64BIT_XS, /* 13315 */
+  IC_XD, /* 13316 */
+  IC_64BIT_XD, /* 13317 */
+  IC_XS, /* 13318 */
+  IC_64BIT_XS, /* 13319 */
+  IC, /* 13320 */
+  IC_64BIT_REXW, /* 13321 */
+  IC_XS, /* 13322 */
+  IC_64BIT_REXW_XS, /* 13323 */
+  IC_XD, /* 13324 */
+  IC_64BIT_REXW_XD, /* 13325 */
+  IC_XS, /* 13326 */
+  IC_64BIT_REXW_XS, /* 13327 */
+  IC_OPSIZE, /* 13328 */
+  IC_64BIT_OPSIZE, /* 13329 */
+  IC_XS_OPSIZE, /* 13330 */
+  IC_64BIT_XS_OPSIZE, /* 13331 */
+  IC_XD_OPSIZE, /* 13332 */
+  IC_64BIT_XD_OPSIZE, /* 13333 */
+  IC_XS_OPSIZE, /* 13334 */
+  IC_64BIT_XD_OPSIZE, /* 13335 */
+  IC_OPSIZE, /* 13336 */
+  IC_64BIT_REXW_OPSIZE, /* 13337 */
+  IC_XS_OPSIZE, /* 13338 */
+  IC_64BIT_REXW_XS, /* 13339 */
+  IC_XD_OPSIZE, /* 13340 */
+  IC_64BIT_REXW_XD, /* 13341 */
+  IC_XS_OPSIZE, /* 13342 */
+  IC_64BIT_REXW_XS, /* 13343 */
+  IC_ADSIZE, /* 13344 */
+  IC_64BIT_ADSIZE, /* 13345 */
+  IC_XS, /* 13346 */
+  IC_64BIT_XS, /* 13347 */
+  IC_XD, /* 13348 */
+  IC_64BIT_XD, /* 13349 */
+  IC_XS, /* 13350 */
+  IC_64BIT_XS, /* 13351 */
+  IC_ADSIZE, /* 13352 */
+  IC_64BIT_ADSIZE, /* 13353 */
+  IC_XS, /* 13354 */
+  IC_64BIT_REXW_XS, /* 13355 */
+  IC_XD, /* 13356 */
+  IC_64BIT_REXW_XD, /* 13357 */
+  IC_XS, /* 13358 */
+  IC_64BIT_REXW_XS, /* 13359 */
+  IC_OPSIZE, /* 13360 */
+  IC_64BIT_OPSIZE, /* 13361 */
+  IC_XS_OPSIZE, /* 13362 */
+  IC_64BIT_XS_OPSIZE, /* 13363 */
+  IC_XD_OPSIZE, /* 13364 */
+  IC_64BIT_XD_OPSIZE, /* 13365 */
+  IC_XS_OPSIZE, /* 13366 */
+  IC_64BIT_XD_OPSIZE, /* 13367 */
+  IC_OPSIZE, /* 13368 */
+  IC_64BIT_REXW_OPSIZE, /* 13369 */
+  IC_XS_OPSIZE, /* 13370 */
+  IC_64BIT_REXW_XS, /* 13371 */
+  IC_XD_OPSIZE, /* 13372 */
+  IC_64BIT_REXW_XD, /* 13373 */
+  IC_XS_OPSIZE, /* 13374 */
+  IC_64BIT_REXW_XS, /* 13375 */
+  IC_VEX, /* 13376 */
+  IC_VEX, /* 13377 */
+  IC_VEX_XS, /* 13378 */
+  IC_VEX_XS, /* 13379 */
+  IC_VEX_XD, /* 13380 */
+  IC_VEX_XD, /* 13381 */
+  IC_VEX_XD, /* 13382 */
+  IC_VEX_XD, /* 13383 */
+  IC_VEX_W, /* 13384 */
+  IC_VEX_W, /* 13385 */
+  IC_VEX_W_XS, /* 13386 */
+  IC_VEX_W_XS, /* 13387 */
+  IC_VEX_W_XD, /* 13388 */
+  IC_VEX_W_XD, /* 13389 */
+  IC_VEX_W_XD, /* 13390 */
+  IC_VEX_W_XD, /* 13391 */
+  IC_VEX_OPSIZE, /* 13392 */
+  IC_VEX_OPSIZE, /* 13393 */
+  IC_VEX_OPSIZE, /* 13394 */
+  IC_VEX_OPSIZE, /* 13395 */
+  IC_VEX_OPSIZE, /* 13396 */
+  IC_VEX_OPSIZE, /* 13397 */
+  IC_VEX_OPSIZE, /* 13398 */
+  IC_VEX_OPSIZE, /* 13399 */
+  IC_VEX_W_OPSIZE, /* 13400 */
+  IC_VEX_W_OPSIZE, /* 13401 */
+  IC_VEX_W_OPSIZE, /* 13402 */
+  IC_VEX_W_OPSIZE, /* 13403 */
+  IC_VEX_W_OPSIZE, /* 13404 */
+  IC_VEX_W_OPSIZE, /* 13405 */
+  IC_VEX_W_OPSIZE, /* 13406 */
+  IC_VEX_W_OPSIZE, /* 13407 */
+  IC_VEX, /* 13408 */
+  IC_VEX, /* 13409 */
+  IC_VEX_XS, /* 13410 */
+  IC_VEX_XS, /* 13411 */
+  IC_VEX_XD, /* 13412 */
+  IC_VEX_XD, /* 13413 */
+  IC_VEX_XD, /* 13414 */
+  IC_VEX_XD, /* 13415 */
+  IC_VEX_W, /* 13416 */
+  IC_VEX_W, /* 13417 */
+  IC_VEX_W_XS, /* 13418 */
+  IC_VEX_W_XS, /* 13419 */
+  IC_VEX_W_XD, /* 13420 */
+  IC_VEX_W_XD, /* 13421 */
+  IC_VEX_W_XD, /* 13422 */
+  IC_VEX_W_XD, /* 13423 */
+  IC_VEX_OPSIZE, /* 13424 */
+  IC_VEX_OPSIZE, /* 13425 */
+  IC_VEX_OPSIZE, /* 13426 */
+  IC_VEX_OPSIZE, /* 13427 */
+  IC_VEX_OPSIZE, /* 13428 */
+  IC_VEX_OPSIZE, /* 13429 */
+  IC_VEX_OPSIZE, /* 13430 */
+  IC_VEX_OPSIZE, /* 13431 */
+  IC_VEX_W_OPSIZE, /* 13432 */
+  IC_VEX_W_OPSIZE, /* 13433 */
+  IC_VEX_W_OPSIZE, /* 13434 */
+  IC_VEX_W_OPSIZE, /* 13435 */
+  IC_VEX_W_OPSIZE, /* 13436 */
+  IC_VEX_W_OPSIZE, /* 13437 */
+  IC_VEX_W_OPSIZE, /* 13438 */
+  IC_VEX_W_OPSIZE, /* 13439 */
+  IC_VEX_L, /* 13440 */
+  IC_VEX_L, /* 13441 */
+  IC_VEX_L_XS, /* 13442 */
+  IC_VEX_L_XS, /* 13443 */
+  IC_VEX_L_XD, /* 13444 */
+  IC_VEX_L_XD, /* 13445 */
+  IC_VEX_L_XD, /* 13446 */
+  IC_VEX_L_XD, /* 13447 */
+  IC_VEX_L_W, /* 13448 */
+  IC_VEX_L_W, /* 13449 */
+  IC_VEX_L_W_XS, /* 13450 */
+  IC_VEX_L_W_XS, /* 13451 */
+  IC_VEX_L_W_XD, /* 13452 */
+  IC_VEX_L_W_XD, /* 13453 */
+  IC_VEX_L_W_XD, /* 13454 */
+  IC_VEX_L_W_XD, /* 13455 */
+  IC_VEX_L_OPSIZE, /* 13456 */
+  IC_VEX_L_OPSIZE, /* 13457 */
+  IC_VEX_L_OPSIZE, /* 13458 */
+  IC_VEX_L_OPSIZE, /* 13459 */
+  IC_VEX_L_OPSIZE, /* 13460 */
+  IC_VEX_L_OPSIZE, /* 13461 */
+  IC_VEX_L_OPSIZE, /* 13462 */
+  IC_VEX_L_OPSIZE, /* 13463 */
+  IC_VEX_L_W_OPSIZE, /* 13464 */
+  IC_VEX_L_W_OPSIZE, /* 13465 */
+  IC_VEX_L_W_OPSIZE, /* 13466 */
+  IC_VEX_L_W_OPSIZE, /* 13467 */
+  IC_VEX_L_W_OPSIZE, /* 13468 */
+  IC_VEX_L_W_OPSIZE, /* 13469 */
+  IC_VEX_L_W_OPSIZE, /* 13470 */
+  IC_VEX_L_W_OPSIZE, /* 13471 */
+  IC_VEX_L, /* 13472 */
+  IC_VEX_L, /* 13473 */
+  IC_VEX_L_XS, /* 13474 */
+  IC_VEX_L_XS, /* 13475 */
+  IC_VEX_L_XD, /* 13476 */
+  IC_VEX_L_XD, /* 13477 */
+  IC_VEX_L_XD, /* 13478 */
+  IC_VEX_L_XD, /* 13479 */
+  IC_VEX_L_W, /* 13480 */
+  IC_VEX_L_W, /* 13481 */
+  IC_VEX_L_W_XS, /* 13482 */
+  IC_VEX_L_W_XS, /* 13483 */
+  IC_VEX_L_W_XD, /* 13484 */
+  IC_VEX_L_W_XD, /* 13485 */
+  IC_VEX_L_W_XD, /* 13486 */
+  IC_VEX_L_W_XD, /* 13487 */
+  IC_VEX_L_OPSIZE, /* 13488 */
+  IC_VEX_L_OPSIZE, /* 13489 */
+  IC_VEX_L_OPSIZE, /* 13490 */
+  IC_VEX_L_OPSIZE, /* 13491 */
+  IC_VEX_L_OPSIZE, /* 13492 */
+  IC_VEX_L_OPSIZE, /* 13493 */
+  IC_VEX_L_OPSIZE, /* 13494 */
+  IC_VEX_L_OPSIZE, /* 13495 */
+  IC_VEX_L_W_OPSIZE, /* 13496 */
+  IC_VEX_L_W_OPSIZE, /* 13497 */
+  IC_VEX_L_W_OPSIZE, /* 13498 */
+  IC_VEX_L_W_OPSIZE, /* 13499 */
+  IC_VEX_L_W_OPSIZE, /* 13500 */
+  IC_VEX_L_W_OPSIZE, /* 13501 */
+  IC_VEX_L_W_OPSIZE, /* 13502 */
+  IC_VEX_L_W_OPSIZE, /* 13503 */
+  IC_VEX_L, /* 13504 */
+  IC_VEX_L, /* 13505 */
+  IC_VEX_L_XS, /* 13506 */
+  IC_VEX_L_XS, /* 13507 */
+  IC_VEX_L_XD, /* 13508 */
+  IC_VEX_L_XD, /* 13509 */
+  IC_VEX_L_XD, /* 13510 */
+  IC_VEX_L_XD, /* 13511 */
+  IC_VEX_L_W, /* 13512 */
+  IC_VEX_L_W, /* 13513 */
+  IC_VEX_L_W_XS, /* 13514 */
+  IC_VEX_L_W_XS, /* 13515 */
+  IC_VEX_L_W_XD, /* 13516 */
+  IC_VEX_L_W_XD, /* 13517 */
+  IC_VEX_L_W_XD, /* 13518 */
+  IC_VEX_L_W_XD, /* 13519 */
+  IC_VEX_L_OPSIZE, /* 13520 */
+  IC_VEX_L_OPSIZE, /* 13521 */
+  IC_VEX_L_OPSIZE, /* 13522 */
+  IC_VEX_L_OPSIZE, /* 13523 */
+  IC_VEX_L_OPSIZE, /* 13524 */
+  IC_VEX_L_OPSIZE, /* 13525 */
+  IC_VEX_L_OPSIZE, /* 13526 */
+  IC_VEX_L_OPSIZE, /* 13527 */
+  IC_VEX_L_W_OPSIZE, /* 13528 */
+  IC_VEX_L_W_OPSIZE, /* 13529 */
+  IC_VEX_L_W_OPSIZE, /* 13530 */
+  IC_VEX_L_W_OPSIZE, /* 13531 */
+  IC_VEX_L_W_OPSIZE, /* 13532 */
+  IC_VEX_L_W_OPSIZE, /* 13533 */
+  IC_VEX_L_W_OPSIZE, /* 13534 */
+  IC_VEX_L_W_OPSIZE, /* 13535 */
+  IC_VEX_L, /* 13536 */
+  IC_VEX_L, /* 13537 */
+  IC_VEX_L_XS, /* 13538 */
+  IC_VEX_L_XS, /* 13539 */
+  IC_VEX_L_XD, /* 13540 */
+  IC_VEX_L_XD, /* 13541 */
+  IC_VEX_L_XD, /* 13542 */
+  IC_VEX_L_XD, /* 13543 */
+  IC_VEX_L_W, /* 13544 */
+  IC_VEX_L_W, /* 13545 */
+  IC_VEX_L_W_XS, /* 13546 */
+  IC_VEX_L_W_XS, /* 13547 */
+  IC_VEX_L_W_XD, /* 13548 */
+  IC_VEX_L_W_XD, /* 13549 */
+  IC_VEX_L_W_XD, /* 13550 */
+  IC_VEX_L_W_XD, /* 13551 */
+  IC_VEX_L_OPSIZE, /* 13552 */
+  IC_VEX_L_OPSIZE, /* 13553 */
+  IC_VEX_L_OPSIZE, /* 13554 */
+  IC_VEX_L_OPSIZE, /* 13555 */
+  IC_VEX_L_OPSIZE, /* 13556 */
+  IC_VEX_L_OPSIZE, /* 13557 */
+  IC_VEX_L_OPSIZE, /* 13558 */
+  IC_VEX_L_OPSIZE, /* 13559 */
+  IC_VEX_L_W_OPSIZE, /* 13560 */
+  IC_VEX_L_W_OPSIZE, /* 13561 */
+  IC_VEX_L_W_OPSIZE, /* 13562 */
+  IC_VEX_L_W_OPSIZE, /* 13563 */
+  IC_VEX_L_W_OPSIZE, /* 13564 */
+  IC_VEX_L_W_OPSIZE, /* 13565 */
+  IC_VEX_L_W_OPSIZE, /* 13566 */
+  IC_VEX_L_W_OPSIZE, /* 13567 */
+  IC_EVEX_L2_KZ_B, /* 13568 */
+  IC_EVEX_L2_KZ_B, /* 13569 */
+  IC_EVEX_L2_XS_KZ_B, /* 13570 */
+  IC_EVEX_L2_XS_KZ_B, /* 13571 */
+  IC_EVEX_L2_XD_KZ_B, /* 13572 */
+  IC_EVEX_L2_XD_KZ_B, /* 13573 */
+  IC_EVEX_L2_XD_KZ_B, /* 13574 */
+  IC_EVEX_L2_XD_KZ_B, /* 13575 */
+  IC_EVEX_L2_W_KZ_B, /* 13576 */
+  IC_EVEX_L2_W_KZ_B, /* 13577 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13578 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13579 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13580 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13581 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13582 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13583 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13584 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13585 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13586 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13587 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13588 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13589 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13590 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13591 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13592 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13593 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13594 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13595 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13596 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13597 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13598 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13599 */
+  IC_EVEX_L2_KZ_B, /* 13600 */
+  IC_EVEX_L2_KZ_B, /* 13601 */
+  IC_EVEX_L2_XS_KZ_B, /* 13602 */
+  IC_EVEX_L2_XS_KZ_B, /* 13603 */
+  IC_EVEX_L2_XD_KZ_B, /* 13604 */
+  IC_EVEX_L2_XD_KZ_B, /* 13605 */
+  IC_EVEX_L2_XD_KZ_B, /* 13606 */
+  IC_EVEX_L2_XD_KZ_B, /* 13607 */
+  IC_EVEX_L2_W_KZ_B, /* 13608 */
+  IC_EVEX_L2_W_KZ_B, /* 13609 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13610 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13611 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13612 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13613 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13614 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13615 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13616 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13617 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13618 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13619 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13620 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13621 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13622 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13623 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13624 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13625 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13626 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13627 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13628 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13629 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13630 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13631 */
+  IC_EVEX_L2_KZ_B, /* 13632 */
+  IC_EVEX_L2_KZ_B, /* 13633 */
+  IC_EVEX_L2_XS_KZ_B, /* 13634 */
+  IC_EVEX_L2_XS_KZ_B, /* 13635 */
+  IC_EVEX_L2_XD_KZ_B, /* 13636 */
+  IC_EVEX_L2_XD_KZ_B, /* 13637 */
+  IC_EVEX_L2_XD_KZ_B, /* 13638 */
+  IC_EVEX_L2_XD_KZ_B, /* 13639 */
+  IC_EVEX_L2_W_KZ_B, /* 13640 */
+  IC_EVEX_L2_W_KZ_B, /* 13641 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13642 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13643 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13644 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13645 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13646 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13647 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13648 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13649 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13650 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13651 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13652 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13653 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13654 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13655 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13656 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13657 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13658 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13659 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13660 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13661 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13662 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13663 */
+  IC_EVEX_L2_KZ_B, /* 13664 */
+  IC_EVEX_L2_KZ_B, /* 13665 */
+  IC_EVEX_L2_XS_KZ_B, /* 13666 */
+  IC_EVEX_L2_XS_KZ_B, /* 13667 */
+  IC_EVEX_L2_XD_KZ_B, /* 13668 */
+  IC_EVEX_L2_XD_KZ_B, /* 13669 */
+  IC_EVEX_L2_XD_KZ_B, /* 13670 */
+  IC_EVEX_L2_XD_KZ_B, /* 13671 */
+  IC_EVEX_L2_W_KZ_B, /* 13672 */
+  IC_EVEX_L2_W_KZ_B, /* 13673 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13674 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13675 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13676 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13677 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13678 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13679 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13680 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13681 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13682 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13683 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13684 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13685 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13686 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13687 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13688 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13689 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13690 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13691 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13692 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13693 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13694 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13695 */
+  IC_EVEX_L2_KZ_B, /* 13696 */
+  IC_EVEX_L2_KZ_B, /* 13697 */
+  IC_EVEX_L2_XS_KZ_B, /* 13698 */
+  IC_EVEX_L2_XS_KZ_B, /* 13699 */
+  IC_EVEX_L2_XD_KZ_B, /* 13700 */
+  IC_EVEX_L2_XD_KZ_B, /* 13701 */
+  IC_EVEX_L2_XD_KZ_B, /* 13702 */
+  IC_EVEX_L2_XD_KZ_B, /* 13703 */
+  IC_EVEX_L2_W_KZ_B, /* 13704 */
+  IC_EVEX_L2_W_KZ_B, /* 13705 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13706 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13707 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13708 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13709 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13710 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13711 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13712 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13713 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13714 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13715 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13716 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13717 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13718 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13719 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13720 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13721 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13722 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13723 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13724 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13725 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13726 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13727 */
+  IC_EVEX_L2_KZ_B, /* 13728 */
+  IC_EVEX_L2_KZ_B, /* 13729 */
+  IC_EVEX_L2_XS_KZ_B, /* 13730 */
+  IC_EVEX_L2_XS_KZ_B, /* 13731 */
+  IC_EVEX_L2_XD_KZ_B, /* 13732 */
+  IC_EVEX_L2_XD_KZ_B, /* 13733 */
+  IC_EVEX_L2_XD_KZ_B, /* 13734 */
+  IC_EVEX_L2_XD_KZ_B, /* 13735 */
+  IC_EVEX_L2_W_KZ_B, /* 13736 */
+  IC_EVEX_L2_W_KZ_B, /* 13737 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13738 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13739 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13740 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13741 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13742 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13743 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13744 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13745 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13746 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13747 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13748 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13749 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13750 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13751 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13752 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13753 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13754 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13755 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13756 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13757 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13758 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13759 */
+  IC_EVEX_L2_KZ_B, /* 13760 */
+  IC_EVEX_L2_KZ_B, /* 13761 */
+  IC_EVEX_L2_XS_KZ_B, /* 13762 */
+  IC_EVEX_L2_XS_KZ_B, /* 13763 */
+  IC_EVEX_L2_XD_KZ_B, /* 13764 */
+  IC_EVEX_L2_XD_KZ_B, /* 13765 */
+  IC_EVEX_L2_XD_KZ_B, /* 13766 */
+  IC_EVEX_L2_XD_KZ_B, /* 13767 */
+  IC_EVEX_L2_W_KZ_B, /* 13768 */
+  IC_EVEX_L2_W_KZ_B, /* 13769 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13770 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13771 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13772 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13773 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13774 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13775 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13776 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13777 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13778 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13779 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13780 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13781 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13782 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13783 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13784 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13785 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13786 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13787 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13788 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13789 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13790 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13791 */
+  IC_EVEX_L2_KZ_B, /* 13792 */
+  IC_EVEX_L2_KZ_B, /* 13793 */
+  IC_EVEX_L2_XS_KZ_B, /* 13794 */
+  IC_EVEX_L2_XS_KZ_B, /* 13795 */
+  IC_EVEX_L2_XD_KZ_B, /* 13796 */
+  IC_EVEX_L2_XD_KZ_B, /* 13797 */
+  IC_EVEX_L2_XD_KZ_B, /* 13798 */
+  IC_EVEX_L2_XD_KZ_B, /* 13799 */
+  IC_EVEX_L2_W_KZ_B, /* 13800 */
+  IC_EVEX_L2_W_KZ_B, /* 13801 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13802 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 13803 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13804 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13805 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13806 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 13807 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13808 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13809 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13810 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13811 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13812 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13813 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13814 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 13815 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13816 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13817 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13818 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13819 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13820 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13821 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13822 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 13823 */
+  IC, /* 13824 */
+  IC_64BIT, /* 13825 */
+  IC_XS, /* 13826 */
+  IC_64BIT_XS, /* 13827 */
+  IC_XD, /* 13828 */
+  IC_64BIT_XD, /* 13829 */
+  IC_XS, /* 13830 */
+  IC_64BIT_XS, /* 13831 */
+  IC, /* 13832 */
+  IC_64BIT_REXW, /* 13833 */
+  IC_XS, /* 13834 */
+  IC_64BIT_REXW_XS, /* 13835 */
+  IC_XD, /* 13836 */
+  IC_64BIT_REXW_XD, /* 13837 */
+  IC_XS, /* 13838 */
+  IC_64BIT_REXW_XS, /* 13839 */
+  IC_OPSIZE, /* 13840 */
+  IC_64BIT_OPSIZE, /* 13841 */
+  IC_XS_OPSIZE, /* 13842 */
+  IC_64BIT_XS_OPSIZE, /* 13843 */
+  IC_XD_OPSIZE, /* 13844 */
+  IC_64BIT_XD_OPSIZE, /* 13845 */
+  IC_XS_OPSIZE, /* 13846 */
+  IC_64BIT_XD_OPSIZE, /* 13847 */
+  IC_OPSIZE, /* 13848 */
+  IC_64BIT_REXW_OPSIZE, /* 13849 */
+  IC_XS_OPSIZE, /* 13850 */
+  IC_64BIT_REXW_XS, /* 13851 */
+  IC_XD_OPSIZE, /* 13852 */
+  IC_64BIT_REXW_XD, /* 13853 */
+  IC_XS_OPSIZE, /* 13854 */
+  IC_64BIT_REXW_XS, /* 13855 */
+  IC_ADSIZE, /* 13856 */
+  IC_64BIT_ADSIZE, /* 13857 */
+  IC_XS, /* 13858 */
+  IC_64BIT_XS, /* 13859 */
+  IC_XD, /* 13860 */
+  IC_64BIT_XD, /* 13861 */
+  IC_XS, /* 13862 */
+  IC_64BIT_XS, /* 13863 */
+  IC_ADSIZE, /* 13864 */
+  IC_64BIT_ADSIZE, /* 13865 */
+  IC_XS, /* 13866 */
+  IC_64BIT_REXW_XS, /* 13867 */
+  IC_XD, /* 13868 */
+  IC_64BIT_REXW_XD, /* 13869 */
+  IC_XS, /* 13870 */
+  IC_64BIT_REXW_XS, /* 13871 */
+  IC_OPSIZE, /* 13872 */
+  IC_64BIT_OPSIZE, /* 13873 */
+  IC_XS_OPSIZE, /* 13874 */
+  IC_64BIT_XS_OPSIZE, /* 13875 */
+  IC_XD_OPSIZE, /* 13876 */
+  IC_64BIT_XD_OPSIZE, /* 13877 */
+  IC_XS_OPSIZE, /* 13878 */
+  IC_64BIT_XD_OPSIZE, /* 13879 */
+  IC_OPSIZE, /* 13880 */
+  IC_64BIT_REXW_OPSIZE, /* 13881 */
+  IC_XS_OPSIZE, /* 13882 */
+  IC_64BIT_REXW_XS, /* 13883 */
+  IC_XD_OPSIZE, /* 13884 */
+  IC_64BIT_REXW_XD, /* 13885 */
+  IC_XS_OPSIZE, /* 13886 */
+  IC_64BIT_REXW_XS, /* 13887 */
+  IC_VEX, /* 13888 */
+  IC_VEX, /* 13889 */
+  IC_VEX_XS, /* 13890 */
+  IC_VEX_XS, /* 13891 */
+  IC_VEX_XD, /* 13892 */
+  IC_VEX_XD, /* 13893 */
+  IC_VEX_XD, /* 13894 */
+  IC_VEX_XD, /* 13895 */
+  IC_VEX_W, /* 13896 */
+  IC_VEX_W, /* 13897 */
+  IC_VEX_W_XS, /* 13898 */
+  IC_VEX_W_XS, /* 13899 */
+  IC_VEX_W_XD, /* 13900 */
+  IC_VEX_W_XD, /* 13901 */
+  IC_VEX_W_XD, /* 13902 */
+  IC_VEX_W_XD, /* 13903 */
+  IC_VEX_OPSIZE, /* 13904 */
+  IC_VEX_OPSIZE, /* 13905 */
+  IC_VEX_OPSIZE, /* 13906 */
+  IC_VEX_OPSIZE, /* 13907 */
+  IC_VEX_OPSIZE, /* 13908 */
+  IC_VEX_OPSIZE, /* 13909 */
+  IC_VEX_OPSIZE, /* 13910 */
+  IC_VEX_OPSIZE, /* 13911 */
+  IC_VEX_W_OPSIZE, /* 13912 */
+  IC_VEX_W_OPSIZE, /* 13913 */
+  IC_VEX_W_OPSIZE, /* 13914 */
+  IC_VEX_W_OPSIZE, /* 13915 */
+  IC_VEX_W_OPSIZE, /* 13916 */
+  IC_VEX_W_OPSIZE, /* 13917 */
+  IC_VEX_W_OPSIZE, /* 13918 */
+  IC_VEX_W_OPSIZE, /* 13919 */
+  IC_VEX, /* 13920 */
+  IC_VEX, /* 13921 */
+  IC_VEX_XS, /* 13922 */
+  IC_VEX_XS, /* 13923 */
+  IC_VEX_XD, /* 13924 */
+  IC_VEX_XD, /* 13925 */
+  IC_VEX_XD, /* 13926 */
+  IC_VEX_XD, /* 13927 */
+  IC_VEX_W, /* 13928 */
+  IC_VEX_W, /* 13929 */
+  IC_VEX_W_XS, /* 13930 */
+  IC_VEX_W_XS, /* 13931 */
+  IC_VEX_W_XD, /* 13932 */
+  IC_VEX_W_XD, /* 13933 */
+  IC_VEX_W_XD, /* 13934 */
+  IC_VEX_W_XD, /* 13935 */
+  IC_VEX_OPSIZE, /* 13936 */
+  IC_VEX_OPSIZE, /* 13937 */
+  IC_VEX_OPSIZE, /* 13938 */
+  IC_VEX_OPSIZE, /* 13939 */
+  IC_VEX_OPSIZE, /* 13940 */
+  IC_VEX_OPSIZE, /* 13941 */
+  IC_VEX_OPSIZE, /* 13942 */
+  IC_VEX_OPSIZE, /* 13943 */
+  IC_VEX_W_OPSIZE, /* 13944 */
+  IC_VEX_W_OPSIZE, /* 13945 */
+  IC_VEX_W_OPSIZE, /* 13946 */
+  IC_VEX_W_OPSIZE, /* 13947 */
+  IC_VEX_W_OPSIZE, /* 13948 */
+  IC_VEX_W_OPSIZE, /* 13949 */
+  IC_VEX_W_OPSIZE, /* 13950 */
+  IC_VEX_W_OPSIZE, /* 13951 */
+  IC_VEX_L, /* 13952 */
+  IC_VEX_L, /* 13953 */
+  IC_VEX_L_XS, /* 13954 */
+  IC_VEX_L_XS, /* 13955 */
+  IC_VEX_L_XD, /* 13956 */
+  IC_VEX_L_XD, /* 13957 */
+  IC_VEX_L_XD, /* 13958 */
+  IC_VEX_L_XD, /* 13959 */
+  IC_VEX_L_W, /* 13960 */
+  IC_VEX_L_W, /* 13961 */
+  IC_VEX_L_W_XS, /* 13962 */
+  IC_VEX_L_W_XS, /* 13963 */
+  IC_VEX_L_W_XD, /* 13964 */
+  IC_VEX_L_W_XD, /* 13965 */
+  IC_VEX_L_W_XD, /* 13966 */
+  IC_VEX_L_W_XD, /* 13967 */
+  IC_VEX_L_OPSIZE, /* 13968 */
+  IC_VEX_L_OPSIZE, /* 13969 */
+  IC_VEX_L_OPSIZE, /* 13970 */
+  IC_VEX_L_OPSIZE, /* 13971 */
+  IC_VEX_L_OPSIZE, /* 13972 */
+  IC_VEX_L_OPSIZE, /* 13973 */
+  IC_VEX_L_OPSIZE, /* 13974 */
+  IC_VEX_L_OPSIZE, /* 13975 */
+  IC_VEX_L_W_OPSIZE, /* 13976 */
+  IC_VEX_L_W_OPSIZE, /* 13977 */
+  IC_VEX_L_W_OPSIZE, /* 13978 */
+  IC_VEX_L_W_OPSIZE, /* 13979 */
+  IC_VEX_L_W_OPSIZE, /* 13980 */
+  IC_VEX_L_W_OPSIZE, /* 13981 */
+  IC_VEX_L_W_OPSIZE, /* 13982 */
+  IC_VEX_L_W_OPSIZE, /* 13983 */
+  IC_VEX_L, /* 13984 */
+  IC_VEX_L, /* 13985 */
+  IC_VEX_L_XS, /* 13986 */
+  IC_VEX_L_XS, /* 13987 */
+  IC_VEX_L_XD, /* 13988 */
+  IC_VEX_L_XD, /* 13989 */
+  IC_VEX_L_XD, /* 13990 */
+  IC_VEX_L_XD, /* 13991 */
+  IC_VEX_L_W, /* 13992 */
+  IC_VEX_L_W, /* 13993 */
+  IC_VEX_L_W_XS, /* 13994 */
+  IC_VEX_L_W_XS, /* 13995 */
+  IC_VEX_L_W_XD, /* 13996 */
+  IC_VEX_L_W_XD, /* 13997 */
+  IC_VEX_L_W_XD, /* 13998 */
+  IC_VEX_L_W_XD, /* 13999 */
+  IC_VEX_L_OPSIZE, /* 14000 */
+  IC_VEX_L_OPSIZE, /* 14001 */
+  IC_VEX_L_OPSIZE, /* 14002 */
+  IC_VEX_L_OPSIZE, /* 14003 */
+  IC_VEX_L_OPSIZE, /* 14004 */
+  IC_VEX_L_OPSIZE, /* 14005 */
+  IC_VEX_L_OPSIZE, /* 14006 */
+  IC_VEX_L_OPSIZE, /* 14007 */
+  IC_VEX_L_W_OPSIZE, /* 14008 */
+  IC_VEX_L_W_OPSIZE, /* 14009 */
+  IC_VEX_L_W_OPSIZE, /* 14010 */
+  IC_VEX_L_W_OPSIZE, /* 14011 */
+  IC_VEX_L_W_OPSIZE, /* 14012 */
+  IC_VEX_L_W_OPSIZE, /* 14013 */
+  IC_VEX_L_W_OPSIZE, /* 14014 */
+  IC_VEX_L_W_OPSIZE, /* 14015 */
+  IC_VEX_L, /* 14016 */
+  IC_VEX_L, /* 14017 */
+  IC_VEX_L_XS, /* 14018 */
+  IC_VEX_L_XS, /* 14019 */
+  IC_VEX_L_XD, /* 14020 */
+  IC_VEX_L_XD, /* 14021 */
+  IC_VEX_L_XD, /* 14022 */
+  IC_VEX_L_XD, /* 14023 */
+  IC_VEX_L_W, /* 14024 */
+  IC_VEX_L_W, /* 14025 */
+  IC_VEX_L_W_XS, /* 14026 */
+  IC_VEX_L_W_XS, /* 14027 */
+  IC_VEX_L_W_XD, /* 14028 */
+  IC_VEX_L_W_XD, /* 14029 */
+  IC_VEX_L_W_XD, /* 14030 */
+  IC_VEX_L_W_XD, /* 14031 */
+  IC_VEX_L_OPSIZE, /* 14032 */
+  IC_VEX_L_OPSIZE, /* 14033 */
+  IC_VEX_L_OPSIZE, /* 14034 */
+  IC_VEX_L_OPSIZE, /* 14035 */
+  IC_VEX_L_OPSIZE, /* 14036 */
+  IC_VEX_L_OPSIZE, /* 14037 */
+  IC_VEX_L_OPSIZE, /* 14038 */
+  IC_VEX_L_OPSIZE, /* 14039 */
+  IC_VEX_L_W_OPSIZE, /* 14040 */
+  IC_VEX_L_W_OPSIZE, /* 14041 */
+  IC_VEX_L_W_OPSIZE, /* 14042 */
+  IC_VEX_L_W_OPSIZE, /* 14043 */
+  IC_VEX_L_W_OPSIZE, /* 14044 */
+  IC_VEX_L_W_OPSIZE, /* 14045 */
+  IC_VEX_L_W_OPSIZE, /* 14046 */
+  IC_VEX_L_W_OPSIZE, /* 14047 */
+  IC_VEX_L, /* 14048 */
+  IC_VEX_L, /* 14049 */
+  IC_VEX_L_XS, /* 14050 */
+  IC_VEX_L_XS, /* 14051 */
+  IC_VEX_L_XD, /* 14052 */
+  IC_VEX_L_XD, /* 14053 */
+  IC_VEX_L_XD, /* 14054 */
+  IC_VEX_L_XD, /* 14055 */
+  IC_VEX_L_W, /* 14056 */
+  IC_VEX_L_W, /* 14057 */
+  IC_VEX_L_W_XS, /* 14058 */
+  IC_VEX_L_W_XS, /* 14059 */
+  IC_VEX_L_W_XD, /* 14060 */
+  IC_VEX_L_W_XD, /* 14061 */
+  IC_VEX_L_W_XD, /* 14062 */
+  IC_VEX_L_W_XD, /* 14063 */
+  IC_VEX_L_OPSIZE, /* 14064 */
+  IC_VEX_L_OPSIZE, /* 14065 */
+  IC_VEX_L_OPSIZE, /* 14066 */
+  IC_VEX_L_OPSIZE, /* 14067 */
+  IC_VEX_L_OPSIZE, /* 14068 */
+  IC_VEX_L_OPSIZE, /* 14069 */
+  IC_VEX_L_OPSIZE, /* 14070 */
+  IC_VEX_L_OPSIZE, /* 14071 */
+  IC_VEX_L_W_OPSIZE, /* 14072 */
+  IC_VEX_L_W_OPSIZE, /* 14073 */
+  IC_VEX_L_W_OPSIZE, /* 14074 */
+  IC_VEX_L_W_OPSIZE, /* 14075 */
+  IC_VEX_L_W_OPSIZE, /* 14076 */
+  IC_VEX_L_W_OPSIZE, /* 14077 */
+  IC_VEX_L_W_OPSIZE, /* 14078 */
+  IC_VEX_L_W_OPSIZE, /* 14079 */
+  IC_EVEX_L2_KZ_B, /* 14080 */
+  IC_EVEX_L2_KZ_B, /* 14081 */
+  IC_EVEX_L2_XS_KZ_B, /* 14082 */
+  IC_EVEX_L2_XS_KZ_B, /* 14083 */
+  IC_EVEX_L2_XD_KZ_B, /* 14084 */
+  IC_EVEX_L2_XD_KZ_B, /* 14085 */
+  IC_EVEX_L2_XD_KZ_B, /* 14086 */
+  IC_EVEX_L2_XD_KZ_B, /* 14087 */
+  IC_EVEX_L2_W_KZ_B, /* 14088 */
+  IC_EVEX_L2_W_KZ_B, /* 14089 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14090 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14091 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14092 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14093 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14094 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14095 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14096 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14097 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14098 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14099 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14100 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14101 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14102 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14103 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14104 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14105 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14106 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14107 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14108 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14109 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14110 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14111 */
+  IC_EVEX_L2_KZ_B, /* 14112 */
+  IC_EVEX_L2_KZ_B, /* 14113 */
+  IC_EVEX_L2_XS_KZ_B, /* 14114 */
+  IC_EVEX_L2_XS_KZ_B, /* 14115 */
+  IC_EVEX_L2_XD_KZ_B, /* 14116 */
+  IC_EVEX_L2_XD_KZ_B, /* 14117 */
+  IC_EVEX_L2_XD_KZ_B, /* 14118 */
+  IC_EVEX_L2_XD_KZ_B, /* 14119 */
+  IC_EVEX_L2_W_KZ_B, /* 14120 */
+  IC_EVEX_L2_W_KZ_B, /* 14121 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14122 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14123 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14124 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14125 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14126 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14127 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14128 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14129 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14130 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14131 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14132 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14133 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14134 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14135 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14136 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14137 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14138 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14139 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14140 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14141 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14142 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14143 */
+  IC_EVEX_L2_KZ_B, /* 14144 */
+  IC_EVEX_L2_KZ_B, /* 14145 */
+  IC_EVEX_L2_XS_KZ_B, /* 14146 */
+  IC_EVEX_L2_XS_KZ_B, /* 14147 */
+  IC_EVEX_L2_XD_KZ_B, /* 14148 */
+  IC_EVEX_L2_XD_KZ_B, /* 14149 */
+  IC_EVEX_L2_XD_KZ_B, /* 14150 */
+  IC_EVEX_L2_XD_KZ_B, /* 14151 */
+  IC_EVEX_L2_W_KZ_B, /* 14152 */
+  IC_EVEX_L2_W_KZ_B, /* 14153 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14154 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14155 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14156 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14157 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14158 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14159 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14160 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14161 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14162 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14163 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14164 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14165 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14166 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14167 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14168 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14169 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14170 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14171 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14172 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14173 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14174 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14175 */
+  IC_EVEX_L2_KZ_B, /* 14176 */
+  IC_EVEX_L2_KZ_B, /* 14177 */
+  IC_EVEX_L2_XS_KZ_B, /* 14178 */
+  IC_EVEX_L2_XS_KZ_B, /* 14179 */
+  IC_EVEX_L2_XD_KZ_B, /* 14180 */
+  IC_EVEX_L2_XD_KZ_B, /* 14181 */
+  IC_EVEX_L2_XD_KZ_B, /* 14182 */
+  IC_EVEX_L2_XD_KZ_B, /* 14183 */
+  IC_EVEX_L2_W_KZ_B, /* 14184 */
+  IC_EVEX_L2_W_KZ_B, /* 14185 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14186 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14187 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14188 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14189 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14190 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14191 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14192 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14193 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14194 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14195 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14196 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14197 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14198 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14199 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14200 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14201 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14202 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14203 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14204 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14205 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14206 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14207 */
+  IC_EVEX_L2_KZ_B, /* 14208 */
+  IC_EVEX_L2_KZ_B, /* 14209 */
+  IC_EVEX_L2_XS_KZ_B, /* 14210 */
+  IC_EVEX_L2_XS_KZ_B, /* 14211 */
+  IC_EVEX_L2_XD_KZ_B, /* 14212 */
+  IC_EVEX_L2_XD_KZ_B, /* 14213 */
+  IC_EVEX_L2_XD_KZ_B, /* 14214 */
+  IC_EVEX_L2_XD_KZ_B, /* 14215 */
+  IC_EVEX_L2_W_KZ_B, /* 14216 */
+  IC_EVEX_L2_W_KZ_B, /* 14217 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14218 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14219 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14220 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14221 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14222 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14223 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14224 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14225 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14226 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14227 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14228 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14229 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14230 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14231 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14232 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14233 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14234 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14235 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14236 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14237 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14238 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14239 */
+  IC_EVEX_L2_KZ_B, /* 14240 */
+  IC_EVEX_L2_KZ_B, /* 14241 */
+  IC_EVEX_L2_XS_KZ_B, /* 14242 */
+  IC_EVEX_L2_XS_KZ_B, /* 14243 */
+  IC_EVEX_L2_XD_KZ_B, /* 14244 */
+  IC_EVEX_L2_XD_KZ_B, /* 14245 */
+  IC_EVEX_L2_XD_KZ_B, /* 14246 */
+  IC_EVEX_L2_XD_KZ_B, /* 14247 */
+  IC_EVEX_L2_W_KZ_B, /* 14248 */
+  IC_EVEX_L2_W_KZ_B, /* 14249 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14250 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14251 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14252 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14253 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14254 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14255 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14256 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14257 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14258 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14259 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14260 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14261 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14262 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14263 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14264 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14265 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14266 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14267 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14268 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14269 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14270 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14271 */
+  IC_EVEX_L2_KZ_B, /* 14272 */
+  IC_EVEX_L2_KZ_B, /* 14273 */
+  IC_EVEX_L2_XS_KZ_B, /* 14274 */
+  IC_EVEX_L2_XS_KZ_B, /* 14275 */
+  IC_EVEX_L2_XD_KZ_B, /* 14276 */
+  IC_EVEX_L2_XD_KZ_B, /* 14277 */
+  IC_EVEX_L2_XD_KZ_B, /* 14278 */
+  IC_EVEX_L2_XD_KZ_B, /* 14279 */
+  IC_EVEX_L2_W_KZ_B, /* 14280 */
+  IC_EVEX_L2_W_KZ_B, /* 14281 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14282 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14283 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14284 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14285 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14286 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14287 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14288 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14289 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14290 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14291 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14292 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14293 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14294 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14295 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14296 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14297 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14298 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14299 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14300 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14301 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14302 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14303 */
+  IC_EVEX_L2_KZ_B, /* 14304 */
+  IC_EVEX_L2_KZ_B, /* 14305 */
+  IC_EVEX_L2_XS_KZ_B, /* 14306 */
+  IC_EVEX_L2_XS_KZ_B, /* 14307 */
+  IC_EVEX_L2_XD_KZ_B, /* 14308 */
+  IC_EVEX_L2_XD_KZ_B, /* 14309 */
+  IC_EVEX_L2_XD_KZ_B, /* 14310 */
+  IC_EVEX_L2_XD_KZ_B, /* 14311 */
+  IC_EVEX_L2_W_KZ_B, /* 14312 */
+  IC_EVEX_L2_W_KZ_B, /* 14313 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14314 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 14315 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14316 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14317 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14318 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 14319 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14320 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14321 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14322 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14323 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14324 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14325 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14326 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 14327 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14328 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14329 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14330 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14331 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14332 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14333 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14334 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 14335 */
+  IC, /* 14336 */
+  IC_64BIT, /* 14337 */
+  IC_XS, /* 14338 */
+  IC_64BIT_XS, /* 14339 */
+  IC_XD, /* 14340 */
+  IC_64BIT_XD, /* 14341 */
+  IC_XS, /* 14342 */
+  IC_64BIT_XS, /* 14343 */
+  IC, /* 14344 */
+  IC_64BIT_REXW, /* 14345 */
+  IC_XS, /* 14346 */
+  IC_64BIT_REXW_XS, /* 14347 */
+  IC_XD, /* 14348 */
+  IC_64BIT_REXW_XD, /* 14349 */
+  IC_XS, /* 14350 */
+  IC_64BIT_REXW_XS, /* 14351 */
+  IC_OPSIZE, /* 14352 */
+  IC_64BIT_OPSIZE, /* 14353 */
+  IC_XS_OPSIZE, /* 14354 */
+  IC_64BIT_XS_OPSIZE, /* 14355 */
+  IC_XD_OPSIZE, /* 14356 */
+  IC_64BIT_XD_OPSIZE, /* 14357 */
+  IC_XS_OPSIZE, /* 14358 */
+  IC_64BIT_XD_OPSIZE, /* 14359 */
+  IC_OPSIZE, /* 14360 */
+  IC_64BIT_REXW_OPSIZE, /* 14361 */
+  IC_XS_OPSIZE, /* 14362 */
+  IC_64BIT_REXW_XS, /* 14363 */
+  IC_XD_OPSIZE, /* 14364 */
+  IC_64BIT_REXW_XD, /* 14365 */
+  IC_XS_OPSIZE, /* 14366 */
+  IC_64BIT_REXW_XS, /* 14367 */
+  IC_ADSIZE, /* 14368 */
+  IC_64BIT_ADSIZE, /* 14369 */
+  IC_XS, /* 14370 */
+  IC_64BIT_XS, /* 14371 */
+  IC_XD, /* 14372 */
+  IC_64BIT_XD, /* 14373 */
+  IC_XS, /* 14374 */
+  IC_64BIT_XS, /* 14375 */
+  IC_ADSIZE, /* 14376 */
+  IC_64BIT_ADSIZE, /* 14377 */
+  IC_XS, /* 14378 */
+  IC_64BIT_REXW_XS, /* 14379 */
+  IC_XD, /* 14380 */
+  IC_64BIT_REXW_XD, /* 14381 */
+  IC_XS, /* 14382 */
+  IC_64BIT_REXW_XS, /* 14383 */
+  IC_OPSIZE, /* 14384 */
+  IC_64BIT_OPSIZE, /* 14385 */
+  IC_XS_OPSIZE, /* 14386 */
+  IC_64BIT_XS_OPSIZE, /* 14387 */
+  IC_XD_OPSIZE, /* 14388 */
+  IC_64BIT_XD_OPSIZE, /* 14389 */
+  IC_XS_OPSIZE, /* 14390 */
+  IC_64BIT_XD_OPSIZE, /* 14391 */
+  IC_OPSIZE, /* 14392 */
+  IC_64BIT_REXW_OPSIZE, /* 14393 */
+  IC_XS_OPSIZE, /* 14394 */
+  IC_64BIT_REXW_XS, /* 14395 */
+  IC_XD_OPSIZE, /* 14396 */
+  IC_64BIT_REXW_XD, /* 14397 */
+  IC_XS_OPSIZE, /* 14398 */
+  IC_64BIT_REXW_XS, /* 14399 */
+  IC_VEX, /* 14400 */
+  IC_VEX, /* 14401 */
+  IC_VEX_XS, /* 14402 */
+  IC_VEX_XS, /* 14403 */
+  IC_VEX_XD, /* 14404 */
+  IC_VEX_XD, /* 14405 */
+  IC_VEX_XD, /* 14406 */
+  IC_VEX_XD, /* 14407 */
+  IC_VEX_W, /* 14408 */
+  IC_VEX_W, /* 14409 */
+  IC_VEX_W_XS, /* 14410 */
+  IC_VEX_W_XS, /* 14411 */
+  IC_VEX_W_XD, /* 14412 */
+  IC_VEX_W_XD, /* 14413 */
+  IC_VEX_W_XD, /* 14414 */
+  IC_VEX_W_XD, /* 14415 */
+  IC_VEX_OPSIZE, /* 14416 */
+  IC_VEX_OPSIZE, /* 14417 */
+  IC_VEX_OPSIZE, /* 14418 */
+  IC_VEX_OPSIZE, /* 14419 */
+  IC_VEX_OPSIZE, /* 14420 */
+  IC_VEX_OPSIZE, /* 14421 */
+  IC_VEX_OPSIZE, /* 14422 */
+  IC_VEX_OPSIZE, /* 14423 */
+  IC_VEX_W_OPSIZE, /* 14424 */
+  IC_VEX_W_OPSIZE, /* 14425 */
+  IC_VEX_W_OPSIZE, /* 14426 */
+  IC_VEX_W_OPSIZE, /* 14427 */
+  IC_VEX_W_OPSIZE, /* 14428 */
+  IC_VEX_W_OPSIZE, /* 14429 */
+  IC_VEX_W_OPSIZE, /* 14430 */
+  IC_VEX_W_OPSIZE, /* 14431 */
+  IC_VEX, /* 14432 */
+  IC_VEX, /* 14433 */
+  IC_VEX_XS, /* 14434 */
+  IC_VEX_XS, /* 14435 */
+  IC_VEX_XD, /* 14436 */
+  IC_VEX_XD, /* 14437 */
+  IC_VEX_XD, /* 14438 */
+  IC_VEX_XD, /* 14439 */
+  IC_VEX_W, /* 14440 */
+  IC_VEX_W, /* 14441 */
+  IC_VEX_W_XS, /* 14442 */
+  IC_VEX_W_XS, /* 14443 */
+  IC_VEX_W_XD, /* 14444 */
+  IC_VEX_W_XD, /* 14445 */
+  IC_VEX_W_XD, /* 14446 */
+  IC_VEX_W_XD, /* 14447 */
+  IC_VEX_OPSIZE, /* 14448 */
+  IC_VEX_OPSIZE, /* 14449 */
+  IC_VEX_OPSIZE, /* 14450 */
+  IC_VEX_OPSIZE, /* 14451 */
+  IC_VEX_OPSIZE, /* 14452 */
+  IC_VEX_OPSIZE, /* 14453 */
+  IC_VEX_OPSIZE, /* 14454 */
+  IC_VEX_OPSIZE, /* 14455 */
+  IC_VEX_W_OPSIZE, /* 14456 */
+  IC_VEX_W_OPSIZE, /* 14457 */
+  IC_VEX_W_OPSIZE, /* 14458 */
+  IC_VEX_W_OPSIZE, /* 14459 */
+  IC_VEX_W_OPSIZE, /* 14460 */
+  IC_VEX_W_OPSIZE, /* 14461 */
+  IC_VEX_W_OPSIZE, /* 14462 */
+  IC_VEX_W_OPSIZE, /* 14463 */
+  IC_VEX_L, /* 14464 */
+  IC_VEX_L, /* 14465 */
+  IC_VEX_L_XS, /* 14466 */
+  IC_VEX_L_XS, /* 14467 */
+  IC_VEX_L_XD, /* 14468 */
+  IC_VEX_L_XD, /* 14469 */
+  IC_VEX_L_XD, /* 14470 */
+  IC_VEX_L_XD, /* 14471 */
+  IC_VEX_L_W, /* 14472 */
+  IC_VEX_L_W, /* 14473 */
+  IC_VEX_L_W_XS, /* 14474 */
+  IC_VEX_L_W_XS, /* 14475 */
+  IC_VEX_L_W_XD, /* 14476 */
+  IC_VEX_L_W_XD, /* 14477 */
+  IC_VEX_L_W_XD, /* 14478 */
+  IC_VEX_L_W_XD, /* 14479 */
+  IC_VEX_L_OPSIZE, /* 14480 */
+  IC_VEX_L_OPSIZE, /* 14481 */
+  IC_VEX_L_OPSIZE, /* 14482 */
+  IC_VEX_L_OPSIZE, /* 14483 */
+  IC_VEX_L_OPSIZE, /* 14484 */
+  IC_VEX_L_OPSIZE, /* 14485 */
+  IC_VEX_L_OPSIZE, /* 14486 */
+  IC_VEX_L_OPSIZE, /* 14487 */
+  IC_VEX_L_W_OPSIZE, /* 14488 */
+  IC_VEX_L_W_OPSIZE, /* 14489 */
+  IC_VEX_L_W_OPSIZE, /* 14490 */
+  IC_VEX_L_W_OPSIZE, /* 14491 */
+  IC_VEX_L_W_OPSIZE, /* 14492 */
+  IC_VEX_L_W_OPSIZE, /* 14493 */
+  IC_VEX_L_W_OPSIZE, /* 14494 */
+  IC_VEX_L_W_OPSIZE, /* 14495 */
+  IC_VEX_L, /* 14496 */
+  IC_VEX_L, /* 14497 */
+  IC_VEX_L_XS, /* 14498 */
+  IC_VEX_L_XS, /* 14499 */
+  IC_VEX_L_XD, /* 14500 */
+  IC_VEX_L_XD, /* 14501 */
+  IC_VEX_L_XD, /* 14502 */
+  IC_VEX_L_XD, /* 14503 */
+  IC_VEX_L_W, /* 14504 */
+  IC_VEX_L_W, /* 14505 */
+  IC_VEX_L_W_XS, /* 14506 */
+  IC_VEX_L_W_XS, /* 14507 */
+  IC_VEX_L_W_XD, /* 14508 */
+  IC_VEX_L_W_XD, /* 14509 */
+  IC_VEX_L_W_XD, /* 14510 */
+  IC_VEX_L_W_XD, /* 14511 */
+  IC_VEX_L_OPSIZE, /* 14512 */
+  IC_VEX_L_OPSIZE, /* 14513 */
+  IC_VEX_L_OPSIZE, /* 14514 */
+  IC_VEX_L_OPSIZE, /* 14515 */
+  IC_VEX_L_OPSIZE, /* 14516 */
+  IC_VEX_L_OPSIZE, /* 14517 */
+  IC_VEX_L_OPSIZE, /* 14518 */
+  IC_VEX_L_OPSIZE, /* 14519 */
+  IC_VEX_L_W_OPSIZE, /* 14520 */
+  IC_VEX_L_W_OPSIZE, /* 14521 */
+  IC_VEX_L_W_OPSIZE, /* 14522 */
+  IC_VEX_L_W_OPSIZE, /* 14523 */
+  IC_VEX_L_W_OPSIZE, /* 14524 */
+  IC_VEX_L_W_OPSIZE, /* 14525 */
+  IC_VEX_L_W_OPSIZE, /* 14526 */
+  IC_VEX_L_W_OPSIZE, /* 14527 */
+  IC_VEX_L, /* 14528 */
+  IC_VEX_L, /* 14529 */
+  IC_VEX_L_XS, /* 14530 */
+  IC_VEX_L_XS, /* 14531 */
+  IC_VEX_L_XD, /* 14532 */
+  IC_VEX_L_XD, /* 14533 */
+  IC_VEX_L_XD, /* 14534 */
+  IC_VEX_L_XD, /* 14535 */
+  IC_VEX_L_W, /* 14536 */
+  IC_VEX_L_W, /* 14537 */
+  IC_VEX_L_W_XS, /* 14538 */
+  IC_VEX_L_W_XS, /* 14539 */
+  IC_VEX_L_W_XD, /* 14540 */
+  IC_VEX_L_W_XD, /* 14541 */
+  IC_VEX_L_W_XD, /* 14542 */
+  IC_VEX_L_W_XD, /* 14543 */
+  IC_VEX_L_OPSIZE, /* 14544 */
+  IC_VEX_L_OPSIZE, /* 14545 */
+  IC_VEX_L_OPSIZE, /* 14546 */
+  IC_VEX_L_OPSIZE, /* 14547 */
+  IC_VEX_L_OPSIZE, /* 14548 */
+  IC_VEX_L_OPSIZE, /* 14549 */
+  IC_VEX_L_OPSIZE, /* 14550 */
+  IC_VEX_L_OPSIZE, /* 14551 */
+  IC_VEX_L_W_OPSIZE, /* 14552 */
+  IC_VEX_L_W_OPSIZE, /* 14553 */
+  IC_VEX_L_W_OPSIZE, /* 14554 */
+  IC_VEX_L_W_OPSIZE, /* 14555 */
+  IC_VEX_L_W_OPSIZE, /* 14556 */
+  IC_VEX_L_W_OPSIZE, /* 14557 */
+  IC_VEX_L_W_OPSIZE, /* 14558 */
+  IC_VEX_L_W_OPSIZE, /* 14559 */
+  IC_VEX_L, /* 14560 */
+  IC_VEX_L, /* 14561 */
+  IC_VEX_L_XS, /* 14562 */
+  IC_VEX_L_XS, /* 14563 */
+  IC_VEX_L_XD, /* 14564 */
+  IC_VEX_L_XD, /* 14565 */
+  IC_VEX_L_XD, /* 14566 */
+  IC_VEX_L_XD, /* 14567 */
+  IC_VEX_L_W, /* 14568 */
+  IC_VEX_L_W, /* 14569 */
+  IC_VEX_L_W_XS, /* 14570 */
+  IC_VEX_L_W_XS, /* 14571 */
+  IC_VEX_L_W_XD, /* 14572 */
+  IC_VEX_L_W_XD, /* 14573 */
+  IC_VEX_L_W_XD, /* 14574 */
+  IC_VEX_L_W_XD, /* 14575 */
+  IC_VEX_L_OPSIZE, /* 14576 */
+  IC_VEX_L_OPSIZE, /* 14577 */
+  IC_VEX_L_OPSIZE, /* 14578 */
+  IC_VEX_L_OPSIZE, /* 14579 */
+  IC_VEX_L_OPSIZE, /* 14580 */
+  IC_VEX_L_OPSIZE, /* 14581 */
+  IC_VEX_L_OPSIZE, /* 14582 */
+  IC_VEX_L_OPSIZE, /* 14583 */
+  IC_VEX_L_W_OPSIZE, /* 14584 */
+  IC_VEX_L_W_OPSIZE, /* 14585 */
+  IC_VEX_L_W_OPSIZE, /* 14586 */
+  IC_VEX_L_W_OPSIZE, /* 14587 */
+  IC_VEX_L_W_OPSIZE, /* 14588 */
+  IC_VEX_L_W_OPSIZE, /* 14589 */
+  IC_VEX_L_W_OPSIZE, /* 14590 */
+  IC_VEX_L_W_OPSIZE, /* 14591 */
+  IC_EVEX_KZ_B, /* 14592 */
+  IC_EVEX_KZ_B, /* 14593 */
+  IC_EVEX_XS_KZ_B, /* 14594 */
+  IC_EVEX_XS_KZ_B, /* 14595 */
+  IC_EVEX_XD_KZ_B, /* 14596 */
+  IC_EVEX_XD_KZ_B, /* 14597 */
+  IC_EVEX_XD_KZ_B, /* 14598 */
+  IC_EVEX_XD_KZ_B, /* 14599 */
+  IC_EVEX_W_KZ_B, /* 14600 */
+  IC_EVEX_W_KZ_B, /* 14601 */
+  IC_EVEX_W_XS_KZ_B, /* 14602 */
+  IC_EVEX_W_XS_KZ_B, /* 14603 */
+  IC_EVEX_W_XD_KZ_B, /* 14604 */
+  IC_EVEX_W_XD_KZ_B, /* 14605 */
+  IC_EVEX_W_XD_KZ_B, /* 14606 */
+  IC_EVEX_W_XD_KZ_B, /* 14607 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14608 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14609 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14610 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14611 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14612 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14613 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14614 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14615 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14616 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14617 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14618 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14619 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14620 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14621 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14622 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14623 */
+  IC_EVEX_KZ_B, /* 14624 */
+  IC_EVEX_KZ_B, /* 14625 */
+  IC_EVEX_XS_KZ_B, /* 14626 */
+  IC_EVEX_XS_KZ_B, /* 14627 */
+  IC_EVEX_XD_KZ_B, /* 14628 */
+  IC_EVEX_XD_KZ_B, /* 14629 */
+  IC_EVEX_XD_KZ_B, /* 14630 */
+  IC_EVEX_XD_KZ_B, /* 14631 */
+  IC_EVEX_W_KZ_B, /* 14632 */
+  IC_EVEX_W_KZ_B, /* 14633 */
+  IC_EVEX_W_XS_KZ_B, /* 14634 */
+  IC_EVEX_W_XS_KZ_B, /* 14635 */
+  IC_EVEX_W_XD_KZ_B, /* 14636 */
+  IC_EVEX_W_XD_KZ_B, /* 14637 */
+  IC_EVEX_W_XD_KZ_B, /* 14638 */
+  IC_EVEX_W_XD_KZ_B, /* 14639 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14640 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14641 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14642 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14643 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14644 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14645 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14646 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14647 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14648 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14649 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14650 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14651 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14652 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14653 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14654 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14655 */
+  IC_EVEX_KZ_B, /* 14656 */
+  IC_EVEX_KZ_B, /* 14657 */
+  IC_EVEX_XS_KZ_B, /* 14658 */
+  IC_EVEX_XS_KZ_B, /* 14659 */
+  IC_EVEX_XD_KZ_B, /* 14660 */
+  IC_EVEX_XD_KZ_B, /* 14661 */
+  IC_EVEX_XD_KZ_B, /* 14662 */
+  IC_EVEX_XD_KZ_B, /* 14663 */
+  IC_EVEX_W_KZ_B, /* 14664 */
+  IC_EVEX_W_KZ_B, /* 14665 */
+  IC_EVEX_W_XS_KZ_B, /* 14666 */
+  IC_EVEX_W_XS_KZ_B, /* 14667 */
+  IC_EVEX_W_XD_KZ_B, /* 14668 */
+  IC_EVEX_W_XD_KZ_B, /* 14669 */
+  IC_EVEX_W_XD_KZ_B, /* 14670 */
+  IC_EVEX_W_XD_KZ_B, /* 14671 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14672 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14673 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14674 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14675 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14676 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14677 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14678 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14679 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14680 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14681 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14682 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14683 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14684 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14685 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14686 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14687 */
+  IC_EVEX_KZ_B, /* 14688 */
+  IC_EVEX_KZ_B, /* 14689 */
+  IC_EVEX_XS_KZ_B, /* 14690 */
+  IC_EVEX_XS_KZ_B, /* 14691 */
+  IC_EVEX_XD_KZ_B, /* 14692 */
+  IC_EVEX_XD_KZ_B, /* 14693 */
+  IC_EVEX_XD_KZ_B, /* 14694 */
+  IC_EVEX_XD_KZ_B, /* 14695 */
+  IC_EVEX_W_KZ_B, /* 14696 */
+  IC_EVEX_W_KZ_B, /* 14697 */
+  IC_EVEX_W_XS_KZ_B, /* 14698 */
+  IC_EVEX_W_XS_KZ_B, /* 14699 */
+  IC_EVEX_W_XD_KZ_B, /* 14700 */
+  IC_EVEX_W_XD_KZ_B, /* 14701 */
+  IC_EVEX_W_XD_KZ_B, /* 14702 */
+  IC_EVEX_W_XD_KZ_B, /* 14703 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14704 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14705 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14706 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14707 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14708 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14709 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14710 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14711 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14712 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14713 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14714 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14715 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14716 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14717 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14718 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14719 */
+  IC_EVEX_KZ_B, /* 14720 */
+  IC_EVEX_KZ_B, /* 14721 */
+  IC_EVEX_XS_KZ_B, /* 14722 */
+  IC_EVEX_XS_KZ_B, /* 14723 */
+  IC_EVEX_XD_KZ_B, /* 14724 */
+  IC_EVEX_XD_KZ_B, /* 14725 */
+  IC_EVEX_XD_KZ_B, /* 14726 */
+  IC_EVEX_XD_KZ_B, /* 14727 */
+  IC_EVEX_W_KZ_B, /* 14728 */
+  IC_EVEX_W_KZ_B, /* 14729 */
+  IC_EVEX_W_XS_KZ_B, /* 14730 */
+  IC_EVEX_W_XS_KZ_B, /* 14731 */
+  IC_EVEX_W_XD_KZ_B, /* 14732 */
+  IC_EVEX_W_XD_KZ_B, /* 14733 */
+  IC_EVEX_W_XD_KZ_B, /* 14734 */
+  IC_EVEX_W_XD_KZ_B, /* 14735 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14736 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14737 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14738 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14739 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14740 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14741 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14742 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14743 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14744 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14745 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14746 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14747 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14748 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14749 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14750 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14751 */
+  IC_EVEX_KZ_B, /* 14752 */
+  IC_EVEX_KZ_B, /* 14753 */
+  IC_EVEX_XS_KZ_B, /* 14754 */
+  IC_EVEX_XS_KZ_B, /* 14755 */
+  IC_EVEX_XD_KZ_B, /* 14756 */
+  IC_EVEX_XD_KZ_B, /* 14757 */
+  IC_EVEX_XD_KZ_B, /* 14758 */
+  IC_EVEX_XD_KZ_B, /* 14759 */
+  IC_EVEX_W_KZ_B, /* 14760 */
+  IC_EVEX_W_KZ_B, /* 14761 */
+  IC_EVEX_W_XS_KZ_B, /* 14762 */
+  IC_EVEX_W_XS_KZ_B, /* 14763 */
+  IC_EVEX_W_XD_KZ_B, /* 14764 */
+  IC_EVEX_W_XD_KZ_B, /* 14765 */
+  IC_EVEX_W_XD_KZ_B, /* 14766 */
+  IC_EVEX_W_XD_KZ_B, /* 14767 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14768 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14769 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14770 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14771 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14772 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14773 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14774 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14775 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14776 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14777 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14778 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14779 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14780 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14781 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14782 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14783 */
+  IC_EVEX_KZ_B, /* 14784 */
+  IC_EVEX_KZ_B, /* 14785 */
+  IC_EVEX_XS_KZ_B, /* 14786 */
+  IC_EVEX_XS_KZ_B, /* 14787 */
+  IC_EVEX_XD_KZ_B, /* 14788 */
+  IC_EVEX_XD_KZ_B, /* 14789 */
+  IC_EVEX_XD_KZ_B, /* 14790 */
+  IC_EVEX_XD_KZ_B, /* 14791 */
+  IC_EVEX_W_KZ_B, /* 14792 */
+  IC_EVEX_W_KZ_B, /* 14793 */
+  IC_EVEX_W_XS_KZ_B, /* 14794 */
+  IC_EVEX_W_XS_KZ_B, /* 14795 */
+  IC_EVEX_W_XD_KZ_B, /* 14796 */
+  IC_EVEX_W_XD_KZ_B, /* 14797 */
+  IC_EVEX_W_XD_KZ_B, /* 14798 */
+  IC_EVEX_W_XD_KZ_B, /* 14799 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14800 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14801 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14802 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14803 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14804 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14805 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14806 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14807 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14808 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14809 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14810 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14811 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14812 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14813 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14814 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14815 */
+  IC_EVEX_KZ_B, /* 14816 */
+  IC_EVEX_KZ_B, /* 14817 */
+  IC_EVEX_XS_KZ_B, /* 14818 */
+  IC_EVEX_XS_KZ_B, /* 14819 */
+  IC_EVEX_XD_KZ_B, /* 14820 */
+  IC_EVEX_XD_KZ_B, /* 14821 */
+  IC_EVEX_XD_KZ_B, /* 14822 */
+  IC_EVEX_XD_KZ_B, /* 14823 */
+  IC_EVEX_W_KZ_B, /* 14824 */
+  IC_EVEX_W_KZ_B, /* 14825 */
+  IC_EVEX_W_XS_KZ_B, /* 14826 */
+  IC_EVEX_W_XS_KZ_B, /* 14827 */
+  IC_EVEX_W_XD_KZ_B, /* 14828 */
+  IC_EVEX_W_XD_KZ_B, /* 14829 */
+  IC_EVEX_W_XD_KZ_B, /* 14830 */
+  IC_EVEX_W_XD_KZ_B, /* 14831 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14832 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14833 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14834 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14835 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14836 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14837 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14838 */
+  IC_EVEX_OPSIZE_KZ_B, /* 14839 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14840 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14841 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14842 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14843 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14844 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14845 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14846 */
+  IC_EVEX_W_OPSIZE_KZ_B, /* 14847 */
+  IC, /* 14848 */
+  IC_64BIT, /* 14849 */
+  IC_XS, /* 14850 */
+  IC_64BIT_XS, /* 14851 */
+  IC_XD, /* 14852 */
+  IC_64BIT_XD, /* 14853 */
+  IC_XS, /* 14854 */
+  IC_64BIT_XS, /* 14855 */
+  IC, /* 14856 */
+  IC_64BIT_REXW, /* 14857 */
+  IC_XS, /* 14858 */
+  IC_64BIT_REXW_XS, /* 14859 */
+  IC_XD, /* 14860 */
+  IC_64BIT_REXW_XD, /* 14861 */
+  IC_XS, /* 14862 */
+  IC_64BIT_REXW_XS, /* 14863 */
+  IC_OPSIZE, /* 14864 */
+  IC_64BIT_OPSIZE, /* 14865 */
+  IC_XS_OPSIZE, /* 14866 */
+  IC_64BIT_XS_OPSIZE, /* 14867 */
+  IC_XD_OPSIZE, /* 14868 */
+  IC_64BIT_XD_OPSIZE, /* 14869 */
+  IC_XS_OPSIZE, /* 14870 */
+  IC_64BIT_XD_OPSIZE, /* 14871 */
+  IC_OPSIZE, /* 14872 */
+  IC_64BIT_REXW_OPSIZE, /* 14873 */
+  IC_XS_OPSIZE, /* 14874 */
+  IC_64BIT_REXW_XS, /* 14875 */
+  IC_XD_OPSIZE, /* 14876 */
+  IC_64BIT_REXW_XD, /* 14877 */
+  IC_XS_OPSIZE, /* 14878 */
+  IC_64BIT_REXW_XS, /* 14879 */
+  IC_ADSIZE, /* 14880 */
+  IC_64BIT_ADSIZE, /* 14881 */
+  IC_XS, /* 14882 */
+  IC_64BIT_XS, /* 14883 */
+  IC_XD, /* 14884 */
+  IC_64BIT_XD, /* 14885 */
+  IC_XS, /* 14886 */
+  IC_64BIT_XS, /* 14887 */
+  IC_ADSIZE, /* 14888 */
+  IC_64BIT_ADSIZE, /* 14889 */
+  IC_XS, /* 14890 */
+  IC_64BIT_REXW_XS, /* 14891 */
+  IC_XD, /* 14892 */
+  IC_64BIT_REXW_XD, /* 14893 */
+  IC_XS, /* 14894 */
+  IC_64BIT_REXW_XS, /* 14895 */
+  IC_OPSIZE, /* 14896 */
+  IC_64BIT_OPSIZE, /* 14897 */
+  IC_XS_OPSIZE, /* 14898 */
+  IC_64BIT_XS_OPSIZE, /* 14899 */
+  IC_XD_OPSIZE, /* 14900 */
+  IC_64BIT_XD_OPSIZE, /* 14901 */
+  IC_XS_OPSIZE, /* 14902 */
+  IC_64BIT_XD_OPSIZE, /* 14903 */
+  IC_OPSIZE, /* 14904 */
+  IC_64BIT_REXW_OPSIZE, /* 14905 */
+  IC_XS_OPSIZE, /* 14906 */
+  IC_64BIT_REXW_XS, /* 14907 */
+  IC_XD_OPSIZE, /* 14908 */
+  IC_64BIT_REXW_XD, /* 14909 */
+  IC_XS_OPSIZE, /* 14910 */
+  IC_64BIT_REXW_XS, /* 14911 */
+  IC_VEX, /* 14912 */
+  IC_VEX, /* 14913 */
+  IC_VEX_XS, /* 14914 */
+  IC_VEX_XS, /* 14915 */
+  IC_VEX_XD, /* 14916 */
+  IC_VEX_XD, /* 14917 */
+  IC_VEX_XD, /* 14918 */
+  IC_VEX_XD, /* 14919 */
+  IC_VEX_W, /* 14920 */
+  IC_VEX_W, /* 14921 */
+  IC_VEX_W_XS, /* 14922 */
+  IC_VEX_W_XS, /* 14923 */
+  IC_VEX_W_XD, /* 14924 */
+  IC_VEX_W_XD, /* 14925 */
+  IC_VEX_W_XD, /* 14926 */
+  IC_VEX_W_XD, /* 14927 */
+  IC_VEX_OPSIZE, /* 14928 */
+  IC_VEX_OPSIZE, /* 14929 */
+  IC_VEX_OPSIZE, /* 14930 */
+  IC_VEX_OPSIZE, /* 14931 */
+  IC_VEX_OPSIZE, /* 14932 */
+  IC_VEX_OPSIZE, /* 14933 */
+  IC_VEX_OPSIZE, /* 14934 */
+  IC_VEX_OPSIZE, /* 14935 */
+  IC_VEX_W_OPSIZE, /* 14936 */
+  IC_VEX_W_OPSIZE, /* 14937 */
+  IC_VEX_W_OPSIZE, /* 14938 */
+  IC_VEX_W_OPSIZE, /* 14939 */
+  IC_VEX_W_OPSIZE, /* 14940 */
+  IC_VEX_W_OPSIZE, /* 14941 */
+  IC_VEX_W_OPSIZE, /* 14942 */
+  IC_VEX_W_OPSIZE, /* 14943 */
+  IC_VEX, /* 14944 */
+  IC_VEX, /* 14945 */
+  IC_VEX_XS, /* 14946 */
+  IC_VEX_XS, /* 14947 */
+  IC_VEX_XD, /* 14948 */
+  IC_VEX_XD, /* 14949 */
+  IC_VEX_XD, /* 14950 */
+  IC_VEX_XD, /* 14951 */
+  IC_VEX_W, /* 14952 */
+  IC_VEX_W, /* 14953 */
+  IC_VEX_W_XS, /* 14954 */
+  IC_VEX_W_XS, /* 14955 */
+  IC_VEX_W_XD, /* 14956 */
+  IC_VEX_W_XD, /* 14957 */
+  IC_VEX_W_XD, /* 14958 */
+  IC_VEX_W_XD, /* 14959 */
+  IC_VEX_OPSIZE, /* 14960 */
+  IC_VEX_OPSIZE, /* 14961 */
+  IC_VEX_OPSIZE, /* 14962 */
+  IC_VEX_OPSIZE, /* 14963 */
+  IC_VEX_OPSIZE, /* 14964 */
+  IC_VEX_OPSIZE, /* 14965 */
+  IC_VEX_OPSIZE, /* 14966 */
+  IC_VEX_OPSIZE, /* 14967 */
+  IC_VEX_W_OPSIZE, /* 14968 */
+  IC_VEX_W_OPSIZE, /* 14969 */
+  IC_VEX_W_OPSIZE, /* 14970 */
+  IC_VEX_W_OPSIZE, /* 14971 */
+  IC_VEX_W_OPSIZE, /* 14972 */
+  IC_VEX_W_OPSIZE, /* 14973 */
+  IC_VEX_W_OPSIZE, /* 14974 */
+  IC_VEX_W_OPSIZE, /* 14975 */
+  IC_VEX_L, /* 14976 */
+  IC_VEX_L, /* 14977 */
+  IC_VEX_L_XS, /* 14978 */
+  IC_VEX_L_XS, /* 14979 */
+  IC_VEX_L_XD, /* 14980 */
+  IC_VEX_L_XD, /* 14981 */
+  IC_VEX_L_XD, /* 14982 */
+  IC_VEX_L_XD, /* 14983 */
+  IC_VEX_L_W, /* 14984 */
+  IC_VEX_L_W, /* 14985 */
+  IC_VEX_L_W_XS, /* 14986 */
+  IC_VEX_L_W_XS, /* 14987 */
+  IC_VEX_L_W_XD, /* 14988 */
+  IC_VEX_L_W_XD, /* 14989 */
+  IC_VEX_L_W_XD, /* 14990 */
+  IC_VEX_L_W_XD, /* 14991 */
+  IC_VEX_L_OPSIZE, /* 14992 */
+  IC_VEX_L_OPSIZE, /* 14993 */
+  IC_VEX_L_OPSIZE, /* 14994 */
+  IC_VEX_L_OPSIZE, /* 14995 */
+  IC_VEX_L_OPSIZE, /* 14996 */
+  IC_VEX_L_OPSIZE, /* 14997 */
+  IC_VEX_L_OPSIZE, /* 14998 */
+  IC_VEX_L_OPSIZE, /* 14999 */
+  IC_VEX_L_W_OPSIZE, /* 15000 */
+  IC_VEX_L_W_OPSIZE, /* 15001 */
+  IC_VEX_L_W_OPSIZE, /* 15002 */
+  IC_VEX_L_W_OPSIZE, /* 15003 */
+  IC_VEX_L_W_OPSIZE, /* 15004 */
+  IC_VEX_L_W_OPSIZE, /* 15005 */
+  IC_VEX_L_W_OPSIZE, /* 15006 */
+  IC_VEX_L_W_OPSIZE, /* 15007 */
+  IC_VEX_L, /* 15008 */
+  IC_VEX_L, /* 15009 */
+  IC_VEX_L_XS, /* 15010 */
+  IC_VEX_L_XS, /* 15011 */
+  IC_VEX_L_XD, /* 15012 */
+  IC_VEX_L_XD, /* 15013 */
+  IC_VEX_L_XD, /* 15014 */
+  IC_VEX_L_XD, /* 15015 */
+  IC_VEX_L_W, /* 15016 */
+  IC_VEX_L_W, /* 15017 */
+  IC_VEX_L_W_XS, /* 15018 */
+  IC_VEX_L_W_XS, /* 15019 */
+  IC_VEX_L_W_XD, /* 15020 */
+  IC_VEX_L_W_XD, /* 15021 */
+  IC_VEX_L_W_XD, /* 15022 */
+  IC_VEX_L_W_XD, /* 15023 */
+  IC_VEX_L_OPSIZE, /* 15024 */
+  IC_VEX_L_OPSIZE, /* 15025 */
+  IC_VEX_L_OPSIZE, /* 15026 */
+  IC_VEX_L_OPSIZE, /* 15027 */
+  IC_VEX_L_OPSIZE, /* 15028 */
+  IC_VEX_L_OPSIZE, /* 15029 */
+  IC_VEX_L_OPSIZE, /* 15030 */
+  IC_VEX_L_OPSIZE, /* 15031 */
+  IC_VEX_L_W_OPSIZE, /* 15032 */
+  IC_VEX_L_W_OPSIZE, /* 15033 */
+  IC_VEX_L_W_OPSIZE, /* 15034 */
+  IC_VEX_L_W_OPSIZE, /* 15035 */
+  IC_VEX_L_W_OPSIZE, /* 15036 */
+  IC_VEX_L_W_OPSIZE, /* 15037 */
+  IC_VEX_L_W_OPSIZE, /* 15038 */
+  IC_VEX_L_W_OPSIZE, /* 15039 */
+  IC_VEX_L, /* 15040 */
+  IC_VEX_L, /* 15041 */
+  IC_VEX_L_XS, /* 15042 */
+  IC_VEX_L_XS, /* 15043 */
+  IC_VEX_L_XD, /* 15044 */
+  IC_VEX_L_XD, /* 15045 */
+  IC_VEX_L_XD, /* 15046 */
+  IC_VEX_L_XD, /* 15047 */
+  IC_VEX_L_W, /* 15048 */
+  IC_VEX_L_W, /* 15049 */
+  IC_VEX_L_W_XS, /* 15050 */
+  IC_VEX_L_W_XS, /* 15051 */
+  IC_VEX_L_W_XD, /* 15052 */
+  IC_VEX_L_W_XD, /* 15053 */
+  IC_VEX_L_W_XD, /* 15054 */
+  IC_VEX_L_W_XD, /* 15055 */
+  IC_VEX_L_OPSIZE, /* 15056 */
+  IC_VEX_L_OPSIZE, /* 15057 */
+  IC_VEX_L_OPSIZE, /* 15058 */
+  IC_VEX_L_OPSIZE, /* 15059 */
+  IC_VEX_L_OPSIZE, /* 15060 */
+  IC_VEX_L_OPSIZE, /* 15061 */
+  IC_VEX_L_OPSIZE, /* 15062 */
+  IC_VEX_L_OPSIZE, /* 15063 */
+  IC_VEX_L_W_OPSIZE, /* 15064 */
+  IC_VEX_L_W_OPSIZE, /* 15065 */
+  IC_VEX_L_W_OPSIZE, /* 15066 */
+  IC_VEX_L_W_OPSIZE, /* 15067 */
+  IC_VEX_L_W_OPSIZE, /* 15068 */
+  IC_VEX_L_W_OPSIZE, /* 15069 */
+  IC_VEX_L_W_OPSIZE, /* 15070 */
+  IC_VEX_L_W_OPSIZE, /* 15071 */
+  IC_VEX_L, /* 15072 */
+  IC_VEX_L, /* 15073 */
+  IC_VEX_L_XS, /* 15074 */
+  IC_VEX_L_XS, /* 15075 */
+  IC_VEX_L_XD, /* 15076 */
+  IC_VEX_L_XD, /* 15077 */
+  IC_VEX_L_XD, /* 15078 */
+  IC_VEX_L_XD, /* 15079 */
+  IC_VEX_L_W, /* 15080 */
+  IC_VEX_L_W, /* 15081 */
+  IC_VEX_L_W_XS, /* 15082 */
+  IC_VEX_L_W_XS, /* 15083 */
+  IC_VEX_L_W_XD, /* 15084 */
+  IC_VEX_L_W_XD, /* 15085 */
+  IC_VEX_L_W_XD, /* 15086 */
+  IC_VEX_L_W_XD, /* 15087 */
+  IC_VEX_L_OPSIZE, /* 15088 */
+  IC_VEX_L_OPSIZE, /* 15089 */
+  IC_VEX_L_OPSIZE, /* 15090 */
+  IC_VEX_L_OPSIZE, /* 15091 */
+  IC_VEX_L_OPSIZE, /* 15092 */
+  IC_VEX_L_OPSIZE, /* 15093 */
+  IC_VEX_L_OPSIZE, /* 15094 */
+  IC_VEX_L_OPSIZE, /* 15095 */
+  IC_VEX_L_W_OPSIZE, /* 15096 */
+  IC_VEX_L_W_OPSIZE, /* 15097 */
+  IC_VEX_L_W_OPSIZE, /* 15098 */
+  IC_VEX_L_W_OPSIZE, /* 15099 */
+  IC_VEX_L_W_OPSIZE, /* 15100 */
+  IC_VEX_L_W_OPSIZE, /* 15101 */
+  IC_VEX_L_W_OPSIZE, /* 15102 */
+  IC_VEX_L_W_OPSIZE, /* 15103 */
+  IC_EVEX_L_KZ_B, /* 15104 */
+  IC_EVEX_L_KZ_B, /* 15105 */
+  IC_EVEX_L_XS_KZ_B, /* 15106 */
+  IC_EVEX_L_XS_KZ_B, /* 15107 */
+  IC_EVEX_L_XD_KZ_B, /* 15108 */
+  IC_EVEX_L_XD_KZ_B, /* 15109 */
+  IC_EVEX_L_XD_KZ_B, /* 15110 */
+  IC_EVEX_L_XD_KZ_B, /* 15111 */
+  IC_EVEX_L_W_KZ_B, /* 15112 */
+  IC_EVEX_L_W_KZ_B, /* 15113 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15114 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15115 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15116 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15117 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15118 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15119 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15120 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15121 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15122 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15123 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15124 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15125 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15126 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15127 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15128 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15129 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15130 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15131 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15132 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15133 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15134 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15135 */
+  IC_EVEX_L_KZ_B, /* 15136 */
+  IC_EVEX_L_KZ_B, /* 15137 */
+  IC_EVEX_L_XS_KZ_B, /* 15138 */
+  IC_EVEX_L_XS_KZ_B, /* 15139 */
+  IC_EVEX_L_XD_KZ_B, /* 15140 */
+  IC_EVEX_L_XD_KZ_B, /* 15141 */
+  IC_EVEX_L_XD_KZ_B, /* 15142 */
+  IC_EVEX_L_XD_KZ_B, /* 15143 */
+  IC_EVEX_L_W_KZ_B, /* 15144 */
+  IC_EVEX_L_W_KZ_B, /* 15145 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15146 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15147 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15148 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15149 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15150 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15151 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15152 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15153 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15154 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15155 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15156 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15157 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15158 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15159 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15160 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15161 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15162 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15163 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15164 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15165 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15166 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15167 */
+  IC_EVEX_L_KZ_B, /* 15168 */
+  IC_EVEX_L_KZ_B, /* 15169 */
+  IC_EVEX_L_XS_KZ_B, /* 15170 */
+  IC_EVEX_L_XS_KZ_B, /* 15171 */
+  IC_EVEX_L_XD_KZ_B, /* 15172 */
+  IC_EVEX_L_XD_KZ_B, /* 15173 */
+  IC_EVEX_L_XD_KZ_B, /* 15174 */
+  IC_EVEX_L_XD_KZ_B, /* 15175 */
+  IC_EVEX_L_W_KZ_B, /* 15176 */
+  IC_EVEX_L_W_KZ_B, /* 15177 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15178 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15179 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15180 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15181 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15182 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15183 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15184 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15185 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15186 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15187 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15188 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15189 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15190 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15191 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15192 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15193 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15194 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15195 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15196 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15197 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15198 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15199 */
+  IC_EVEX_L_KZ_B, /* 15200 */
+  IC_EVEX_L_KZ_B, /* 15201 */
+  IC_EVEX_L_XS_KZ_B, /* 15202 */
+  IC_EVEX_L_XS_KZ_B, /* 15203 */
+  IC_EVEX_L_XD_KZ_B, /* 15204 */
+  IC_EVEX_L_XD_KZ_B, /* 15205 */
+  IC_EVEX_L_XD_KZ_B, /* 15206 */
+  IC_EVEX_L_XD_KZ_B, /* 15207 */
+  IC_EVEX_L_W_KZ_B, /* 15208 */
+  IC_EVEX_L_W_KZ_B, /* 15209 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15210 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15211 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15212 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15213 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15214 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15215 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15216 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15217 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15218 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15219 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15220 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15221 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15222 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15223 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15224 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15225 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15226 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15227 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15228 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15229 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15230 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15231 */
+  IC_EVEX_L_KZ_B, /* 15232 */
+  IC_EVEX_L_KZ_B, /* 15233 */
+  IC_EVEX_L_XS_KZ_B, /* 15234 */
+  IC_EVEX_L_XS_KZ_B, /* 15235 */
+  IC_EVEX_L_XD_KZ_B, /* 15236 */
+  IC_EVEX_L_XD_KZ_B, /* 15237 */
+  IC_EVEX_L_XD_KZ_B, /* 15238 */
+  IC_EVEX_L_XD_KZ_B, /* 15239 */
+  IC_EVEX_L_W_KZ_B, /* 15240 */
+  IC_EVEX_L_W_KZ_B, /* 15241 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15242 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15243 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15244 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15245 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15246 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15247 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15248 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15249 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15250 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15251 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15252 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15253 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15254 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15255 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15256 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15257 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15258 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15259 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15260 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15261 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15262 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15263 */
+  IC_EVEX_L_KZ_B, /* 15264 */
+  IC_EVEX_L_KZ_B, /* 15265 */
+  IC_EVEX_L_XS_KZ_B, /* 15266 */
+  IC_EVEX_L_XS_KZ_B, /* 15267 */
+  IC_EVEX_L_XD_KZ_B, /* 15268 */
+  IC_EVEX_L_XD_KZ_B, /* 15269 */
+  IC_EVEX_L_XD_KZ_B, /* 15270 */
+  IC_EVEX_L_XD_KZ_B, /* 15271 */
+  IC_EVEX_L_W_KZ_B, /* 15272 */
+  IC_EVEX_L_W_KZ_B, /* 15273 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15274 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15275 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15276 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15277 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15278 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15279 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15280 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15281 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15282 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15283 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15284 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15285 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15286 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15287 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15288 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15289 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15290 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15291 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15292 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15293 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15294 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15295 */
+  IC_EVEX_L_KZ_B, /* 15296 */
+  IC_EVEX_L_KZ_B, /* 15297 */
+  IC_EVEX_L_XS_KZ_B, /* 15298 */
+  IC_EVEX_L_XS_KZ_B, /* 15299 */
+  IC_EVEX_L_XD_KZ_B, /* 15300 */
+  IC_EVEX_L_XD_KZ_B, /* 15301 */
+  IC_EVEX_L_XD_KZ_B, /* 15302 */
+  IC_EVEX_L_XD_KZ_B, /* 15303 */
+  IC_EVEX_L_W_KZ_B, /* 15304 */
+  IC_EVEX_L_W_KZ_B, /* 15305 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15306 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15307 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15308 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15309 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15310 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15311 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15312 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15313 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15314 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15315 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15316 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15317 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15318 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15319 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15320 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15321 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15322 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15323 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15324 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15325 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15326 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15327 */
+  IC_EVEX_L_KZ_B, /* 15328 */
+  IC_EVEX_L_KZ_B, /* 15329 */
+  IC_EVEX_L_XS_KZ_B, /* 15330 */
+  IC_EVEX_L_XS_KZ_B, /* 15331 */
+  IC_EVEX_L_XD_KZ_B, /* 15332 */
+  IC_EVEX_L_XD_KZ_B, /* 15333 */
+  IC_EVEX_L_XD_KZ_B, /* 15334 */
+  IC_EVEX_L_XD_KZ_B, /* 15335 */
+  IC_EVEX_L_W_KZ_B, /* 15336 */
+  IC_EVEX_L_W_KZ_B, /* 15337 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15338 */
+  IC_EVEX_L_W_XS_KZ_B, /* 15339 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15340 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15341 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15342 */
+  IC_EVEX_L_W_XD_KZ_B, /* 15343 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15344 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15345 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15346 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15347 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15348 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15349 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15350 */
+  IC_EVEX_L_OPSIZE_KZ_B, /* 15351 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15352 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15353 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15354 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15355 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15356 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15357 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15358 */
+  IC_EVEX_L_W_OPSIZE_KZ_B, /* 15359 */
+  IC, /* 15360 */
+  IC_64BIT, /* 15361 */
+  IC_XS, /* 15362 */
+  IC_64BIT_XS, /* 15363 */
+  IC_XD, /* 15364 */
+  IC_64BIT_XD, /* 15365 */
+  IC_XS, /* 15366 */
+  IC_64BIT_XS, /* 15367 */
+  IC, /* 15368 */
+  IC_64BIT_REXW, /* 15369 */
+  IC_XS, /* 15370 */
+  IC_64BIT_REXW_XS, /* 15371 */
+  IC_XD, /* 15372 */
+  IC_64BIT_REXW_XD, /* 15373 */
+  IC_XS, /* 15374 */
+  IC_64BIT_REXW_XS, /* 15375 */
+  IC_OPSIZE, /* 15376 */
+  IC_64BIT_OPSIZE, /* 15377 */
+  IC_XS_OPSIZE, /* 15378 */
+  IC_64BIT_XS_OPSIZE, /* 15379 */
+  IC_XD_OPSIZE, /* 15380 */
+  IC_64BIT_XD_OPSIZE, /* 15381 */
+  IC_XS_OPSIZE, /* 15382 */
+  IC_64BIT_XD_OPSIZE, /* 15383 */
+  IC_OPSIZE, /* 15384 */
+  IC_64BIT_REXW_OPSIZE, /* 15385 */
+  IC_XS_OPSIZE, /* 15386 */
+  IC_64BIT_REXW_XS, /* 15387 */
+  IC_XD_OPSIZE, /* 15388 */
+  IC_64BIT_REXW_XD, /* 15389 */
+  IC_XS_OPSIZE, /* 15390 */
+  IC_64BIT_REXW_XS, /* 15391 */
+  IC_ADSIZE, /* 15392 */
+  IC_64BIT_ADSIZE, /* 15393 */
+  IC_XS, /* 15394 */
+  IC_64BIT_XS, /* 15395 */
+  IC_XD, /* 15396 */
+  IC_64BIT_XD, /* 15397 */
+  IC_XS, /* 15398 */
+  IC_64BIT_XS, /* 15399 */
+  IC_ADSIZE, /* 15400 */
+  IC_64BIT_ADSIZE, /* 15401 */
+  IC_XS, /* 15402 */
+  IC_64BIT_REXW_XS, /* 15403 */
+  IC_XD, /* 15404 */
+  IC_64BIT_REXW_XD, /* 15405 */
+  IC_XS, /* 15406 */
+  IC_64BIT_REXW_XS, /* 15407 */
+  IC_OPSIZE, /* 15408 */
+  IC_64BIT_OPSIZE, /* 15409 */
+  IC_XS_OPSIZE, /* 15410 */
+  IC_64BIT_XS_OPSIZE, /* 15411 */
+  IC_XD_OPSIZE, /* 15412 */
+  IC_64BIT_XD_OPSIZE, /* 15413 */
+  IC_XS_OPSIZE, /* 15414 */
+  IC_64BIT_XD_OPSIZE, /* 15415 */
+  IC_OPSIZE, /* 15416 */
+  IC_64BIT_REXW_OPSIZE, /* 15417 */
+  IC_XS_OPSIZE, /* 15418 */
+  IC_64BIT_REXW_XS, /* 15419 */
+  IC_XD_OPSIZE, /* 15420 */
+  IC_64BIT_REXW_XD, /* 15421 */
+  IC_XS_OPSIZE, /* 15422 */
+  IC_64BIT_REXW_XS, /* 15423 */
+  IC_VEX, /* 15424 */
+  IC_VEX, /* 15425 */
+  IC_VEX_XS, /* 15426 */
+  IC_VEX_XS, /* 15427 */
+  IC_VEX_XD, /* 15428 */
+  IC_VEX_XD, /* 15429 */
+  IC_VEX_XD, /* 15430 */
+  IC_VEX_XD, /* 15431 */
+  IC_VEX_W, /* 15432 */
+  IC_VEX_W, /* 15433 */
+  IC_VEX_W_XS, /* 15434 */
+  IC_VEX_W_XS, /* 15435 */
+  IC_VEX_W_XD, /* 15436 */
+  IC_VEX_W_XD, /* 15437 */
+  IC_VEX_W_XD, /* 15438 */
+  IC_VEX_W_XD, /* 15439 */
+  IC_VEX_OPSIZE, /* 15440 */
+  IC_VEX_OPSIZE, /* 15441 */
+  IC_VEX_OPSIZE, /* 15442 */
+  IC_VEX_OPSIZE, /* 15443 */
+  IC_VEX_OPSIZE, /* 15444 */
+  IC_VEX_OPSIZE, /* 15445 */
+  IC_VEX_OPSIZE, /* 15446 */
+  IC_VEX_OPSIZE, /* 15447 */
+  IC_VEX_W_OPSIZE, /* 15448 */
+  IC_VEX_W_OPSIZE, /* 15449 */
+  IC_VEX_W_OPSIZE, /* 15450 */
+  IC_VEX_W_OPSIZE, /* 15451 */
+  IC_VEX_W_OPSIZE, /* 15452 */
+  IC_VEX_W_OPSIZE, /* 15453 */
+  IC_VEX_W_OPSIZE, /* 15454 */
+  IC_VEX_W_OPSIZE, /* 15455 */
+  IC_VEX, /* 15456 */
+  IC_VEX, /* 15457 */
+  IC_VEX_XS, /* 15458 */
+  IC_VEX_XS, /* 15459 */
+  IC_VEX_XD, /* 15460 */
+  IC_VEX_XD, /* 15461 */
+  IC_VEX_XD, /* 15462 */
+  IC_VEX_XD, /* 15463 */
+  IC_VEX_W, /* 15464 */
+  IC_VEX_W, /* 15465 */
+  IC_VEX_W_XS, /* 15466 */
+  IC_VEX_W_XS, /* 15467 */
+  IC_VEX_W_XD, /* 15468 */
+  IC_VEX_W_XD, /* 15469 */
+  IC_VEX_W_XD, /* 15470 */
+  IC_VEX_W_XD, /* 15471 */
+  IC_VEX_OPSIZE, /* 15472 */
+  IC_VEX_OPSIZE, /* 15473 */
+  IC_VEX_OPSIZE, /* 15474 */
+  IC_VEX_OPSIZE, /* 15475 */
+  IC_VEX_OPSIZE, /* 15476 */
+  IC_VEX_OPSIZE, /* 15477 */
+  IC_VEX_OPSIZE, /* 15478 */
+  IC_VEX_OPSIZE, /* 15479 */
+  IC_VEX_W_OPSIZE, /* 15480 */
+  IC_VEX_W_OPSIZE, /* 15481 */
+  IC_VEX_W_OPSIZE, /* 15482 */
+  IC_VEX_W_OPSIZE, /* 15483 */
+  IC_VEX_W_OPSIZE, /* 15484 */
+  IC_VEX_W_OPSIZE, /* 15485 */
+  IC_VEX_W_OPSIZE, /* 15486 */
+  IC_VEX_W_OPSIZE, /* 15487 */
+  IC_VEX_L, /* 15488 */
+  IC_VEX_L, /* 15489 */
+  IC_VEX_L_XS, /* 15490 */
+  IC_VEX_L_XS, /* 15491 */
+  IC_VEX_L_XD, /* 15492 */
+  IC_VEX_L_XD, /* 15493 */
+  IC_VEX_L_XD, /* 15494 */
+  IC_VEX_L_XD, /* 15495 */
+  IC_VEX_L_W, /* 15496 */
+  IC_VEX_L_W, /* 15497 */
+  IC_VEX_L_W_XS, /* 15498 */
+  IC_VEX_L_W_XS, /* 15499 */
+  IC_VEX_L_W_XD, /* 15500 */
+  IC_VEX_L_W_XD, /* 15501 */
+  IC_VEX_L_W_XD, /* 15502 */
+  IC_VEX_L_W_XD, /* 15503 */
+  IC_VEX_L_OPSIZE, /* 15504 */
+  IC_VEX_L_OPSIZE, /* 15505 */
+  IC_VEX_L_OPSIZE, /* 15506 */
+  IC_VEX_L_OPSIZE, /* 15507 */
+  IC_VEX_L_OPSIZE, /* 15508 */
+  IC_VEX_L_OPSIZE, /* 15509 */
+  IC_VEX_L_OPSIZE, /* 15510 */
+  IC_VEX_L_OPSIZE, /* 15511 */
+  IC_VEX_L_W_OPSIZE, /* 15512 */
+  IC_VEX_L_W_OPSIZE, /* 15513 */
+  IC_VEX_L_W_OPSIZE, /* 15514 */
+  IC_VEX_L_W_OPSIZE, /* 15515 */
+  IC_VEX_L_W_OPSIZE, /* 15516 */
+  IC_VEX_L_W_OPSIZE, /* 15517 */
+  IC_VEX_L_W_OPSIZE, /* 15518 */
+  IC_VEX_L_W_OPSIZE, /* 15519 */
+  IC_VEX_L, /* 15520 */
+  IC_VEX_L, /* 15521 */
+  IC_VEX_L_XS, /* 15522 */
+  IC_VEX_L_XS, /* 15523 */
+  IC_VEX_L_XD, /* 15524 */
+  IC_VEX_L_XD, /* 15525 */
+  IC_VEX_L_XD, /* 15526 */
+  IC_VEX_L_XD, /* 15527 */
+  IC_VEX_L_W, /* 15528 */
+  IC_VEX_L_W, /* 15529 */
+  IC_VEX_L_W_XS, /* 15530 */
+  IC_VEX_L_W_XS, /* 15531 */
+  IC_VEX_L_W_XD, /* 15532 */
+  IC_VEX_L_W_XD, /* 15533 */
+  IC_VEX_L_W_XD, /* 15534 */
+  IC_VEX_L_W_XD, /* 15535 */
+  IC_VEX_L_OPSIZE, /* 15536 */
+  IC_VEX_L_OPSIZE, /* 15537 */
+  IC_VEX_L_OPSIZE, /* 15538 */
+  IC_VEX_L_OPSIZE, /* 15539 */
+  IC_VEX_L_OPSIZE, /* 15540 */
+  IC_VEX_L_OPSIZE, /* 15541 */
+  IC_VEX_L_OPSIZE, /* 15542 */
+  IC_VEX_L_OPSIZE, /* 15543 */
+  IC_VEX_L_W_OPSIZE, /* 15544 */
+  IC_VEX_L_W_OPSIZE, /* 15545 */
+  IC_VEX_L_W_OPSIZE, /* 15546 */
+  IC_VEX_L_W_OPSIZE, /* 15547 */
+  IC_VEX_L_W_OPSIZE, /* 15548 */
+  IC_VEX_L_W_OPSIZE, /* 15549 */
+  IC_VEX_L_W_OPSIZE, /* 15550 */
+  IC_VEX_L_W_OPSIZE, /* 15551 */
+  IC_VEX_L, /* 15552 */
+  IC_VEX_L, /* 15553 */
+  IC_VEX_L_XS, /* 15554 */
+  IC_VEX_L_XS, /* 15555 */
+  IC_VEX_L_XD, /* 15556 */
+  IC_VEX_L_XD, /* 15557 */
+  IC_VEX_L_XD, /* 15558 */
+  IC_VEX_L_XD, /* 15559 */
+  IC_VEX_L_W, /* 15560 */
+  IC_VEX_L_W, /* 15561 */
+  IC_VEX_L_W_XS, /* 15562 */
+  IC_VEX_L_W_XS, /* 15563 */
+  IC_VEX_L_W_XD, /* 15564 */
+  IC_VEX_L_W_XD, /* 15565 */
+  IC_VEX_L_W_XD, /* 15566 */
+  IC_VEX_L_W_XD, /* 15567 */
+  IC_VEX_L_OPSIZE, /* 15568 */
+  IC_VEX_L_OPSIZE, /* 15569 */
+  IC_VEX_L_OPSIZE, /* 15570 */
+  IC_VEX_L_OPSIZE, /* 15571 */
+  IC_VEX_L_OPSIZE, /* 15572 */
+  IC_VEX_L_OPSIZE, /* 15573 */
+  IC_VEX_L_OPSIZE, /* 15574 */
+  IC_VEX_L_OPSIZE, /* 15575 */
+  IC_VEX_L_W_OPSIZE, /* 15576 */
+  IC_VEX_L_W_OPSIZE, /* 15577 */
+  IC_VEX_L_W_OPSIZE, /* 15578 */
+  IC_VEX_L_W_OPSIZE, /* 15579 */
+  IC_VEX_L_W_OPSIZE, /* 15580 */
+  IC_VEX_L_W_OPSIZE, /* 15581 */
+  IC_VEX_L_W_OPSIZE, /* 15582 */
+  IC_VEX_L_W_OPSIZE, /* 15583 */
+  IC_VEX_L, /* 15584 */
+  IC_VEX_L, /* 15585 */
+  IC_VEX_L_XS, /* 15586 */
+  IC_VEX_L_XS, /* 15587 */
+  IC_VEX_L_XD, /* 15588 */
+  IC_VEX_L_XD, /* 15589 */
+  IC_VEX_L_XD, /* 15590 */
+  IC_VEX_L_XD, /* 15591 */
+  IC_VEX_L_W, /* 15592 */
+  IC_VEX_L_W, /* 15593 */
+  IC_VEX_L_W_XS, /* 15594 */
+  IC_VEX_L_W_XS, /* 15595 */
+  IC_VEX_L_W_XD, /* 15596 */
+  IC_VEX_L_W_XD, /* 15597 */
+  IC_VEX_L_W_XD, /* 15598 */
+  IC_VEX_L_W_XD, /* 15599 */
+  IC_VEX_L_OPSIZE, /* 15600 */
+  IC_VEX_L_OPSIZE, /* 15601 */
+  IC_VEX_L_OPSIZE, /* 15602 */
+  IC_VEX_L_OPSIZE, /* 15603 */
+  IC_VEX_L_OPSIZE, /* 15604 */
+  IC_VEX_L_OPSIZE, /* 15605 */
+  IC_VEX_L_OPSIZE, /* 15606 */
+  IC_VEX_L_OPSIZE, /* 15607 */
+  IC_VEX_L_W_OPSIZE, /* 15608 */
+  IC_VEX_L_W_OPSIZE, /* 15609 */
+  IC_VEX_L_W_OPSIZE, /* 15610 */
+  IC_VEX_L_W_OPSIZE, /* 15611 */
+  IC_VEX_L_W_OPSIZE, /* 15612 */
+  IC_VEX_L_W_OPSIZE, /* 15613 */
+  IC_VEX_L_W_OPSIZE, /* 15614 */
+  IC_VEX_L_W_OPSIZE, /* 15615 */
+  IC_EVEX_L2_KZ_B, /* 15616 */
+  IC_EVEX_L2_KZ_B, /* 15617 */
+  IC_EVEX_L2_XS_KZ_B, /* 15618 */
+  IC_EVEX_L2_XS_KZ_B, /* 15619 */
+  IC_EVEX_L2_XD_KZ_B, /* 15620 */
+  IC_EVEX_L2_XD_KZ_B, /* 15621 */
+  IC_EVEX_L2_XD_KZ_B, /* 15622 */
+  IC_EVEX_L2_XD_KZ_B, /* 15623 */
+  IC_EVEX_L2_W_KZ_B, /* 15624 */
+  IC_EVEX_L2_W_KZ_B, /* 15625 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15626 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15627 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15628 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15629 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15630 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15631 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15632 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15633 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15634 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15635 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15636 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15637 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15638 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15639 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15640 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15641 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15642 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15643 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15644 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15645 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15646 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15647 */
+  IC_EVEX_L2_KZ_B, /* 15648 */
+  IC_EVEX_L2_KZ_B, /* 15649 */
+  IC_EVEX_L2_XS_KZ_B, /* 15650 */
+  IC_EVEX_L2_XS_KZ_B, /* 15651 */
+  IC_EVEX_L2_XD_KZ_B, /* 15652 */
+  IC_EVEX_L2_XD_KZ_B, /* 15653 */
+  IC_EVEX_L2_XD_KZ_B, /* 15654 */
+  IC_EVEX_L2_XD_KZ_B, /* 15655 */
+  IC_EVEX_L2_W_KZ_B, /* 15656 */
+  IC_EVEX_L2_W_KZ_B, /* 15657 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15658 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15659 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15660 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15661 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15662 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15663 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15664 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15665 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15666 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15667 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15668 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15669 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15670 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15671 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15672 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15673 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15674 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15675 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15676 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15677 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15678 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15679 */
+  IC_EVEX_L2_KZ_B, /* 15680 */
+  IC_EVEX_L2_KZ_B, /* 15681 */
+  IC_EVEX_L2_XS_KZ_B, /* 15682 */
+  IC_EVEX_L2_XS_KZ_B, /* 15683 */
+  IC_EVEX_L2_XD_KZ_B, /* 15684 */
+  IC_EVEX_L2_XD_KZ_B, /* 15685 */
+  IC_EVEX_L2_XD_KZ_B, /* 15686 */
+  IC_EVEX_L2_XD_KZ_B, /* 15687 */
+  IC_EVEX_L2_W_KZ_B, /* 15688 */
+  IC_EVEX_L2_W_KZ_B, /* 15689 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15690 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15691 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15692 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15693 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15694 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15695 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15696 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15697 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15698 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15699 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15700 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15701 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15702 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15703 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15704 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15705 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15706 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15707 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15708 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15709 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15710 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15711 */
+  IC_EVEX_L2_KZ_B, /* 15712 */
+  IC_EVEX_L2_KZ_B, /* 15713 */
+  IC_EVEX_L2_XS_KZ_B, /* 15714 */
+  IC_EVEX_L2_XS_KZ_B, /* 15715 */
+  IC_EVEX_L2_XD_KZ_B, /* 15716 */
+  IC_EVEX_L2_XD_KZ_B, /* 15717 */
+  IC_EVEX_L2_XD_KZ_B, /* 15718 */
+  IC_EVEX_L2_XD_KZ_B, /* 15719 */
+  IC_EVEX_L2_W_KZ_B, /* 15720 */
+  IC_EVEX_L2_W_KZ_B, /* 15721 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15722 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15723 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15724 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15725 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15726 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15727 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15728 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15729 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15730 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15731 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15732 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15733 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15734 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15735 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15736 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15737 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15738 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15739 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15740 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15741 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15742 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15743 */
+  IC_EVEX_L2_KZ_B, /* 15744 */
+  IC_EVEX_L2_KZ_B, /* 15745 */
+  IC_EVEX_L2_XS_KZ_B, /* 15746 */
+  IC_EVEX_L2_XS_KZ_B, /* 15747 */
+  IC_EVEX_L2_XD_KZ_B, /* 15748 */
+  IC_EVEX_L2_XD_KZ_B, /* 15749 */
+  IC_EVEX_L2_XD_KZ_B, /* 15750 */
+  IC_EVEX_L2_XD_KZ_B, /* 15751 */
+  IC_EVEX_L2_W_KZ_B, /* 15752 */
+  IC_EVEX_L2_W_KZ_B, /* 15753 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15754 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15755 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15756 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15757 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15758 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15759 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15760 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15761 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15762 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15763 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15764 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15765 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15766 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15767 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15768 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15769 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15770 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15771 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15772 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15773 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15774 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15775 */
+  IC_EVEX_L2_KZ_B, /* 15776 */
+  IC_EVEX_L2_KZ_B, /* 15777 */
+  IC_EVEX_L2_XS_KZ_B, /* 15778 */
+  IC_EVEX_L2_XS_KZ_B, /* 15779 */
+  IC_EVEX_L2_XD_KZ_B, /* 15780 */
+  IC_EVEX_L2_XD_KZ_B, /* 15781 */
+  IC_EVEX_L2_XD_KZ_B, /* 15782 */
+  IC_EVEX_L2_XD_KZ_B, /* 15783 */
+  IC_EVEX_L2_W_KZ_B, /* 15784 */
+  IC_EVEX_L2_W_KZ_B, /* 15785 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15786 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15787 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15788 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15789 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15790 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15791 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15792 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15793 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15794 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15795 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15796 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15797 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15798 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15799 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15800 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15801 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15802 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15803 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15804 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15805 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15806 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15807 */
+  IC_EVEX_L2_KZ_B, /* 15808 */
+  IC_EVEX_L2_KZ_B, /* 15809 */
+  IC_EVEX_L2_XS_KZ_B, /* 15810 */
+  IC_EVEX_L2_XS_KZ_B, /* 15811 */
+  IC_EVEX_L2_XD_KZ_B, /* 15812 */
+  IC_EVEX_L2_XD_KZ_B, /* 15813 */
+  IC_EVEX_L2_XD_KZ_B, /* 15814 */
+  IC_EVEX_L2_XD_KZ_B, /* 15815 */
+  IC_EVEX_L2_W_KZ_B, /* 15816 */
+  IC_EVEX_L2_W_KZ_B, /* 15817 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15818 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15819 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15820 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15821 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15822 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15823 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15824 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15825 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15826 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15827 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15828 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15829 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15830 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15831 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15832 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15833 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15834 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15835 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15836 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15837 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15838 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15839 */
+  IC_EVEX_L2_KZ_B, /* 15840 */
+  IC_EVEX_L2_KZ_B, /* 15841 */
+  IC_EVEX_L2_XS_KZ_B, /* 15842 */
+  IC_EVEX_L2_XS_KZ_B, /* 15843 */
+  IC_EVEX_L2_XD_KZ_B, /* 15844 */
+  IC_EVEX_L2_XD_KZ_B, /* 15845 */
+  IC_EVEX_L2_XD_KZ_B, /* 15846 */
+  IC_EVEX_L2_XD_KZ_B, /* 15847 */
+  IC_EVEX_L2_W_KZ_B, /* 15848 */
+  IC_EVEX_L2_W_KZ_B, /* 15849 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15850 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 15851 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15852 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15853 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15854 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 15855 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15856 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15857 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15858 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15859 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15860 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15861 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15862 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 15863 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15864 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15865 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15866 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15867 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15868 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15869 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15870 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 15871 */
+  IC, /* 15872 */
+  IC_64BIT, /* 15873 */
+  IC_XS, /* 15874 */
+  IC_64BIT_XS, /* 15875 */
+  IC_XD, /* 15876 */
+  IC_64BIT_XD, /* 15877 */
+  IC_XS, /* 15878 */
+  IC_64BIT_XS, /* 15879 */
+  IC, /* 15880 */
+  IC_64BIT_REXW, /* 15881 */
+  IC_XS, /* 15882 */
+  IC_64BIT_REXW_XS, /* 15883 */
+  IC_XD, /* 15884 */
+  IC_64BIT_REXW_XD, /* 15885 */
+  IC_XS, /* 15886 */
+  IC_64BIT_REXW_XS, /* 15887 */
+  IC_OPSIZE, /* 15888 */
+  IC_64BIT_OPSIZE, /* 15889 */
+  IC_XS_OPSIZE, /* 15890 */
+  IC_64BIT_XS_OPSIZE, /* 15891 */
+  IC_XD_OPSIZE, /* 15892 */
+  IC_64BIT_XD_OPSIZE, /* 15893 */
+  IC_XS_OPSIZE, /* 15894 */
+  IC_64BIT_XD_OPSIZE, /* 15895 */
+  IC_OPSIZE, /* 15896 */
+  IC_64BIT_REXW_OPSIZE, /* 15897 */
+  IC_XS_OPSIZE, /* 15898 */
+  IC_64BIT_REXW_XS, /* 15899 */
+  IC_XD_OPSIZE, /* 15900 */
+  IC_64BIT_REXW_XD, /* 15901 */
+  IC_XS_OPSIZE, /* 15902 */
+  IC_64BIT_REXW_XS, /* 15903 */
+  IC_ADSIZE, /* 15904 */
+  IC_64BIT_ADSIZE, /* 15905 */
+  IC_XS, /* 15906 */
+  IC_64BIT_XS, /* 15907 */
+  IC_XD, /* 15908 */
+  IC_64BIT_XD, /* 15909 */
+  IC_XS, /* 15910 */
+  IC_64BIT_XS, /* 15911 */
+  IC_ADSIZE, /* 15912 */
+  IC_64BIT_ADSIZE, /* 15913 */
+  IC_XS, /* 15914 */
+  IC_64BIT_REXW_XS, /* 15915 */
+  IC_XD, /* 15916 */
+  IC_64BIT_REXW_XD, /* 15917 */
+  IC_XS, /* 15918 */
+  IC_64BIT_REXW_XS, /* 15919 */
+  IC_OPSIZE, /* 15920 */
+  IC_64BIT_OPSIZE, /* 15921 */
+  IC_XS_OPSIZE, /* 15922 */
+  IC_64BIT_XS_OPSIZE, /* 15923 */
+  IC_XD_OPSIZE, /* 15924 */
+  IC_64BIT_XD_OPSIZE, /* 15925 */
+  IC_XS_OPSIZE, /* 15926 */
+  IC_64BIT_XD_OPSIZE, /* 15927 */
+  IC_OPSIZE, /* 15928 */
+  IC_64BIT_REXW_OPSIZE, /* 15929 */
+  IC_XS_OPSIZE, /* 15930 */
+  IC_64BIT_REXW_XS, /* 15931 */
+  IC_XD_OPSIZE, /* 15932 */
+  IC_64BIT_REXW_XD, /* 15933 */
+  IC_XS_OPSIZE, /* 15934 */
+  IC_64BIT_REXW_XS, /* 15935 */
+  IC_VEX, /* 15936 */
+  IC_VEX, /* 15937 */
+  IC_VEX_XS, /* 15938 */
+  IC_VEX_XS, /* 15939 */
+  IC_VEX_XD, /* 15940 */
+  IC_VEX_XD, /* 15941 */
+  IC_VEX_XD, /* 15942 */
+  IC_VEX_XD, /* 15943 */
+  IC_VEX_W, /* 15944 */
+  IC_VEX_W, /* 15945 */
+  IC_VEX_W_XS, /* 15946 */
+  IC_VEX_W_XS, /* 15947 */
+  IC_VEX_W_XD, /* 15948 */
+  IC_VEX_W_XD, /* 15949 */
+  IC_VEX_W_XD, /* 15950 */
+  IC_VEX_W_XD, /* 15951 */
+  IC_VEX_OPSIZE, /* 15952 */
+  IC_VEX_OPSIZE, /* 15953 */
+  IC_VEX_OPSIZE, /* 15954 */
+  IC_VEX_OPSIZE, /* 15955 */
+  IC_VEX_OPSIZE, /* 15956 */
+  IC_VEX_OPSIZE, /* 15957 */
+  IC_VEX_OPSIZE, /* 15958 */
+  IC_VEX_OPSIZE, /* 15959 */
+  IC_VEX_W_OPSIZE, /* 15960 */
+  IC_VEX_W_OPSIZE, /* 15961 */
+  IC_VEX_W_OPSIZE, /* 15962 */
+  IC_VEX_W_OPSIZE, /* 15963 */
+  IC_VEX_W_OPSIZE, /* 15964 */
+  IC_VEX_W_OPSIZE, /* 15965 */
+  IC_VEX_W_OPSIZE, /* 15966 */
+  IC_VEX_W_OPSIZE, /* 15967 */
+  IC_VEX, /* 15968 */
+  IC_VEX, /* 15969 */
+  IC_VEX_XS, /* 15970 */
+  IC_VEX_XS, /* 15971 */
+  IC_VEX_XD, /* 15972 */
+  IC_VEX_XD, /* 15973 */
+  IC_VEX_XD, /* 15974 */
+  IC_VEX_XD, /* 15975 */
+  IC_VEX_W, /* 15976 */
+  IC_VEX_W, /* 15977 */
+  IC_VEX_W_XS, /* 15978 */
+  IC_VEX_W_XS, /* 15979 */
+  IC_VEX_W_XD, /* 15980 */
+  IC_VEX_W_XD, /* 15981 */
+  IC_VEX_W_XD, /* 15982 */
+  IC_VEX_W_XD, /* 15983 */
+  IC_VEX_OPSIZE, /* 15984 */
+  IC_VEX_OPSIZE, /* 15985 */
+  IC_VEX_OPSIZE, /* 15986 */
+  IC_VEX_OPSIZE, /* 15987 */
+  IC_VEX_OPSIZE, /* 15988 */
+  IC_VEX_OPSIZE, /* 15989 */
+  IC_VEX_OPSIZE, /* 15990 */
+  IC_VEX_OPSIZE, /* 15991 */
+  IC_VEX_W_OPSIZE, /* 15992 */
+  IC_VEX_W_OPSIZE, /* 15993 */
+  IC_VEX_W_OPSIZE, /* 15994 */
+  IC_VEX_W_OPSIZE, /* 15995 */
+  IC_VEX_W_OPSIZE, /* 15996 */
+  IC_VEX_W_OPSIZE, /* 15997 */
+  IC_VEX_W_OPSIZE, /* 15998 */
+  IC_VEX_W_OPSIZE, /* 15999 */
+  IC_VEX_L, /* 16000 */
+  IC_VEX_L, /* 16001 */
+  IC_VEX_L_XS, /* 16002 */
+  IC_VEX_L_XS, /* 16003 */
+  IC_VEX_L_XD, /* 16004 */
+  IC_VEX_L_XD, /* 16005 */
+  IC_VEX_L_XD, /* 16006 */
+  IC_VEX_L_XD, /* 16007 */
+  IC_VEX_L_W, /* 16008 */
+  IC_VEX_L_W, /* 16009 */
+  IC_VEX_L_W_XS, /* 16010 */
+  IC_VEX_L_W_XS, /* 16011 */
+  IC_VEX_L_W_XD, /* 16012 */
+  IC_VEX_L_W_XD, /* 16013 */
+  IC_VEX_L_W_XD, /* 16014 */
+  IC_VEX_L_W_XD, /* 16015 */
+  IC_VEX_L_OPSIZE, /* 16016 */
+  IC_VEX_L_OPSIZE, /* 16017 */
+  IC_VEX_L_OPSIZE, /* 16018 */
+  IC_VEX_L_OPSIZE, /* 16019 */
+  IC_VEX_L_OPSIZE, /* 16020 */
+  IC_VEX_L_OPSIZE, /* 16021 */
+  IC_VEX_L_OPSIZE, /* 16022 */
+  IC_VEX_L_OPSIZE, /* 16023 */
+  IC_VEX_L_W_OPSIZE, /* 16024 */
+  IC_VEX_L_W_OPSIZE, /* 16025 */
+  IC_VEX_L_W_OPSIZE, /* 16026 */
+  IC_VEX_L_W_OPSIZE, /* 16027 */
+  IC_VEX_L_W_OPSIZE, /* 16028 */
+  IC_VEX_L_W_OPSIZE, /* 16029 */
+  IC_VEX_L_W_OPSIZE, /* 16030 */
+  IC_VEX_L_W_OPSIZE, /* 16031 */
+  IC_VEX_L, /* 16032 */
+  IC_VEX_L, /* 16033 */
+  IC_VEX_L_XS, /* 16034 */
+  IC_VEX_L_XS, /* 16035 */
+  IC_VEX_L_XD, /* 16036 */
+  IC_VEX_L_XD, /* 16037 */
+  IC_VEX_L_XD, /* 16038 */
+  IC_VEX_L_XD, /* 16039 */
+  IC_VEX_L_W, /* 16040 */
+  IC_VEX_L_W, /* 16041 */
+  IC_VEX_L_W_XS, /* 16042 */
+  IC_VEX_L_W_XS, /* 16043 */
+  IC_VEX_L_W_XD, /* 16044 */
+  IC_VEX_L_W_XD, /* 16045 */
+  IC_VEX_L_W_XD, /* 16046 */
+  IC_VEX_L_W_XD, /* 16047 */
+  IC_VEX_L_OPSIZE, /* 16048 */
+  IC_VEX_L_OPSIZE, /* 16049 */
+  IC_VEX_L_OPSIZE, /* 16050 */
+  IC_VEX_L_OPSIZE, /* 16051 */
+  IC_VEX_L_OPSIZE, /* 16052 */
+  IC_VEX_L_OPSIZE, /* 16053 */
+  IC_VEX_L_OPSIZE, /* 16054 */
+  IC_VEX_L_OPSIZE, /* 16055 */
+  IC_VEX_L_W_OPSIZE, /* 16056 */
+  IC_VEX_L_W_OPSIZE, /* 16057 */
+  IC_VEX_L_W_OPSIZE, /* 16058 */
+  IC_VEX_L_W_OPSIZE, /* 16059 */
+  IC_VEX_L_W_OPSIZE, /* 16060 */
+  IC_VEX_L_W_OPSIZE, /* 16061 */
+  IC_VEX_L_W_OPSIZE, /* 16062 */
+  IC_VEX_L_W_OPSIZE, /* 16063 */
+  IC_VEX_L, /* 16064 */
+  IC_VEX_L, /* 16065 */
+  IC_VEX_L_XS, /* 16066 */
+  IC_VEX_L_XS, /* 16067 */
+  IC_VEX_L_XD, /* 16068 */
+  IC_VEX_L_XD, /* 16069 */
+  IC_VEX_L_XD, /* 16070 */
+  IC_VEX_L_XD, /* 16071 */
+  IC_VEX_L_W, /* 16072 */
+  IC_VEX_L_W, /* 16073 */
+  IC_VEX_L_W_XS, /* 16074 */
+  IC_VEX_L_W_XS, /* 16075 */
+  IC_VEX_L_W_XD, /* 16076 */
+  IC_VEX_L_W_XD, /* 16077 */
+  IC_VEX_L_W_XD, /* 16078 */
+  IC_VEX_L_W_XD, /* 16079 */
+  IC_VEX_L_OPSIZE, /* 16080 */
+  IC_VEX_L_OPSIZE, /* 16081 */
+  IC_VEX_L_OPSIZE, /* 16082 */
+  IC_VEX_L_OPSIZE, /* 16083 */
+  IC_VEX_L_OPSIZE, /* 16084 */
+  IC_VEX_L_OPSIZE, /* 16085 */
+  IC_VEX_L_OPSIZE, /* 16086 */
+  IC_VEX_L_OPSIZE, /* 16087 */
+  IC_VEX_L_W_OPSIZE, /* 16088 */
+  IC_VEX_L_W_OPSIZE, /* 16089 */
+  IC_VEX_L_W_OPSIZE, /* 16090 */
+  IC_VEX_L_W_OPSIZE, /* 16091 */
+  IC_VEX_L_W_OPSIZE, /* 16092 */
+  IC_VEX_L_W_OPSIZE, /* 16093 */
+  IC_VEX_L_W_OPSIZE, /* 16094 */
+  IC_VEX_L_W_OPSIZE, /* 16095 */
+  IC_VEX_L, /* 16096 */
+  IC_VEX_L, /* 16097 */
+  IC_VEX_L_XS, /* 16098 */
+  IC_VEX_L_XS, /* 16099 */
+  IC_VEX_L_XD, /* 16100 */
+  IC_VEX_L_XD, /* 16101 */
+  IC_VEX_L_XD, /* 16102 */
+  IC_VEX_L_XD, /* 16103 */
+  IC_VEX_L_W, /* 16104 */
+  IC_VEX_L_W, /* 16105 */
+  IC_VEX_L_W_XS, /* 16106 */
+  IC_VEX_L_W_XS, /* 16107 */
+  IC_VEX_L_W_XD, /* 16108 */
+  IC_VEX_L_W_XD, /* 16109 */
+  IC_VEX_L_W_XD, /* 16110 */
+  IC_VEX_L_W_XD, /* 16111 */
+  IC_VEX_L_OPSIZE, /* 16112 */
+  IC_VEX_L_OPSIZE, /* 16113 */
+  IC_VEX_L_OPSIZE, /* 16114 */
+  IC_VEX_L_OPSIZE, /* 16115 */
+  IC_VEX_L_OPSIZE, /* 16116 */
+  IC_VEX_L_OPSIZE, /* 16117 */
+  IC_VEX_L_OPSIZE, /* 16118 */
+  IC_VEX_L_OPSIZE, /* 16119 */
+  IC_VEX_L_W_OPSIZE, /* 16120 */
+  IC_VEX_L_W_OPSIZE, /* 16121 */
+  IC_VEX_L_W_OPSIZE, /* 16122 */
+  IC_VEX_L_W_OPSIZE, /* 16123 */
+  IC_VEX_L_W_OPSIZE, /* 16124 */
+  IC_VEX_L_W_OPSIZE, /* 16125 */
+  IC_VEX_L_W_OPSIZE, /* 16126 */
+  IC_VEX_L_W_OPSIZE, /* 16127 */
+  IC_EVEX_L2_KZ_B, /* 16128 */
+  IC_EVEX_L2_KZ_B, /* 16129 */
+  IC_EVEX_L2_XS_KZ_B, /* 16130 */
+  IC_EVEX_L2_XS_KZ_B, /* 16131 */
+  IC_EVEX_L2_XD_KZ_B, /* 16132 */
+  IC_EVEX_L2_XD_KZ_B, /* 16133 */
+  IC_EVEX_L2_XD_KZ_B, /* 16134 */
+  IC_EVEX_L2_XD_KZ_B, /* 16135 */
+  IC_EVEX_L2_W_KZ_B, /* 16136 */
+  IC_EVEX_L2_W_KZ_B, /* 16137 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16138 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16139 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16140 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16141 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16142 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16143 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16144 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16145 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16146 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16147 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16148 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16149 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16150 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16151 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16152 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16153 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16154 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16155 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16156 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16157 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16158 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16159 */
+  IC_EVEX_L2_KZ_B, /* 16160 */
+  IC_EVEX_L2_KZ_B, /* 16161 */
+  IC_EVEX_L2_XS_KZ_B, /* 16162 */
+  IC_EVEX_L2_XS_KZ_B, /* 16163 */
+  IC_EVEX_L2_XD_KZ_B, /* 16164 */
+  IC_EVEX_L2_XD_KZ_B, /* 16165 */
+  IC_EVEX_L2_XD_KZ_B, /* 16166 */
+  IC_EVEX_L2_XD_KZ_B, /* 16167 */
+  IC_EVEX_L2_W_KZ_B, /* 16168 */
+  IC_EVEX_L2_W_KZ_B, /* 16169 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16170 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16171 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16172 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16173 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16174 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16175 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16176 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16177 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16178 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16179 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16180 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16181 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16182 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16183 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16184 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16185 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16186 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16187 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16188 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16189 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16190 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16191 */
+  IC_EVEX_L2_KZ_B, /* 16192 */
+  IC_EVEX_L2_KZ_B, /* 16193 */
+  IC_EVEX_L2_XS_KZ_B, /* 16194 */
+  IC_EVEX_L2_XS_KZ_B, /* 16195 */
+  IC_EVEX_L2_XD_KZ_B, /* 16196 */
+  IC_EVEX_L2_XD_KZ_B, /* 16197 */
+  IC_EVEX_L2_XD_KZ_B, /* 16198 */
+  IC_EVEX_L2_XD_KZ_B, /* 16199 */
+  IC_EVEX_L2_W_KZ_B, /* 16200 */
+  IC_EVEX_L2_W_KZ_B, /* 16201 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16202 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16203 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16204 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16205 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16206 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16207 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16208 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16209 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16210 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16211 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16212 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16213 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16214 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16215 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16216 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16217 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16218 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16219 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16220 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16221 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16222 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16223 */
+  IC_EVEX_L2_KZ_B, /* 16224 */
+  IC_EVEX_L2_KZ_B, /* 16225 */
+  IC_EVEX_L2_XS_KZ_B, /* 16226 */
+  IC_EVEX_L2_XS_KZ_B, /* 16227 */
+  IC_EVEX_L2_XD_KZ_B, /* 16228 */
+  IC_EVEX_L2_XD_KZ_B, /* 16229 */
+  IC_EVEX_L2_XD_KZ_B, /* 16230 */
+  IC_EVEX_L2_XD_KZ_B, /* 16231 */
+  IC_EVEX_L2_W_KZ_B, /* 16232 */
+  IC_EVEX_L2_W_KZ_B, /* 16233 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16234 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16235 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16236 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16237 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16238 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16239 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16240 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16241 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16242 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16243 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16244 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16245 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16246 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16247 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16248 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16249 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16250 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16251 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16252 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16253 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16254 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16255 */
+  IC_EVEX_L2_KZ_B, /* 16256 */
+  IC_EVEX_L2_KZ_B, /* 16257 */
+  IC_EVEX_L2_XS_KZ_B, /* 16258 */
+  IC_EVEX_L2_XS_KZ_B, /* 16259 */
+  IC_EVEX_L2_XD_KZ_B, /* 16260 */
+  IC_EVEX_L2_XD_KZ_B, /* 16261 */
+  IC_EVEX_L2_XD_KZ_B, /* 16262 */
+  IC_EVEX_L2_XD_KZ_B, /* 16263 */
+  IC_EVEX_L2_W_KZ_B, /* 16264 */
+  IC_EVEX_L2_W_KZ_B, /* 16265 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16266 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16267 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16268 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16269 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16270 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16271 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16272 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16273 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16274 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16275 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16276 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16277 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16278 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16279 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16280 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16281 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16282 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16283 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16284 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16285 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16286 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16287 */
+  IC_EVEX_L2_KZ_B, /* 16288 */
+  IC_EVEX_L2_KZ_B, /* 16289 */
+  IC_EVEX_L2_XS_KZ_B, /* 16290 */
+  IC_EVEX_L2_XS_KZ_B, /* 16291 */
+  IC_EVEX_L2_XD_KZ_B, /* 16292 */
+  IC_EVEX_L2_XD_KZ_B, /* 16293 */
+  IC_EVEX_L2_XD_KZ_B, /* 16294 */
+  IC_EVEX_L2_XD_KZ_B, /* 16295 */
+  IC_EVEX_L2_W_KZ_B, /* 16296 */
+  IC_EVEX_L2_W_KZ_B, /* 16297 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16298 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16299 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16300 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16301 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16302 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16303 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16304 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16305 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16306 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16307 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16308 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16309 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16310 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16311 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16312 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16313 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16314 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16315 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16316 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16317 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16318 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16319 */
+  IC_EVEX_L2_KZ_B, /* 16320 */
+  IC_EVEX_L2_KZ_B, /* 16321 */
+  IC_EVEX_L2_XS_KZ_B, /* 16322 */
+  IC_EVEX_L2_XS_KZ_B, /* 16323 */
+  IC_EVEX_L2_XD_KZ_B, /* 16324 */
+  IC_EVEX_L2_XD_KZ_B, /* 16325 */
+  IC_EVEX_L2_XD_KZ_B, /* 16326 */
+  IC_EVEX_L2_XD_KZ_B, /* 16327 */
+  IC_EVEX_L2_W_KZ_B, /* 16328 */
+  IC_EVEX_L2_W_KZ_B, /* 16329 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16330 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16331 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16332 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16333 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16334 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16335 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16336 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16337 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16338 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16339 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16340 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16341 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16342 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16343 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16344 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16345 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16346 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16347 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16348 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16349 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16350 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16351 */
+  IC_EVEX_L2_KZ_B, /* 16352 */
+  IC_EVEX_L2_KZ_B, /* 16353 */
+  IC_EVEX_L2_XS_KZ_B, /* 16354 */
+  IC_EVEX_L2_XS_KZ_B, /* 16355 */
+  IC_EVEX_L2_XD_KZ_B, /* 16356 */
+  IC_EVEX_L2_XD_KZ_B, /* 16357 */
+  IC_EVEX_L2_XD_KZ_B, /* 16358 */
+  IC_EVEX_L2_XD_KZ_B, /* 16359 */
+  IC_EVEX_L2_W_KZ_B, /* 16360 */
+  IC_EVEX_L2_W_KZ_B, /* 16361 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16362 */
+  IC_EVEX_L2_W_XS_KZ_B, /* 16363 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16364 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16365 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16366 */
+  IC_EVEX_L2_W_XD_KZ_B, /* 16367 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16368 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16369 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16370 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16371 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16372 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16373 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16374 */
+  IC_EVEX_L2_OPSIZE_KZ_B, /* 16375 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16376 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16377 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16378 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16379 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16380 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16381 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B, /* 16382 */
+  IC_EVEX_L2_W_OPSIZE_KZ_B  /* 16383 */
+};
+
+static const InstrUID modRMTable[] = {
+/* EmptyTable */
+  0x0,
+/* Table1 */
+  0x67, /* ADD8mr */
+  0x6a, /* ADD8rr */
+/* Table3 */
+  0x50, /* ADD32mr */
+  0x56, /* ADD32rr */
+/* Table5 */
+  0x69, /* ADD8rm */
+  0x6b, /* ADD8rr_REV */
+/* Table7 */
+  0x55, /* ADD32rm */
+  0x58, /* ADD32rr_REV */
+/* Table9 */
+  0x65, /* ADD8i8 */
+/* Table10 */
+  0x4d, /* ADD32i32 */
+/* Table11 */
+  0x429, /* PUSHES32 */
+/* Table12 */
+  0x408, /* POPES32 */
+/* Table13 */
+  0x3e4, /* OR8mr */
+  0x3e7, /* OR8rr */
+/* Table15 */
+  0x3d2, /* OR32mr */
+  0x3d7, /* OR32rr */
+/* Table17 */
+  0x3e6, /* OR8rm */
+  0x3e8, /* OR8rr_REV */
+/* Table19 */
+  0x3d6, /* OR32rm */
+  0x3d8, /* OR32rr_REV */
+/* Table21 */
+  0x3e2, /* OR8i8 */
+/* Table22 */
+  0x3cf, /* OR32i32 */
+/* Table23 */
+  0x425, /* PUSHCS32 */
+/* Table24 */
+  0x38, /* ADC8mr */
+  0x3b, /* ADC8rr */
+/* Table26 */
+  0x27, /* ADC32mr */
+  0x2b, /* ADC32rr */
+/* Table28 */
+  0x3a, /* ADC8rm */
+  0x3c, /* ADC8rr_REV */
+/* Table30 */
+  0x2a, /* ADC32rm */
+  0x2c, /* ADC32rr_REV */
+/* Table32 */
+  0x36, /* ADC8i8 */
+/* Table33 */
+  0x24, /* ADC32i32 */
+/* Table34 */
+  0x434, /* PUSHSS32 */
+/* Table35 */
+  0x413, /* POPSS32 */
+/* Table36 */
+  0x500, /* SBB8mr */
+  0x503, /* SBB8rr */
+/* Table38 */
+  0x4ef, /* SBB32mr */
+  0x4f3, /* SBB32rr */
+/* Table40 */
+  0x502, /* SBB8rm */
+  0x504, /* SBB8rr_REV */
+/* Table42 */
+  0x4f2, /* SBB32rm */
+  0x4f4, /* SBB32rr_REV */
+/* Table44 */
+  0x4fe, /* SBB8i8 */
+/* Table45 */
+  0x4ec, /* SBB32i32 */
+/* Table46 */
+  0x427, /* PUSHDS32 */
+/* Table47 */
+  0x406, /* POPDS32 */
+/* Table48 */
+  0x91, /* AND8mr */
+  0x94, /* AND8rr */
+/* Table50 */
+  0x80, /* AND32mr */
+  0x84, /* AND32rr */
+/* Table52 */
+  0x93, /* AND8rm */
+  0x95, /* AND8rr_REV */
+/* Table54 */
+  0x83, /* AND32rm */
+  0x85, /* AND32rr_REV */
+/* Table56 */
+  0x8f, /* AND8i8 */
+/* Table57 */
+  0x7d, /* AND32i32 */
+/* Table58 */
+  0x217, /* ES_PREFIX */
+/* Table59 */
+  0x1f5, /* DAA */
+/* Table60 */
+  0x5ba, /* SUB8mr */
+  0x5bd, /* SUB8rr */
+/* Table62 */
+  0x5a9, /* SUB32mr */
+  0x5ad, /* SUB32rr */
+/* Table64 */
+  0x5bc, /* SUB8rm */
+  0x5be, /* SUB8rr_REV */
+/* Table66 */
+  0x5ac, /* SUB32rm */
+  0x5ae, /* SUB32rr_REV */
+/* Table68 */
+  0x5b8, /* SUB8i8 */
+/* Table69 */
+  0x5a6, /* SUB32i32 */
+/* Table70 */
+  0x1f2, /* CS_PREFIX */
+/* Table71 */
+  0x1f6, /* DAS */
+/* Table72 */
+  0x65d, /* XOR8mr */
+  0x660, /* XOR8rr */
+/* Table74 */
+  0x64c, /* XOR32mr */
+  0x650, /* XOR32rr */
+/* Table76 */
+  0x65f, /* XOR8rm */
+  0x661, /* XOR8rr_REV */
+/* Table78 */
+  0x64f, /* XOR32rm */
+  0x651, /* XOR32rr_REV */
+/* Table80 */
+  0x65b, /* XOR8i8 */
+/* Table81 */
+  0x649, /* XOR32i32 */
+/* Table82 */
+  0x58f, /* SS_PREFIX */
+/* Table83 */
+  0x13, /* AAA */
+/* Table84 */
+  0x1dc, /* CMP8mr */
+  0x1df, /* CMP8rr */
+/* Table86 */
+  0x1cb, /* CMP32mr */
+  0x1cf, /* CMP32rr */
+/* Table88 */
+  0x1de, /* CMP8rm */
+  0x1e0, /* CMP8rr_REV */
+/* Table90 */
+  0x1ce, /* CMP32rm */
+  0x1d0, /* CMP32rr_REV */
+/* Table92 */
+  0x1da, /* CMP8i8 */
+/* Table93 */
+  0x1c8, /* CMP32i32 */
+/* Table94 */
+  0x20e, /* DS_PREFIX */
+/* Table95 */
+  0x16, /* AAS */
+/* Table96 */
+  0x257, /* INC32r */
+/* Table97 */
+  0x1fd, /* DEC32r */
+/* Table98 */
+  0x419, /* PUSH32r */
+/* Table99 */
+  0x3fd, /* POP32r */
+/* Table100 */
+  0x423, /* PUSHA32 */
+/* Table101 */
+  0x404, /* POPA32 */
+/* Table102 */
+  0xf8, /* BOUNDS32rm */
+  0x0, /*  */
+/* Table104 */
+  0x9a, /* ARPL16mr */
+  0x9b, /* ARPL16rr */
+/* Table106 */
+  0x223, /* FS_PREFIX */
+/* Table107 */
+  0x225, /* GS_PREFIX */
+/* Table108 */
+  0x1f7, /* DATA16_PREFIX */
+/* Table109 */
+  0x436, /* PUSHi32 */
+/* Table110 */
+  0x23a, /* IMUL32rmi */
+  0x23d, /* IMUL32rri */
+/* Table112 */
+  0x418, /* PUSH32i8 */
+/* Table113 */
+  0x23b, /* IMUL32rmi8 */
+  0x23e, /* IMUL32rri8 */
+/* Table115 */
+  0x24f, /* IN8 */
+/* Table116 */
+  0x24c, /* IN32 */
+/* Table117 */
+  0x3ef, /* OUTSB */
+/* Table118 */
+  0x3f0, /* OUTSL */
+/* Table119 */
+  0x2a5, /* JO_1 */
+/* Table120 */
+  0x29c, /* JNO_1 */
+/* Table121 */
+  0x27b, /* JB_1 */
+/* Table122 */
+  0x272, /* JAE_1 */
+/* Table123 */
+  0x281, /* JE_1 */
+/* Table124 */
+  0x299, /* JNE_1 */
+/* Table125 */
+  0x278, /* JBE_1 */
+/* Table126 */
+  0x275, /* JA_1 */
+/* Table127 */
+  0x2ac, /* JS_1 */
+/* Table128 */
+  0x2a2, /* JNS_1 */
+/* Table129 */
+  0x2a8, /* JP_1 */
+/* Table130 */
+  0x29f, /* JNP_1 */
+/* Table131 */
+  0x28d, /* JL_1 */
+/* Table132 */
+  0x284, /* JGE_1 */
+/* Table133 */
+  0x28a, /* JLE_1 */
+/* Table134 */
+  0x287, /* JG_1 */
+/* Table135 */
+  0x66, /* ADD8mi */
+  0x3e3, /* OR8mi */
+  0x37, /* ADC8mi */
+  0x4ff, /* SBB8mi */
+  0x90, /* AND8mi */
+  0x5b9, /* SUB8mi */
+  0x65c, /* XOR8mi */
+  0x1db, /* CMP8mi */
+  0x68, /* ADD8ri */
+  0x3e5, /* OR8ri */
+  0x39, /* ADC8ri */
+  0x501, /* SBB8ri */
+  0x92, /* AND8ri */
+  0x5bb, /* SUB8ri */
+  0x65e, /* XOR8ri */
+  0x1dd, /* CMP8ri */
+/* Table151 */
+  0x4e, /* ADD32mi */
+  0x3d0, /* OR32mi */
+  0x25, /* ADC32mi */
+  0x4ed, /* SBB32mi */
+  0x7e, /* AND32mi */
+  0x5a7, /* SUB32mi */
+  0x64a, /* XOR32mi */
+  0x1c9, /* CMP32mi */
+  0x51, /* ADD32ri */
+  0x3d4, /* OR32ri */
+  0x28, /* ADC32ri */
+  0x4f0, /* SBB32ri */
+  0x81, /* AND32ri */
+  0x5aa, /* SUB32ri */
+  0x64d, /* XOR32ri */
+  0x1cc, /* CMP32ri */
+/* Table167 */
+  0x4f, /* ADD32mi8 */
+  0x3d1, /* OR32mi8 */
+  0x26, /* ADC32mi8 */
+  0x4ee, /* SBB32mi8 */
+  0x7f, /* AND32mi8 */
+  0x5a8, /* SUB32mi8 */
+  0x64b, /* XOR32mi8 */
+  0x1ca, /* CMP32mi8 */
+  0x52, /* ADD32ri8 */
+  0x3d5, /* OR32ri8 */
+  0x29, /* ADC32ri8 */
+  0x4f1, /* SBB32ri8 */
+  0x82, /* AND32ri8 */
+  0x5ab, /* SUB32ri8 */
+  0x64e, /* XOR32ri8 */
+  0x1cd, /* CMP32ri8 */
+/* Table183 */
+  0x5e9, /* TEST8rm */
+  0x5ea, /* TEST8rr */
+/* Table185 */
+  0x5de, /* TEST32rm */
+  0x5df, /* TEST32rr */
+/* Table187 */
+  0x637, /* XCHG8rm */
+  0x638, /* XCHG8rr */
+/* Table189 */
+  0x632, /* XCHG32rm */
+  0x633, /* XCHG32rr */
+/* Table191 */
+  0x379, /* MOV8mr */
+  0x381, /* MOV8rr */
+/* Table193 */
+  0x34f, /* MOV32mr */
+  0x35a, /* MOV32rr */
+/* Table195 */
+  0x37f, /* MOV8rm */
+  0x383, /* MOV8rr_REV */
+/* Table197 */
+  0x359, /* MOV32rm */
+  0x35b, /* MOV32rr_REV */
+/* Table199 */
+  0x350, /* MOV32ms */
+  0x35c, /* MOV32rs */
+/* Table201 */
+  0x2bf, /* LEA32r */
+  0x0, /*  */
+/* Table203 */
+  0x35d, /* MOV32sm */
+  0x35e, /* MOV32sr */
+/* Table205 */
+  0x3fe, /* POP32rmm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x3ff, /* POP32rmr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table221 */
+  0x3bb, /* NOOP */
+/* Table222 */
+  0x630, /* XCHG32ar */
+/* Table223 */
+  0x1f4, /* CWDE */
+/* Table224 */
+  0x145, /* CDQ */
+/* Table225 */
+  0x21a, /* FARCALL32i */
+/* Table226 */
+  0x42b, /* PUSHF32 */
+/* Table227 */
+  0x40a, /* POPF32 */
+/* Table228 */
+  0x4c5, /* SAHF */
+/* Table229 */
+  0x2af, /* LAHF */
+/* Table230 */
+  0x37b, /* MOV8o8a */
+/* Table231 */
+  0x351, /* MOV32o32a */
+/* Table232 */
+  0x376, /* MOV8ao8 */
+/* Table233 */
+  0x34a, /* MOV32ao32 */
+/* Table234 */
+  0x38b, /* MOVSB */
+/* Table235 */
+  0x38c, /* MOVSL */
+/* Table236 */
+  0x1e4, /* CMPS8 */
+/* Table237 */
+  0x1e2, /* CMPS32 */
+/* Table238 */
+  0x5e5, /* TEST8i8 */
+/* Table239 */
+  0x5db, /* TEST32i32 */
+/* Table240 */
+  0x595, /* STOSB */
+/* Table241 */
+  0x596, /* STOSL */
+/* Table242 */
+  0x316, /* LODSB */
+/* Table243 */
+  0x317, /* LODSL */
+/* Table244 */
+  0x508, /* SCAS8 */
+/* Table245 */
+  0x506, /* SCAS32 */
+/* Table246 */
+  0x37d, /* MOV8ri */
+/* Table247 */
+  0x356, /* MOV32ri */
+/* Table248 */
+  0x4a4, /* ROL8mi */
+  0x4bc, /* ROR8mi */
+  0x44b, /* RCL8mi */
+  0x463, /* RCR8mi */
+  0x546, /* SHL8mi */
+  0x56e, /* SHR8mi */
+  0x0, /*  */
+  0x4db, /* SAR8mi */
+  0x4a7, /* ROL8ri */
+  0x4bf, /* ROR8ri */
+  0x44e, /* RCL8ri */
+  0x466, /* RCR8ri */
+  0x549, /* SHL8ri */
+  0x571, /* SHR8ri */
+  0x0, /*  */
+  0x4de, /* SAR8ri */
+/* Table264 */
+  0x498, /* ROL32mi */
+  0x4b0, /* ROR32mi */
+  0x43f, /* RCL32mi */
+  0x457, /* RCR32mi */
+  0x53a, /* SHL32mi */
+  0x562, /* SHR32mi */
+  0x0, /*  */
+  0x4cf, /* SAR32mi */
+  0x49b, /* ROL32ri */
+  0x4b3, /* ROR32ri */
+  0x442, /* RCL32ri */
+  0x45a, /* RCR32ri */
+  0x53d, /* SHL32ri */
+  0x565, /* SHR32ri */
+  0x0, /*  */
+  0x4d2, /* SAR32ri */
+/* Table280 */
+  0x489, /* RETIL */
+/* Table281 */
+  0x48c, /* RETL */
+/* Table282 */
+  0x2c5, /* LES32rm */
+  0x0, /*  */
+/* Table284 */
+  0x2bd, /* LDS32rm */
+  0x0, /*  */
+/* Table286 */
+  0x378, /* MOV8mi */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x37e, /* MOV8ri_alt */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table302 */
+  0x34e, /* MOV32mi */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x358, /* MOV32ri_alt */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table318 */
+  0x216, /* ENTER */
+/* Table319 */
+  0x2c2, /* LEAVE */
+/* Table320 */
+  0x31d, /* LRETIL */
+/* Table321 */
+  0x320, /* LRETL */
+/* Table322 */
+  0x262, /* INT3 */
+/* Table323 */
+  0x260, /* INT */
+/* Table324 */
+  0x263, /* INTO */
+/* Table325 */
+  0x26f, /* IRET32 */
+/* Table326 */
+  0x4a2, /* ROL8m1 */
+  0x4ba, /* ROR8m1 */
+  0x449, /* RCL8m1 */
+  0x461, /* RCR8m1 */
+  0x544, /* SHL8m1 */
+  0x56c, /* SHR8m1 */
+  0x0, /*  */
+  0x4d9, /* SAR8m1 */
+  0x4a5, /* ROL8r1 */
+  0x4bd, /* ROR8r1 */
+  0x44c, /* RCL8r1 */
+  0x464, /* RCR8r1 */
+  0x547, /* SHL8r1 */
+  0x56f, /* SHR8r1 */
+  0x0, /*  */
+  0x4dc, /* SAR8r1 */
+/* Table342 */
+  0x496, /* ROL32m1 */
+  0x4ae, /* ROR32m1 */
+  0x43d, /* RCL32m1 */
+  0x455, /* RCR32m1 */
+  0x538, /* SHL32m1 */
+  0x560, /* SHR32m1 */
+  0x0, /*  */
+  0x4cd, /* SAR32m1 */
+  0x499, /* ROL32r1 */
+  0x4b1, /* ROR32r1 */
+  0x440, /* RCL32r1 */
+  0x458, /* RCR32r1 */
+  0x53b, /* SHL32r1 */
+  0x563, /* SHR32r1 */
+  0x0, /*  */
+  0x4d0, /* SAR32r1 */
+/* Table358 */
+  0x4a3, /* ROL8mCL */
+  0x4bb, /* ROR8mCL */
+  0x44a, /* RCL8mCL */
+  0x462, /* RCR8mCL */
+  0x545, /* SHL8mCL */
+  0x56d, /* SHR8mCL */
+  0x0, /*  */
+  0x4da, /* SAR8mCL */
+  0x4a6, /* ROL8rCL */
+  0x4be, /* ROR8rCL */
+  0x44d, /* RCL8rCL */
+  0x465, /* RCR8rCL */
+  0x548, /* SHL8rCL */
+  0x570, /* SHR8rCL */
+  0x0, /*  */
+  0x4dd, /* SAR8rCL */
+/* Table374 */
+  0x497, /* ROL32mCL */
+  0x4af, /* ROR32mCL */
+  0x43e, /* RCL32mCL */
+  0x456, /* RCR32mCL */
+  0x539, /* SHL32mCL */
+  0x561, /* SHR32mCL */
+  0x0, /*  */
+  0x4ce, /* SAR32mCL */
+  0x49a, /* ROL32rCL */
+  0x4b2, /* ROR32rCL */
+  0x441, /* RCL32rCL */
+  0x459, /* RCR32rCL */
+  0x53c, /* SHL32rCL */
+  0x564, /* SHR32rCL */
+  0x0, /*  */
+  0x4d1, /* SAR32rCL */
+/* Table390 */
+  0x15, /* AAM8i8 */
+/* Table391 */
+  0x14, /* AAD8i8 */
+/* Table392 */
+  0x4c6, /* SALC */
+/* Table393 */
+  0x63f, /* XLAT */
+/* Table394 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x222, /* FSETPM */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table466 */
+  0x31c, /* LOOPNE */
+/* Table467 */
+  0x31b, /* LOOPE */
+/* Table468 */
+  0x31a, /* LOOP */
+/* Table469 */
+  0x27f, /* JECXZ_32 */
+/* Table470 */
+  0x250, /* IN8ri */
+/* Table471 */
+  0x24d, /* IN32ri */
+/* Table472 */
+  0x3ed, /* OUT8ir */
+/* Table473 */
+  0x3eb, /* OUT32ir */
+/* Table474 */
+  0x143, /* CALLpcrel32 */
+/* Table475 */
+  0x298, /* JMP_4 */
+/* Table476 */
+  0x21f, /* FARJMP32i */
+/* Table477 */
+  0x296, /* JMP_1 */
+/* Table478 */
+  0x251, /* IN8rr */
+/* Table479 */
+  0x24e, /* IN32rr */
+/* Table480 */
+  0x3ee, /* OUT8rr */
+/* Table481 */
+  0x3ec, /* OUT32rr */
+/* Table482 */
+  0x2ff, /* LOCK_PREFIX */
+/* Table483 */
+  0x261, /* INT1 */
+/* Table484 */
+  0x479, /* REPNE_PREFIX */
+/* Table485 */
+  0x481, /* REP_PREFIX */
+/* Table486 */
+  0x226, /* HLT */
+/* Table487 */
+  0x14d, /* CMC */
+/* Table488 */
+  0x5e6, /* TEST8mi */
+  0x0, /*  */
+  0x3c4, /* NOT8m */
+  0x3b9, /* NEG8m */
+  0x3ad, /* MUL8m */
+  0x247, /* IMUL8m */
+  0x20c, /* DIV8m */
+  0x22d, /* IDIV8m */
+  0x5e7, /* TEST8ri */
+  0x0, /*  */
+  0x3c5, /* NOT8r */
+  0x3ba, /* NEG8r */
+  0x3ae, /* MUL8r */
+  0x248, /* IMUL8r */
+  0x20d, /* DIV8r */
+  0x22e, /* IDIV8r */
+/* Table504 */
+  0x5dc, /* TEST32mi */
+  0x0, /*  */
+  0x3c0, /* NOT32m */
+  0x3b5, /* NEG32m */
+  0x3a9, /* MUL32m */
+  0x237, /* IMUL32m */
+  0x208, /* DIV32m */
+  0x229, /* IDIV32m */
+  0x5dd, /* TEST32ri */
+  0x0, /*  */
+  0x3c1, /* NOT32r */
+  0x3b6, /* NEG32r */
+  0x3aa, /* MUL32r */
+  0x238, /* IMUL32r */
+  0x209, /* DIV32r */
+  0x22a, /* IDIV32r */
+/* Table520 */
+  0x148, /* CLC */
+/* Table521 */
+  0x591, /* STC */
+/* Table522 */
+  0x14b, /* CLI */
+/* Table523 */
+  0x594, /* STI */
+/* Table524 */
+  0x149, /* CLD */
+/* Table525 */
+  0x592, /* STD */
+/* Table526 */
+  0x25e, /* INC8m */
+  0x204, /* DEC8m */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x25f, /* INC8r */
+  0x205, /* DEC8r */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table542 */
+  0x256, /* INC32m */
+  0x1fc, /* DEC32m */
+  0x13d, /* CALL32m */
+  0x21b, /* FARCALL32m */
+  0x292, /* JMP32m */
+  0x220, /* FARJMP32m */
+  0x41a, /* PUSH32rmm */
+  0x0, /*  */
+  0x255, /* INC32_32r */
+  0x1fb, /* DEC32_32r */
+  0x13e, /* CALL32r */
+  0x0, /*  */
+  0x293, /* JMP32r */
+  0x0, /*  */
+  0x41b, /* PUSH32rmr */
+  0x0, /*  */
+/* Table558 */
+  0x48f, /* REX64_PREFIX */
+/* Table559 */
+  0x41f, /* PUSH64r */
+/* Table560 */
+  0x400, /* POP64r */
+/* Table561 */
+  0x41d, /* PUSH64i32 */
+/* Table562 */
+  0x41e, /* PUSH64i8 */
+/* Table563 */
+  0x2c0, /* LEA64_32r */
+  0x0, /*  */
+/* Table565 */
+  0x401, /* POP64rmm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x402, /* POP64rmr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table581 */
+  0x631, /* XCHG32ar64 */
+/* Table582 */
+  0x42c, /* PUSHF64 */
+/* Table583 */
+  0x40b, /* POPF64 */
+/* Table584 */
+  0x36b, /* MOV64o8a */
+/* Table585 */
+  0x369, /* MOV64o32a */
+/* Table586 */
+  0x362, /* MOV64ao8 */
+/* Table587 */
+  0x360, /* MOV64ao32 */
+/* Table588 */
+  0x48a, /* RETIQ */
+/* Table589 */
+  0x48d, /* RETQ */
+/* Table590 */
+  0x2c3, /* LEAVE64 */
+/* Table591 */
+  0x2ab, /* JRCXZ */
+/* Table592 */
+  0x140, /* CALL64pcrel32 */
+/* Table593 */
+  0x25a, /* INC64_32m */
+  0x200, /* DEC64_32m */
+  0x13f, /* CALL64m */
+  0x21b, /* FARCALL32m */
+  0x294, /* JMP64m */
+  0x220, /* FARJMP32m */
+  0x420, /* PUSH64rmm */
+  0x0, /*  */
+  0x25b, /* INC64_32r */
+  0x201, /* DEC64_32r */
+  0x141, /* CALL64r */
+  0x0, /*  */
+  0x295, /* JMP64r */
+  0x0, /*  */
+  0x421, /* PUSH64rmr */
+  0x0, /*  */
+/* Table609 */
+  0x44, /* ADD16mr */
+  0x4a, /* ADD16rr */
+/* Table611 */
+  0x49, /* ADD16rm */
+  0x4c, /* ADD16rr_REV */
+/* Table613 */
+  0x41, /* ADD16i16 */
+/* Table614 */
+  0x428, /* PUSHES16 */
+/* Table615 */
+  0x407, /* POPES16 */
+/* Table616 */
+  0x3c9, /* OR16mr */
+  0x3cd, /* OR16rr */
+/* Table618 */
+  0x3cc, /* OR16rm */
+  0x3ce, /* OR16rr_REV */
+/* Table620 */
+  0x3c6, /* OR16i16 */
+/* Table621 */
+  0x424, /* PUSHCS16 */
+/* Table622 */
+  0x1e, /* ADC16mr */
+  0x22, /* ADC16rr */
+/* Table624 */
+  0x21, /* ADC16rm */
+  0x23, /* ADC16rr_REV */
+/* Table626 */
+  0x1b, /* ADC16i16 */
+/* Table627 */
+  0x433, /* PUSHSS16 */
+/* Table628 */
+  0x412, /* POPSS16 */
+/* Table629 */
+  0x4e6, /* SBB16mr */
+  0x4ea, /* SBB16rr */
+/* Table631 */
+  0x4e9, /* SBB16rm */
+  0x4eb, /* SBB16rr_REV */
+/* Table633 */
+  0x4e3, /* SBB16i16 */
+/* Table634 */
+  0x426, /* PUSHDS16 */
+/* Table635 */
+  0x405, /* POPDS16 */
+/* Table636 */
+  0x77, /* AND16mr */
+  0x7b, /* AND16rr */
+/* Table638 */
+  0x7a, /* AND16rm */
+  0x7c, /* AND16rr_REV */
+/* Table640 */
+  0x74, /* AND16i16 */
+/* Table641 */
+  0x5a0, /* SUB16mr */
+  0x5a4, /* SUB16rr */
+/* Table643 */
+  0x5a3, /* SUB16rm */
+  0x5a5, /* SUB16rr_REV */
+/* Table645 */
+  0x59d, /* SUB16i16 */
+/* Table646 */
+  0x643, /* XOR16mr */
+  0x647, /* XOR16rr */
+/* Table648 */
+  0x646, /* XOR16rm */
+  0x648, /* XOR16rr_REV */
+/* Table650 */
+  0x640, /* XOR16i16 */
+/* Table651 */
+  0x1c2, /* CMP16mr */
+  0x1c6, /* CMP16rr */
+/* Table653 */
+  0x1c5, /* CMP16rm */
+  0x1c7, /* CMP16rr_REV */
+/* Table655 */
+  0x1bf, /* CMP16i16 */
+/* Table656 */
+  0x253, /* INC16r */
+/* Table657 */
+  0x1f9, /* DEC16r */
+/* Table658 */
+  0x415, /* PUSH16r */
+/* Table659 */
+  0x3fa, /* POP16r */
+/* Table660 */
+  0x422, /* PUSHA16 */
+/* Table661 */
+  0x403, /* POPA16 */
+/* Table662 */
+  0xf7, /* BOUNDS16rm */
+  0x0, /*  */
+/* Table664 */
+  0x435, /* PUSHi16 */
+/* Table665 */
+  0x232, /* IMUL16rmi */
+  0x235, /* IMUL16rri */
+/* Table667 */
+  0x414, /* PUSH16i8 */
+/* Table668 */
+  0x233, /* IMUL16rmi8 */
+  0x236, /* IMUL16rri8 */
+/* Table670 */
+  0x249, /* IN16 */
+/* Table671 */
+  0x3f1, /* OUTSW */
+/* Table672 */
+  0x42, /* ADD16mi */
+  0x3c7, /* OR16mi */
+  0x1c, /* ADC16mi */
+  0x4e4, /* SBB16mi */
+  0x75, /* AND16mi */
+  0x59e, /* SUB16mi */
+  0x641, /* XOR16mi */
+  0x1c0, /* CMP16mi */
+  0x45, /* ADD16ri */
+  0x3ca, /* OR16ri */
+  0x1f, /* ADC16ri */
+  0x4e7, /* SBB16ri */
+  0x78, /* AND16ri */
+  0x5a1, /* SUB16ri */
+  0x644, /* XOR16ri */
+  0x1c3, /* CMP16ri */
+/* Table688 */
+  0x43, /* ADD16mi8 */
+  0x3c8, /* OR16mi8 */
+  0x1d, /* ADC16mi8 */
+  0x4e5, /* SBB16mi8 */
+  0x76, /* AND16mi8 */
+  0x59f, /* SUB16mi8 */
+  0x642, /* XOR16mi8 */
+  0x1c1, /* CMP16mi8 */
+  0x46, /* ADD16ri8 */
+  0x3cb, /* OR16ri8 */
+  0x20, /* ADC16ri8 */
+  0x4e8, /* SBB16ri8 */
+  0x79, /* AND16ri8 */
+  0x5a2, /* SUB16ri8 */
+  0x645, /* XOR16ri8 */
+  0x1c4, /* CMP16ri8 */
+/* Table704 */
+  0x5d9, /* TEST16rm */
+  0x5da, /* TEST16rr */
+/* Table706 */
+  0x62e, /* XCHG16rm */
+  0x62f, /* XCHG16rr */
+/* Table708 */
+  0x33e, /* MOV16mr */
+  0x345, /* MOV16rr */
+/* Table710 */
+  0x344, /* MOV16rm */
+  0x346, /* MOV16rr_REV */
+/* Table712 */
+  0x33f, /* MOV16ms */
+  0x347, /* MOV16rs */
+/* Table714 */
+  0x2be, /* LEA16r */
+  0x0, /*  */
+/* Table716 */
+  0x348, /* MOV16sm */
+  0x349, /* MOV16sr */
+/* Table718 */
+  0x3fb, /* POP16rmm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x3fc, /* POP16rmr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table734 */
+  0x62d, /* XCHG16ar */
+/* Table735 */
+  0x144, /* CBW */
+/* Table736 */
+  0x1f3, /* CWD */
+/* Table737 */
+  0x218, /* FARCALL16i */
+/* Table738 */
+  0x42a, /* PUSHF16 */
+/* Table739 */
+  0x409, /* POPF16 */
+/* Table740 */
+  0x340, /* MOV16o16a */
+/* Table741 */
+  0x33b, /* MOV16ao16 */
+/* Table742 */
+  0x38e, /* MOVSW */
+/* Table743 */
+  0x1e1, /* CMPS16 */
+/* Table744 */
+  0x5d6, /* TEST16i16 */
+/* Table745 */
+  0x598, /* STOSW */
+/* Table746 */
+  0x319, /* LODSW */
+/* Table747 */
+  0x505, /* SCAS16 */
+/* Table748 */
+  0x342, /* MOV16ri */
+/* Table749 */
+  0x492, /* ROL16mi */
+  0x4aa, /* ROR16mi */
+  0x439, /* RCL16mi */
+  0x451, /* RCR16mi */
+  0x534, /* SHL16mi */
+  0x55c, /* SHR16mi */
+  0x0, /*  */
+  0x4c9, /* SAR16mi */
+  0x495, /* ROL16ri */
+  0x4ad, /* ROR16ri */
+  0x43c, /* RCL16ri */
+  0x454, /* RCR16ri */
+  0x537, /* SHL16ri */
+  0x55f, /* SHR16ri */
+  0x0, /*  */
+  0x4cc, /* SAR16ri */
+/* Table765 */
+  0x48b, /* RETIW */
+/* Table766 */
+  0x48e, /* RETW */
+/* Table767 */
+  0x2c4, /* LES16rm */
+  0x0, /*  */
+/* Table769 */
+  0x2bc, /* LDS16rm */
+  0x0, /*  */
+/* Table771 */
+  0x33d, /* MOV16mi */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x343, /* MOV16ri_alt */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table787 */
+  0x31f, /* LRETIW */
+/* Table788 */
+  0x322, /* LRETW */
+/* Table789 */
+  0x26e, /* IRET16 */
+/* Table790 */
+  0x490, /* ROL16m1 */
+  0x4a8, /* ROR16m1 */
+  0x437, /* RCL16m1 */
+  0x44f, /* RCR16m1 */
+  0x532, /* SHL16m1 */
+  0x55a, /* SHR16m1 */
+  0x0, /*  */
+  0x4c7, /* SAR16m1 */
+  0x493, /* ROL16r1 */
+  0x4ab, /* ROR16r1 */
+  0x43a, /* RCL16r1 */
+  0x452, /* RCR16r1 */
+  0x535, /* SHL16r1 */
+  0x55d, /* SHR16r1 */
+  0x0, /*  */
+  0x4ca, /* SAR16r1 */
+/* Table806 */
+  0x491, /* ROL16mCL */
+  0x4a9, /* ROR16mCL */
+  0x438, /* RCL16mCL */
+  0x450, /* RCR16mCL */
+  0x533, /* SHL16mCL */
+  0x55b, /* SHR16mCL */
+  0x0, /*  */
+  0x4c8, /* SAR16mCL */
+  0x494, /* ROL16rCL */
+  0x4ac, /* ROR16rCL */
+  0x43b, /* RCL16rCL */
+  0x453, /* RCR16rCL */
+  0x536, /* SHL16rCL */
+  0x55e, /* SHR16rCL */
+  0x0, /*  */
+  0x4cb, /* SAR16rCL */
+/* Table822 */
+  0x24a, /* IN16ri */
+/* Table823 */
+  0x3e9, /* OUT16ir */
+/* Table824 */
+  0x142, /* CALLpcrel16 */
+/* Table825 */
+  0x297, /* JMP_2 */
+/* Table826 */
+  0x21d, /* FARJMP16i */
+/* Table827 */
+  0x24b, /* IN16rr */
+/* Table828 */
+  0x3ea, /* OUT16rr */
+/* Table829 */
+  0x5d7, /* TEST16mi */
+  0x0, /*  */
+  0x3be, /* NOT16m */
+  0x3b3, /* NEG16m */
+  0x3a7, /* MUL16m */
+  0x22f, /* IMUL16m */
+  0x206, /* DIV16m */
+  0x227, /* IDIV16m */
+  0x5d8, /* TEST16ri */
+  0x0, /*  */
+  0x3bf, /* NOT16r */
+  0x3b4, /* NEG16r */
+  0x3a8, /* MUL16r */
+  0x230, /* IMUL16r */
+  0x207, /* DIV16r */
+  0x228, /* IDIV16r */
+/* Table845 */
+  0x252, /* INC16m */
+  0x1f8, /* DEC16m */
+  0x13b, /* CALL16m */
+  0x219, /* FARCALL16m */
+  0x290, /* JMP16m */
+  0x21e, /* FARJMP16m */
+  0x416, /* PUSH16rmm */
+  0x0, /*  */
+  0x254, /* INC32_16r */
+  0x1fa, /* DEC32_16r */
+  0x13c, /* CALL16r */
+  0x0, /*  */
+  0x291, /* JMP16r */
+  0x0, /*  */
+  0x417, /* PUSH16rmr */
+  0x0, /*  */
+/* Table861 */
+  0x27e, /* JCXZ */
+/* Table862 */
+  0x5c, /* ADD64mr */
+  0x62, /* ADD64rr */
+/* Table864 */
+  0x61, /* ADD64rm */
+  0x64, /* ADD64rr_REV */
+/* Table866 */
+  0x59, /* ADD64i32 */
+/* Table867 */
+  0x3dc, /* OR64mr */
+  0x3e0, /* OR64rr */
+/* Table869 */
+  0x3df, /* OR64rm */
+  0x3e1, /* OR64rr_REV */
+/* Table871 */
+  0x3d9, /* OR64i32 */
+/* Table872 */
+  0x30, /* ADC64mr */
+  0x34, /* ADC64rr */
+/* Table874 */
+  0x33, /* ADC64rm */
+  0x35, /* ADC64rr_REV */
+/* Table876 */
+  0x2d, /* ADC64i32 */
+/* Table877 */
+  0x4f8, /* SBB64mr */
+  0x4fc, /* SBB64rr */
+/* Table879 */
+  0x4fb, /* SBB64rm */
+  0x4fd, /* SBB64rr_REV */
+/* Table881 */
+  0x4f5, /* SBB64i32 */
+/* Table882 */
+  0x89, /* AND64mr */
+  0x8d, /* AND64rr */
+/* Table884 */
+  0x8c, /* AND64rm */
+  0x8e, /* AND64rr_REV */
+/* Table886 */
+  0x86, /* AND64i32 */
+/* Table887 */
+  0x5b2, /* SUB64mr */
+  0x5b6, /* SUB64rr */
+/* Table889 */
+  0x5b5, /* SUB64rm */
+  0x5b7, /* SUB64rr_REV */
+/* Table891 */
+  0x5af, /* SUB64i32 */
+/* Table892 */
+  0x655, /* XOR64mr */
+  0x659, /* XOR64rr */
+/* Table894 */
+  0x658, /* XOR64rm */
+  0x65a, /* XOR64rr_REV */
+/* Table896 */
+  0x652, /* XOR64i32 */
+/* Table897 */
+  0x1d4, /* CMP64mr */
+  0x1d8, /* CMP64rr */
+/* Table899 */
+  0x1d7, /* CMP64rm */
+  0x1d9, /* CMP64rr_REV */
+/* Table901 */
+  0x1d1, /* CMP64i32 */
+/* Table902 */
+  0x396, /* MOVSX64rm32 */
+  0x399, /* MOVSX64rr32 */
+/* Table904 */
+  0x242, /* IMUL64rmi32 */
+  0x245, /* IMUL64rri32 */
+/* Table906 */
+  0x243, /* IMUL64rmi8 */
+  0x246, /* IMUL64rri8 */
+/* Table908 */
+  0x5a, /* ADD64mi32 */
+  0x3da, /* OR64mi32 */
+  0x2e, /* ADC64mi32 */
+  0x4f6, /* SBB64mi32 */
+  0x87, /* AND64mi32 */
+  0x5b0, /* SUB64mi32 */
+  0x653, /* XOR64mi32 */
+  0x1d2, /* CMP64mi32 */
+  0x5d, /* ADD64ri32 */
+  0x3dd, /* OR64ri32 */
+  0x31, /* ADC64ri32 */
+  0x4f9, /* SBB64ri32 */
+  0x8a, /* AND64ri32 */
+  0x5b3, /* SUB64ri32 */
+  0x656, /* XOR64ri32 */
+  0x1d5, /* CMP64ri32 */
+/* Table924 */
+  0x5b, /* ADD64mi8 */
+  0x3db, /* OR64mi8 */
+  0x2f, /* ADC64mi8 */
+  0x4f7, /* SBB64mi8 */
+  0x88, /* AND64mi8 */
+  0x5b1, /* SUB64mi8 */
+  0x654, /* XOR64mi8 */
+  0x1d3, /* CMP64mi8 */
+  0x5f, /* ADD64ri8 */
+  0x3de, /* OR64ri8 */
+  0x32, /* ADC64ri8 */
+  0x4fa, /* SBB64ri8 */
+  0x8b, /* AND64ri8 */
+  0x5b4, /* SUB64ri8 */
+  0x657, /* XOR64ri8 */
+  0x1d6, /* CMP64ri8 */
+/* Table940 */
+  0x5e3, /* TEST64rm */
+  0x5e4, /* TEST64rr */
+/* Table942 */
+  0x635, /* XCHG64rm */
+  0x636, /* XCHG64rr */
+/* Table944 */
+  0x366, /* MOV64mr */
+  0x371, /* MOV64rr */
+/* Table946 */
+  0x370, /* MOV64rm */
+  0x372, /* MOV64rr_REV */
+/* Table948 */
+  0x367, /* MOV64ms */
+  0x373, /* MOV64rs */
+/* Table950 */
+  0x2c1, /* LEA64r */
+  0x0, /*  */
+/* Table952 */
+  0x374, /* MOV64sm */
+  0x375, /* MOV64sr */
+/* Table954 */
+  0x634, /* XCHG64ar */
+/* Table955 */
+  0x146, /* CDQE */
+/* Table956 */
+  0x1f1, /* CQO */
+/* Table957 */
+  0x36a, /* MOV64o64a */
+/* Table958 */
+  0x361, /* MOV64ao64 */
+/* Table959 */
+  0x38d, /* MOVSQ */
+/* Table960 */
+  0x1e3, /* CMPS64 */
+/* Table961 */
+  0x5e0, /* TEST64i32 */
+/* Table962 */
+  0x597, /* STOSQ */
+/* Table963 */
+  0x318, /* LODSQ */
+/* Table964 */
+  0x507, /* SCAS64 */
+/* Table965 */
+  0x36e, /* MOV64ri */
+/* Table966 */
+  0x49e, /* ROL64mi */
+  0x4b6, /* ROR64mi */
+  0x445, /* RCL64mi */
+  0x45d, /* RCR64mi */
+  0x540, /* SHL64mi */
+  0x568, /* SHR64mi */
+  0x0, /*  */
+  0x4d5, /* SAR64mi */
+  0x4a1, /* ROL64ri */
+  0x4b9, /* ROR64ri */
+  0x448, /* RCL64ri */
+  0x460, /* RCR64ri */
+  0x543, /* SHL64ri */
+  0x56b, /* SHR64ri */
+  0x0, /*  */
+  0x4d8, /* SAR64ri */
+/* Table982 */
+  0x365, /* MOV64mi32 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x36f, /* MOV64ri32 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table998 */
+  0x31e, /* LRETIQ */
+/* Table999 */
+  0x321, /* LRETQ */
+/* Table1000 */
+  0x270, /* IRET64 */
+/* Table1001 */
+  0x49c, /* ROL64m1 */
+  0x4b4, /* ROR64m1 */
+  0x443, /* RCL64m1 */
+  0x45b, /* RCR64m1 */
+  0x53e, /* SHL64m1 */
+  0x566, /* SHR64m1 */
+  0x0, /*  */
+  0x4d3, /* SAR64m1 */
+  0x49f, /* ROL64r1 */
+  0x4b7, /* ROR64r1 */
+  0x446, /* RCL64r1 */
+  0x45e, /* RCR64r1 */
+  0x541, /* SHL64r1 */
+  0x569, /* SHR64r1 */
+  0x0, /*  */
+  0x4d6, /* SAR64r1 */
+/* Table1017 */
+  0x49d, /* ROL64mCL */
+  0x4b5, /* ROR64mCL */
+  0x444, /* RCL64mCL */
+  0x45c, /* RCR64mCL */
+  0x53f, /* SHL64mCL */
+  0x567, /* SHR64mCL */
+  0x0, /*  */
+  0x4d4, /* SAR64mCL */
+  0x4a0, /* ROL64rCL */
+  0x4b8, /* ROR64rCL */
+  0x447, /* RCL64rCL */
+  0x45f, /* RCR64rCL */
+  0x542, /* SHL64rCL */
+  0x56a, /* SHR64rCL */
+  0x0, /*  */
+  0x4d7, /* SAR64rCL */
+/* Table1033 */
+  0x5e1, /* TEST64mi32 */
+  0x0, /*  */
+  0x3c2, /* NOT64m */
+  0x3b7, /* NEG64m */
+  0x3ab, /* MUL64m */
+  0x23f, /* IMUL64m */
+  0x20a, /* DIV64m */
+  0x22b, /* IDIV64m */
+  0x5e2, /* TEST64ri32 */
+  0x0, /*  */
+  0x3c3, /* NOT64r */
+  0x3b8, /* NEG64r */
+  0x3ac, /* MUL64r */
+  0x240, /* IMUL64r */
+  0x20b, /* DIV64r */
+  0x22c, /* IDIV64r */
+/* Table1049 */
+  0x25c, /* INC64m */
+  0x202, /* DEC64m */
+  0x13f, /* CALL64m */
+  0x21c, /* FARCALL64 */
+  0x294, /* JMP64m */
+  0x221, /* FARJMP64 */
+  0x420, /* PUSH64rmm */
+  0x0, /*  */
+  0x25d, /* INC64r */
+  0x203, /* DEC64r */
+  0x141, /* CALL64r */
+  0x0, /*  */
+  0x295, /* JMP64r */
+  0x0, /*  */
+  0x421, /* PUSH64rmr */
+  0x0, /*  */
+/* Table1065 */
+  0x41c, /* PUSH64i16 */
+/* Table1066 */
+  0x368, /* MOV64o16a */
+/* Table1067 */
+  0x35f, /* MOV64ao16 */
+/* Table1068 */
+  0x258, /* INC64_16m */
+  0x1fe, /* DEC64_16m */
+  0x13f, /* CALL64m */
+  0x219, /* FARCALL16m */
+  0x294, /* JMP64m */
+  0x21e, /* FARJMP16m */
+  0x416, /* PUSH16rmm */
+  0x0, /*  */
+  0x259, /* INC64_16r */
+  0x1ff, /* DEC64_16r */
+  0x141, /* CALL64r */
+  0x0, /*  */
+  0x295, /* JMP64r */
+  0x0, /*  */
+  0x417, /* PUSH16rmr */
+  0x0, /*  */
+/* Table1084 */
+  0x280, /* JECXZ_64 */
+/* Table1085 */
+  0x25c, /* INC64m */
+  0x202, /* DEC64m */
+  0x13f, /* CALL64m */
+  0x21c, /* FARCALL64 */
+  0x294, /* JMP64m */
+  0x221, /* FARJMP64 */
+  0x416, /* PUSH16rmm */
+  0x0, /*  */
+  0x25d, /* INC64r */
+  0x203, /* DEC64r */
+  0x141, /* CALL64r */
+  0x0, /*  */
+  0x295, /* JMP64r */
+  0x0, /*  */
+  0x417, /* PUSH16rmr */
+  0x0, /*  */
+/* Table1101 */
+  0x586, /* SLDT16m */
+  0x59c, /* STRm */
+  0x2d2, /* LLDT16m */
+  0x32c, /* LTRm */
+  0x5ff, /* VERRm */
+  0x601, /* VERWm */
+  0x0, /*  */
+  0x0, /*  */
+  0x588, /* SLDT32r */
+  0x59a, /* STR32r */
+  0x2d3, /* LLDT16r */
+  0x32d, /* LTRr */
+  0x600, /* VERRr */
+  0x602, /* VERWr */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1117 */
+  0x530, /* SGDT32m */
+  0x583, /* SIDT32m */
+  0x2ca, /* LGDT32m */
+  0x2d0, /* LIDT32m */
+  0x58b, /* SMSW16m */
+  0x0, /*  */
+  0x2d4, /* LMSW16m */
+  0x267, /* INVLPG */
+  0x0, /*  */
+  0x603, /* VMCALL */
+  0x606, /* VMLAUNCH */
+  0x610, /* VMRESUME */
+  0x619, /* VMXOFF */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x147, /* CLAC */
+  0x590, /* STAC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63e, /* XGETBV */
+  0x668, /* XSETBV */
+  0x0, /*  */
+  0x0, /*  */
+  0x605, /* VMFUNC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x611, /* VMRUN32 */
+  0x609, /* VMMCALL */
+  0x607, /* VMLOAD32 */
+  0x613, /* VMSAVE32 */
+  0x593, /* STGI */
+  0x14a, /* CLGI */
+  0x585, /* SKINIT */
+  0x268, /* INVLPGA32 */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x5bf, /* SWAPGS */
+  0x474, /* RDTSCP */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1189 */
+  0x2b2, /* LAR32rm */
+  0x2b3, /* LAR32rr */
+/* Table1191 */
+  0x325, /* LSL32rm */
+  0x326, /* LSL32rr */
+/* Table1193 */
+  0x5c0, /* SYSCALL */
+/* Table1194 */
+  0x14c, /* CLTS */
+/* Table1195 */
+  0x5c4, /* SYSRET */
+/* Table1196 */
+  0x264, /* INVD */
+/* Table1197 */
+  0x61c, /* WBINVD */
+/* Table1198 */
+  0x5f1, /* TRAP */
+/* Table1199 */
+  0x3bc, /* NOOPL */
+  0x0, /*  */
+/* Table1201 */
+  0x0, /*  */
+  0x354, /* MOV32rc */
+/* Table1203 */
+  0x0, /*  */
+  0x355, /* MOV32rd */
+/* Table1205 */
+  0x0, /*  */
+  0x34c, /* MOV32cr */
+/* Table1207 */
+  0x0, /*  */
+  0x34d, /* MOV32dr */
+/* Table1209 */
+  0x624, /* WRMSR */
+/* Table1210 */
+  0x473, /* RDTSC */
+/* Table1211 */
+  0x46b, /* RDMSR */
+/* Table1212 */
+  0x46c, /* RDPMC */
+/* Table1213 */
+  0x5c1, /* SYSENTER */
+/* Table1214 */
+  0x5c2, /* SYSEXIT */
+/* Table1215 */
+  0x224, /* GETSEC */
+/* Table1216 */
+  0x19e, /* CMOVO32rm */
+  0x19f, /* CMOVO32rr */
+/* Table1218 */
+  0x18c, /* CMOVNO32rm */
+  0x18d, /* CMOVNO32rr */
+/* Table1220 */
+  0x15c, /* CMOVB32rm */
+  0x15d, /* CMOVB32rr */
+/* Table1222 */
+  0x156, /* CMOVAE32rm */
+  0x157, /* CMOVAE32rr */
+/* Table1224 */
+  0x168, /* CMOVE32rm */
+  0x169, /* CMOVE32rr */
+/* Table1226 */
+  0x186, /* CMOVNE32rm */
+  0x187, /* CMOVNE32rr */
+/* Table1228 */
+  0x162, /* CMOVBE32rm */
+  0x163, /* CMOVBE32rr */
+/* Table1230 */
+  0x150, /* CMOVA32rm */
+  0x151, /* CMOVA32rr */
+/* Table1232 */
+  0x1aa, /* CMOVS32rm */
+  0x1ab, /* CMOVS32rr */
+/* Table1234 */
+  0x198, /* CMOVNS32rm */
+  0x199, /* CMOVNS32rr */
+/* Table1236 */
+  0x1a4, /* CMOVP32rm */
+  0x1a5, /* CMOVP32rr */
+/* Table1238 */
+  0x192, /* CMOVNP32rm */
+  0x193, /* CMOVNP32rr */
+/* Table1240 */
+  0x17a, /* CMOVL32rm */
+  0x17b, /* CMOVL32rr */
+/* Table1242 */
+  0x174, /* CMOVGE32rm */
+  0x175, /* CMOVGE32rr */
+/* Table1244 */
+  0x180, /* CMOVLE32rm */
+  0x181, /* CMOVLE32rr */
+/* Table1246 */
+  0x16e, /* CMOVG32rm */
+  0x16f, /* CMOVG32rr */
+/* Table1248 */
+  0x60c, /* VMREAD32rm */
+  0x60d, /* VMREAD32rr */
+/* Table1250 */
+  0x615, /* VMWRITE32rm */
+  0x616, /* VMWRITE32rr */
+/* Table1252 */
+  0x2a7, /* JO_4 */
+/* Table1253 */
+  0x29e, /* JNO_4 */
+/* Table1254 */
+  0x27d, /* JB_4 */
+/* Table1255 */
+  0x274, /* JAE_4 */
+/* Table1256 */
+  0x283, /* JE_4 */
+/* Table1257 */
+  0x29b, /* JNE_4 */
+/* Table1258 */
+  0x27a, /* JBE_4 */
+/* Table1259 */
+  0x277, /* JA_4 */
+/* Table1260 */
+  0x2ae, /* JS_4 */
+/* Table1261 */
+  0x2a4, /* JNS_4 */
+/* Table1262 */
+  0x2aa, /* JP_4 */
+/* Table1263 */
+  0x2a1, /* JNP_4 */
+/* Table1264 */
+  0x28f, /* JL_4 */
+/* Table1265 */
+  0x286, /* JGE_4 */
+/* Table1266 */
+  0x28c, /* JLE_4 */
+/* Table1267 */
+  0x289, /* JG_4 */
+/* Table1268 */
+  0x529, /* SETOm */
+  0x52a, /* SETOr */
+/* Table1270 */
+  0x523, /* SETNOm */
+  0x524, /* SETNOr */
+/* Table1272 */
+  0x515, /* SETBm */
+  0x516, /* SETBr */
+/* Table1274 */
+  0x50b, /* SETAEm */
+  0x50c, /* SETAEr */
+/* Table1276 */
+  0x517, /* SETEm */
+  0x518, /* SETEr */
+/* Table1278 */
+  0x521, /* SETNEm */
+  0x522, /* SETNEr */
+/* Table1280 */
+  0x50f, /* SETBEm */
+  0x510, /* SETBEr */
+/* Table1282 */
+  0x50d, /* SETAm */
+  0x50e, /* SETAr */
+/* Table1284 */
+  0x52d, /* SETSm */
+  0x52e, /* SETSr */
+/* Table1286 */
+  0x527, /* SETNSm */
+  0x528, /* SETNSr */
+/* Table1288 */
+  0x52b, /* SETPm */
+  0x52c, /* SETPr */
+/* Table1290 */
+  0x525, /* SETNPm */
+  0x526, /* SETNPr */
+/* Table1292 */
+  0x51f, /* SETLm */
+  0x520, /* SETLr */
+/* Table1294 */
+  0x519, /* SETGEm */
+  0x51a, /* SETGEr */
+/* Table1296 */
+  0x51d, /* SETLEm */
+  0x51e, /* SETLEr */
+/* Table1298 */
+  0x51b, /* SETGm */
+  0x51c, /* SETGr */
+/* Table1300 */
+  0x42e, /* PUSHFS32 */
+/* Table1301 */
+  0x40d, /* POPFS32 */
+/* Table1302 */
+  0x1ef, /* CPUID32 */
+/* Table1303 */
+  0x10c, /* BT32mr */
+  0x10e, /* BT32rr */
+/* Table1305 */
+  0x54f, /* SHLD32mri8 */
+  0x551, /* SHLD32rri8 */
+/* Table1307 */
+  0x54e, /* SHLD32mrCL */
+  0x550, /* SHLD32rrCL */
+/* Table1309 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x338, /* MONTMUL */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x669, /* XSHA1 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x66a, /* XSHA256 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1381 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x66b, /* XSTORE */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63c, /* XCRYPTECB */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x639, /* XCRYPTCBC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63b, /* XCRYPTCTR */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63a, /* XCRYPTCFB */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63d, /* XCRYPTOFB */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1453 */
+  0x431, /* PUSHGS32 */
+/* Table1454 */
+  0x410, /* POPGS32 */
+/* Table1455 */
+  0x4c4, /* RSM */
+/* Table1456 */
+  0x130, /* BTS32mr */
+  0x132, /* BTS32rr */
+/* Table1458 */
+  0x577, /* SHRD32mri8 */
+  0x579, /* SHRD32rri8 */
+/* Table1460 */
+  0x576, /* SHRD32mrCL */
+  0x578, /* SHRD32rrCL */
+/* Table1462 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x664, /* XSAVE */
+  0x662, /* XRSTOR */
+  0x666, /* XSAVEOPT */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1478 */
+  0x239, /* IMUL32rm */
+  0x23c, /* IMUL32rr */
+/* Table1480 */
+  0x1ed, /* CMPXCHG8rm */
+  0x1ee, /* CMPXCHG8rr */
+/* Table1482 */
+  0x1e8, /* CMPXCHG32rm */
+  0x1e9, /* CMPXCHG32rr */
+/* Table1484 */
+  0x32a, /* LSS32rm */
+  0x0, /*  */
+/* Table1486 */
+  0x124, /* BTR32mr */
+  0x126, /* BTR32rr */
+/* Table1488 */
+  0x2c7, /* LFS32rm */
+  0x0, /*  */
+/* Table1490 */
+  0x2cd, /* LGS32rm */
+  0x0, /*  */
+/* Table1492 */
+  0x3a0, /* MOVZX32rm8 */
+  0x3a2, /* MOVZX32rr8 */
+/* Table1494 */
+  0x39f, /* MOVZX32rm16 */
+  0x3a1, /* MOVZX32rr16 */
+/* Table1496 */
+  0x5fc, /* UD2B */
+/* Table1497 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x10b, /* BT32mi8 */
+  0x12f, /* BTS32mi8 */
+  0x123, /* BTR32mi8 */
+  0x117, /* BTC32mi8 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x10d, /* BT32ri8 */
+  0x131, /* BTS32ri8 */
+  0x125, /* BTR32ri8 */
+  0x119, /* BTC32ri8 */
+/* Table1513 */
+  0x118, /* BTC32mr */
+  0x11a, /* BTC32rr */
+/* Table1515 */
+  0xfb, /* BSF32rm */
+  0xfc, /* BSF32rr */
+/* Table1517 */
+  0x101, /* BSR32rm */
+  0x102, /* BSR32rr */
+/* Table1519 */
+  0x392, /* MOVSX32rm8 */
+  0x394, /* MOVSX32rr8 */
+/* Table1521 */
+  0x391, /* MOVSX32rm16 */
+  0x393, /* MOVSX32rr16 */
+/* Table1523 */
+  0x62b, /* XADD8rm */
+  0x62c, /* XADD8rr */
+/* Table1525 */
+  0x627, /* XADD32rm */
+  0x628, /* XADD32rr */
+/* Table1527 */
+  0x0, /*  */
+  0x1ec, /* CMPXCHG8B */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x60a, /* VMPTRLDm */
+  0x60b, /* VMPTRSTm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x46e, /* RDRAND32r */
+  0x471, /* RDSEED32r */
+/* Table1543 */
+  0x105, /* BSWAP32r */
+/* Table1544 */
+  0x531, /* SGDT64m */
+  0x584, /* SIDT64m */
+  0x2cb, /* LGDT64m */
+  0x2d1, /* LIDT64m */
+  0x58b, /* SMSW16m */
+  0x0, /*  */
+  0x2d4, /* LMSW16m */
+  0x267, /* INVLPG */
+  0x0, /*  */
+  0x603, /* VMCALL */
+  0x606, /* VMLAUNCH */
+  0x610, /* VMRESUME */
+  0x619, /* VMXOFF */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x147, /* CLAC */
+  0x590, /* STAC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63e, /* XGETBV */
+  0x668, /* XSETBV */
+  0x0, /*  */
+  0x0, /*  */
+  0x605, /* VMFUNC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x612, /* VMRUN64 */
+  0x609, /* VMMCALL */
+  0x608, /* VMLOAD64 */
+  0x614, /* VMSAVE64 */
+  0x593, /* STGI */
+  0x14a, /* CLGI */
+  0x585, /* SKINIT */
+  0x269, /* INVLPGA64 */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x58d, /* SMSW32r */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x5bf, /* SWAPGS */
+  0x474, /* RDTSCP */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1616 */
+  0x0, /*  */
+  0x36c, /* MOV64rc */
+/* Table1618 */
+  0x0, /*  */
+  0x36d, /* MOV64rd */
+/* Table1620 */
+  0x0, /*  */
+  0x363, /* MOV64cr */
+/* Table1622 */
+  0x0, /*  */
+  0x364, /* MOV64dr */
+/* Table1624 */
+  0x60e, /* VMREAD64rm */
+  0x60f, /* VMREAD64rr */
+/* Table1626 */
+  0x617, /* VMWRITE64rm */
+  0x618, /* VMWRITE64rr */
+/* Table1628 */
+  0x42f, /* PUSHFS64 */
+/* Table1629 */
+  0x40e, /* POPFS64 */
+/* Table1630 */
+  0x1f0, /* CPUID64 */
+/* Table1631 */
+  0x432, /* PUSHGS64 */
+/* Table1632 */
+  0x411, /* POPGS64 */
+/* Table1633 */
+  0x586, /* SLDT16m */
+  0x59c, /* STRm */
+  0x2d2, /* LLDT16m */
+  0x32c, /* LTRm */
+  0x5ff, /* VERRm */
+  0x601, /* VERWm */
+  0x0, /*  */
+  0x0, /*  */
+  0x587, /* SLDT16r */
+  0x599, /* STR16r */
+  0x2d3, /* LLDT16r */
+  0x32d, /* LTRr */
+  0x600, /* VERRr */
+  0x602, /* VERWr */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1649 */
+  0x52f, /* SGDT16m */
+  0x582, /* SIDT16m */
+  0x2c9, /* LGDT16m */
+  0x2cf, /* LIDT16m */
+  0x58b, /* SMSW16m */
+  0x0, /*  */
+  0x2d4, /* LMSW16m */
+  0x267, /* INVLPG */
+  0x0, /*  */
+  0x603, /* VMCALL */
+  0x606, /* VMLAUNCH */
+  0x610, /* VMRESUME */
+  0x619, /* VMXOFF */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x147, /* CLAC */
+  0x590, /* STAC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63e, /* XGETBV */
+  0x668, /* XSETBV */
+  0x0, /*  */
+  0x0, /*  */
+  0x605, /* VMFUNC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x611, /* VMRUN32 */
+  0x609, /* VMMCALL */
+  0x607, /* VMLOAD32 */
+  0x613, /* VMSAVE32 */
+  0x593, /* STGI */
+  0x14a, /* CLGI */
+  0x585, /* SKINIT */
+  0x268, /* INVLPGA32 */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x5bf, /* SWAPGS */
+  0x474, /* RDTSCP */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1721 */
+  0x2b0, /* LAR16rm */
+  0x2b1, /* LAR16rr */
+/* Table1723 */
+  0x323, /* LSL16rm */
+  0x324, /* LSL16rr */
+/* Table1725 */
+  0x3bd, /* NOOPW */
+  0x0, /*  */
+/* Table1727 */
+  0x19c, /* CMOVO16rm */
+  0x19d, /* CMOVO16rr */
+/* Table1729 */
+  0x18a, /* CMOVNO16rm */
+  0x18b, /* CMOVNO16rr */
+/* Table1731 */
+  0x15a, /* CMOVB16rm */
+  0x15b, /* CMOVB16rr */
+/* Table1733 */
+  0x154, /* CMOVAE16rm */
+  0x155, /* CMOVAE16rr */
+/* Table1735 */
+  0x166, /* CMOVE16rm */
+  0x167, /* CMOVE16rr */
+/* Table1737 */
+  0x184, /* CMOVNE16rm */
+  0x185, /* CMOVNE16rr */
+/* Table1739 */
+  0x160, /* CMOVBE16rm */
+  0x161, /* CMOVBE16rr */
+/* Table1741 */
+  0x14e, /* CMOVA16rm */
+  0x14f, /* CMOVA16rr */
+/* Table1743 */
+  0x1a8, /* CMOVS16rm */
+  0x1a9, /* CMOVS16rr */
+/* Table1745 */
+  0x196, /* CMOVNS16rm */
+  0x197, /* CMOVNS16rr */
+/* Table1747 */
+  0x1a2, /* CMOVP16rm */
+  0x1a3, /* CMOVP16rr */
+/* Table1749 */
+  0x190, /* CMOVNP16rm */
+  0x191, /* CMOVNP16rr */
+/* Table1751 */
+  0x178, /* CMOVL16rm */
+  0x179, /* CMOVL16rr */
+/* Table1753 */
+  0x172, /* CMOVGE16rm */
+  0x173, /* CMOVGE16rr */
+/* Table1755 */
+  0x17e, /* CMOVLE16rm */
+  0x17f, /* CMOVLE16rr */
+/* Table1757 */
+  0x16c, /* CMOVG16rm */
+  0x16d, /* CMOVG16rr */
+/* Table1759 */
+  0x2a6, /* JO_2 */
+/* Table1760 */
+  0x29d, /* JNO_2 */
+/* Table1761 */
+  0x27c, /* JB_2 */
+/* Table1762 */
+  0x273, /* JAE_2 */
+/* Table1763 */
+  0x282, /* JE_2 */
+/* Table1764 */
+  0x29a, /* JNE_2 */
+/* Table1765 */
+  0x279, /* JBE_2 */
+/* Table1766 */
+  0x276, /* JA_2 */
+/* Table1767 */
+  0x2ad, /* JS_2 */
+/* Table1768 */
+  0x2a3, /* JNS_2 */
+/* Table1769 */
+  0x2a9, /* JP_2 */
+/* Table1770 */
+  0x2a0, /* JNP_2 */
+/* Table1771 */
+  0x28e, /* JL_2 */
+/* Table1772 */
+  0x285, /* JGE_2 */
+/* Table1773 */
+  0x28b, /* JLE_2 */
+/* Table1774 */
+  0x288, /* JG_2 */
+/* Table1775 */
+  0x42d, /* PUSHFS16 */
+/* Table1776 */
+  0x40c, /* POPFS16 */
+/* Table1777 */
+  0x108, /* BT16mr */
+  0x10a, /* BT16rr */
+/* Table1779 */
+  0x54b, /* SHLD16mri8 */
+  0x54d, /* SHLD16rri8 */
+/* Table1781 */
+  0x54a, /* SHLD16mrCL */
+  0x54c, /* SHLD16rrCL */
+/* Table1783 */
+  0x430, /* PUSHGS16 */
+/* Table1784 */
+  0x40f, /* POPGS16 */
+/* Table1785 */
+  0x12c, /* BTS16mr */
+  0x12e, /* BTS16rr */
+/* Table1787 */
+  0x573, /* SHRD16mri8 */
+  0x575, /* SHRD16rri8 */
+/* Table1789 */
+  0x572, /* SHRD16mrCL */
+  0x574, /* SHRD16rrCL */
+/* Table1791 */
+  0x231, /* IMUL16rm */
+  0x234, /* IMUL16rr */
+/* Table1793 */
+  0x1e6, /* CMPXCHG16rm */
+  0x1e7, /* CMPXCHG16rr */
+/* Table1795 */
+  0x329, /* LSS16rm */
+  0x0, /*  */
+/* Table1797 */
+  0x120, /* BTR16mr */
+  0x122, /* BTR16rr */
+/* Table1799 */
+  0x2c6, /* LFS16rm */
+  0x0, /*  */
+/* Table1801 */
+  0x2cc, /* LGS16rm */
+  0x0, /*  */
+/* Table1803 */
+  0x39b, /* MOVZX16rm8 */
+  0x39c, /* MOVZX16rr8 */
+/* Table1805 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x107, /* BT16mi8 */
+  0x12b, /* BTS16mi8 */
+  0x11f, /* BTR16mi8 */
+  0x113, /* BTC16mi8 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x109, /* BT16ri8 */
+  0x12d, /* BTS16ri8 */
+  0x121, /* BTR16ri8 */
+  0x115, /* BTC16ri8 */
+/* Table1821 */
+  0x114, /* BTC16mr */
+  0x116, /* BTC16rr */
+/* Table1823 */
+  0xf9, /* BSF16rm */
+  0xfa, /* BSF16rr */
+/* Table1825 */
+  0xff, /* BSR16rm */
+  0x100, /* BSR16rr */
+/* Table1827 */
+  0x38f, /* MOVSX16rm8 */
+  0x390, /* MOVSX16rr8 */
+/* Table1829 */
+  0x625, /* XADD16rm */
+  0x626, /* XADD16rr */
+/* Table1831 */
+  0x0, /*  */
+  0x1ec, /* CMPXCHG8B */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x604, /* VMCLEARm */
+  0x60b, /* VMPTRSTm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x46d, /* RDRAND16r */
+  0x470, /* RDSEED16r */
+/* Table1847 */
+  0x5f4, /* TZCNT32rm */
+  0x5f5, /* TZCNT32rr */
+/* Table1849 */
+  0x334, /* LZCNT32rm */
+  0x335, /* LZCNT32rr */
+/* Table1851 */
+  0x0, /*  */
+  0x1ec, /* CMPXCHG8B */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x61a, /* VMXON */
+  0x60b, /* VMPTRSTm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x46e, /* RDRAND32r */
+  0x471, /* RDSEED32r */
+/* Table1867 */
+  0x5f2, /* TZCNT16rm */
+  0x5f3, /* TZCNT16rr */
+/* Table1869 */
+  0x332, /* LZCNT16rm */
+  0x333, /* LZCNT16rr */
+/* Table1871 */
+  0x589, /* SLDT64m */
+  0x59c, /* STRm */
+  0x2d2, /* LLDT16m */
+  0x32c, /* LTRm */
+  0x5ff, /* VERRm */
+  0x601, /* VERWm */
+  0x0, /*  */
+  0x0, /*  */
+  0x58a, /* SLDT64r */
+  0x59b, /* STR64r */
+  0x2d3, /* LLDT16r */
+  0x32d, /* LTRr */
+  0x600, /* VERRr */
+  0x602, /* VERWr */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1887 */
+  0x531, /* SGDT64m */
+  0x584, /* SIDT64m */
+  0x2cb, /* LGDT64m */
+  0x2d1, /* LIDT64m */
+  0x58b, /* SMSW16m */
+  0x0, /*  */
+  0x2d4, /* LMSW16m */
+  0x267, /* INVLPG */
+  0x0, /*  */
+  0x603, /* VMCALL */
+  0x606, /* VMLAUNCH */
+  0x610, /* VMRESUME */
+  0x619, /* VMXOFF */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x147, /* CLAC */
+  0x590, /* STAC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63e, /* XGETBV */
+  0x668, /* XSETBV */
+  0x0, /*  */
+  0x0, /*  */
+  0x605, /* VMFUNC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x612, /* VMRUN64 */
+  0x609, /* VMMCALL */
+  0x608, /* VMLOAD64 */
+  0x614, /* VMSAVE64 */
+  0x593, /* STGI */
+  0x14a, /* CLGI */
+  0x585, /* SKINIT */
+  0x269, /* INVLPGA64 */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x58e, /* SMSW64r */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x5bf, /* SWAPGS */
+  0x474, /* RDTSCP */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table1959 */
+  0x2b4, /* LAR64rm */
+  0x2b5, /* LAR64rr */
+/* Table1961 */
+  0x327, /* LSL64rm */
+  0x328, /* LSL64rr */
+/* Table1963 */
+  0x5c5, /* SYSRET64 */
+/* Table1964 */
+  0x5c3, /* SYSEXIT64 */
+/* Table1965 */
+  0x1a0, /* CMOVO64rm */
+  0x1a1, /* CMOVO64rr */
+/* Table1967 */
+  0x18e, /* CMOVNO64rm */
+  0x18f, /* CMOVNO64rr */
+/* Table1969 */
+  0x15e, /* CMOVB64rm */
+  0x15f, /* CMOVB64rr */
+/* Table1971 */
+  0x158, /* CMOVAE64rm */
+  0x159, /* CMOVAE64rr */
+/* Table1973 */
+  0x16a, /* CMOVE64rm */
+  0x16b, /* CMOVE64rr */
+/* Table1975 */
+  0x188, /* CMOVNE64rm */
+  0x189, /* CMOVNE64rr */
+/* Table1977 */
+  0x164, /* CMOVBE64rm */
+  0x165, /* CMOVBE64rr */
+/* Table1979 */
+  0x152, /* CMOVA64rm */
+  0x153, /* CMOVA64rr */
+/* Table1981 */
+  0x1ac, /* CMOVS64rm */
+  0x1ad, /* CMOVS64rr */
+/* Table1983 */
+  0x19a, /* CMOVNS64rm */
+  0x19b, /* CMOVNS64rr */
+/* Table1985 */
+  0x1a6, /* CMOVP64rm */
+  0x1a7, /* CMOVP64rr */
+/* Table1987 */
+  0x194, /* CMOVNP64rm */
+  0x195, /* CMOVNP64rr */
+/* Table1989 */
+  0x17c, /* CMOVL64rm */
+  0x17d, /* CMOVL64rr */
+/* Table1991 */
+  0x176, /* CMOVGE64rm */
+  0x177, /* CMOVGE64rr */
+/* Table1993 */
+  0x182, /* CMOVLE64rm */
+  0x183, /* CMOVLE64rr */
+/* Table1995 */
+  0x170, /* CMOVG64rm */
+  0x171, /* CMOVG64rr */
+/* Table1997 */
+  0x110, /* BT64mr */
+  0x112, /* BT64rr */
+/* Table1999 */
+  0x553, /* SHLD64mri8 */
+  0x555, /* SHLD64rri8 */
+/* Table2001 */
+  0x552, /* SHLD64mrCL */
+  0x554, /* SHLD64rrCL */
+/* Table2003 */
+  0x134, /* BTS64mr */
+  0x136, /* BTS64rr */
+/* Table2005 */
+  0x57b, /* SHRD64mri8 */
+  0x57d, /* SHRD64rri8 */
+/* Table2007 */
+  0x57a, /* SHRD64mrCL */
+  0x57c, /* SHRD64rrCL */
+/* Table2009 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x665, /* XSAVE64 */
+  0x663, /* XRSTOR64 */
+  0x667, /* XSAVEOPT64 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table2025 */
+  0x241, /* IMUL64rm */
+  0x244, /* IMUL64rr */
+/* Table2027 */
+  0x1ea, /* CMPXCHG64rm */
+  0x1eb, /* CMPXCHG64rr */
+/* Table2029 */
+  0x32b, /* LSS64rm */
+  0x0, /*  */
+/* Table2031 */
+  0x128, /* BTR64mr */
+  0x12a, /* BTR64rr */
+/* Table2033 */
+  0x2c8, /* LFS64rm */
+  0x0, /*  */
+/* Table2035 */
+  0x2ce, /* LGS64rm */
+  0x0, /*  */
+/* Table2037 */
+  0x3a4, /* MOVZX64rm8_Q */
+  0x3a6, /* MOVZX64rr8_Q */
+/* Table2039 */
+  0x3a3, /* MOVZX64rm16_Q */
+  0x3a5, /* MOVZX64rr16_Q */
+/* Table2041 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x10f, /* BT64mi8 */
+  0x133, /* BTS64mi8 */
+  0x127, /* BTR64mi8 */
+  0x11b, /* BTC64mi8 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x111, /* BT64ri8 */
+  0x135, /* BTS64ri8 */
+  0x129, /* BTR64ri8 */
+  0x11d, /* BTC64ri8 */
+/* Table2057 */
+  0x11c, /* BTC64mr */
+  0x11e, /* BTC64rr */
+/* Table2059 */
+  0xfd, /* BSF64rm */
+  0xfe, /* BSF64rr */
+/* Table2061 */
+  0x103, /* BSR64rm */
+  0x104, /* BSR64rr */
+/* Table2063 */
+  0x397, /* MOVSX64rm8 */
+  0x39a, /* MOVSX64rr8 */
+/* Table2065 */
+  0x395, /* MOVSX64rm16 */
+  0x398, /* MOVSX64rr16 */
+/* Table2067 */
+  0x629, /* XADD64rm */
+  0x62a, /* XADD64rr */
+/* Table2069 */
+  0x0, /*  */
+  0x1e5, /* CMPXCHG16B */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x60a, /* VMPTRLDm */
+  0x60b, /* VMPTRSTm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x46f, /* RDRAND64r */
+  0x472, /* RDSEED64r */
+/* Table2085 */
+  0x106, /* BSWAP64r */
+/* Table2086 */
+  0x531, /* SGDT64m */
+  0x584, /* SIDT64m */
+  0x2cb, /* LGDT64m */
+  0x2d1, /* LIDT64m */
+  0x58b, /* SMSW16m */
+  0x0, /*  */
+  0x2d4, /* LMSW16m */
+  0x267, /* INVLPG */
+  0x0, /*  */
+  0x603, /* VMCALL */
+  0x606, /* VMLAUNCH */
+  0x610, /* VMRESUME */
+  0x619, /* VMXOFF */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x147, /* CLAC */
+  0x590, /* STAC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x63e, /* XGETBV */
+  0x668, /* XSETBV */
+  0x0, /*  */
+  0x0, /*  */
+  0x605, /* VMFUNC */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x612, /* VMRUN64 */
+  0x609, /* VMMCALL */
+  0x608, /* VMLOAD64 */
+  0x614, /* VMSAVE64 */
+  0x593, /* STGI */
+  0x14a, /* CLGI */
+  0x585, /* SKINIT */
+  0x269, /* INVLPGA64 */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x58c, /* SMSW16r */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x2d5, /* LMSW16r */
+  0x5bf, /* SWAPGS */
+  0x474, /* RDTSCP */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table2158 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x664, /* XSAVE */
+  0x662, /* XRSTOR */
+  0x666, /* XSAVEOPT */
+  0x0, /*  */
+  0x467, /* RDFSBASE */
+  0x469, /* RDGSBASE */
+  0x620, /* WRFSBASE */
+  0x622, /* WRGSBASE */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table2174 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x665, /* XSAVE64 */
+  0x663, /* XRSTOR64 */
+  0x667, /* XSAVEOPT64 */
+  0x0, /*  */
+  0x468, /* RDFSBASE64 */
+  0x46a, /* RDGSBASE64 */
+  0x621, /* WRFSBASE64 */
+  0x623, /* WRGSBASE64 */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table2190 */
+  0x5f6, /* TZCNT64rm */
+  0x5f7, /* TZCNT64rr */
+/* Table2192 */
+  0x336, /* LZCNT64rm */
+  0x337, /* LZCNT64rr */
+/* Table2194 */
+  0x0, /*  */
+  0x1e5, /* CMPXCHG16B */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x61a, /* VMXON */
+  0x60b, /* VMPTRSTm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x46f, /* RDRAND64r */
+  0x472, /* RDSEED64r */
+/* Table2210 */
+  0x0, /*  */
+  0x1e5, /* CMPXCHG16B */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x604, /* VMCLEARm */
+  0x60b, /* VMPTRSTm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x46f, /* RDRAND64r */
+  0x472, /* RDSEED64r */
+/* Table2226 */
+  0x387, /* MOVBE32rm */
+  0x0, /*  */
+/* Table2228 */
+  0x386, /* MOVBE32mr */
+  0x0, /*  */
+/* Table2230 */
+  0x265, /* INVEPT32 */
+  0x0, /*  */
+/* Table2232 */
+  0x26c, /* INVVPID32 */
+  0x0, /*  */
+/* Table2234 */
+  0x26a, /* INVPCID32 */
+  0x0, /*  */
+/* Table2236 */
+  0x385, /* MOVBE16rm */
+  0x0, /*  */
+/* Table2238 */
+  0x384, /* MOVBE16mr */
+  0x0, /*  */
+/* Table2240 */
+  0x3d, /* ADCX32rm */
+  0x3e, /* ADCX32rr */
+/* Table2242 */
+  0x70, /* ADOX32rm */
+  0x71, /* ADOX32rr */
+/* Table2244 */
+  0x389, /* MOVBE64rm */
+  0x0, /*  */
+/* Table2246 */
+  0x388, /* MOVBE64mr */
+  0x0, /*  */
+/* Table2248 */
+  0x266, /* INVEPT64 */
+  0x0, /*  */
+/* Table2250 */
+  0x26d, /* INVVPID64 */
+  0x0, /*  */
+/* Table2252 */
+  0x26b, /* INVPCID64 */
+  0x0, /*  */
+/* Table2254 */
+  0x72, /* ADOX64rm */
+  0x73, /* ADOX64rr */
+/* Table2256 */
+  0x3f, /* ADCX64rm */
+  0x40, /* ADCX64rr */
+/* Table2258 */
+  0x96, /* ANDN32rm */
+  0x97, /* ANDN32rr */
+/* Table2260 */
+  0x0, /*  */
+  0xf3, /* BLSR32rm */
+  0xef, /* BLSMSK32rm */
+  0xe7, /* BLSI32rm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0xf4, /* BLSR32rr */
+  0xf0, /* BLSMSK32rr */
+  0xe8, /* BLSI32rr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table2276 */
+  0x137, /* BZHI32rm */
+  0x138, /* BZHI32rr */
+/* Table2278 */
+  0xc7, /* BEXTR32rm */
+  0xc8, /* BEXTR32rr */
+/* Table2280 */
+  0x3f6, /* PEXT32rm */
+  0x3f7, /* PEXT32rr */
+/* Table2282 */
+  0x4df, /* SARX32rm */
+  0x4e0, /* SARX32rr */
+/* Table2284 */
+  0x3f2, /* PDEP32rm */
+  0x3f3, /* PDEP32rr */
+/* Table2286 */
+  0x3af, /* MULX32rm */
+  0x3b0, /* MULX32rr */
+/* Table2288 */
+  0x57e, /* SHRX32rm */
+  0x57f, /* SHRX32rr */
+/* Table2290 */
+  0x556, /* SHLX32rm */
+  0x557, /* SHLX32rr */
+/* Table2292 */
+  0x98, /* ANDN64rm */
+  0x99, /* ANDN64rr */
+/* Table2294 */
+  0x0, /*  */
+  0xf5, /* BLSR64rm */
+  0xf1, /* BLSMSK64rm */
+  0xe9, /* BLSI64rm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0xf6, /* BLSR64rr */
+  0xf2, /* BLSMSK64rr */
+  0xea, /* BLSI64rr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+/* Table2310 */
+  0x139, /* BZHI64rm */
+  0x13a, /* BZHI64rr */
+/* Table2312 */
+  0xc9, /* BEXTR64rm */
+  0xca, /* BEXTR64rr */
+/* Table2314 */
+  0x3f8, /* PEXT64rm */
+  0x3f9, /* PEXT64rr */
+/* Table2316 */
+  0x4e1, /* SARX64rm */
+  0x4e2, /* SARX64rr */
+/* Table2318 */
+  0x3f4, /* PDEP64rm */
+  0x3f5, /* PDEP64rr */
+/* Table2320 */
+  0x3b1, /* MULX64rm */
+  0x3b2, /* MULX64rr */
+/* Table2322 */
+  0x580, /* SHRX64rm */
+  0x581, /* SHRX64rr */
+/* Table2324 */
+  0x558, /* SHLX64rm */
+  0x559, /* SHLX64rr */
+/* Table2326 */
+  0x4c0, /* RORX32mi */
+  0x4c1, /* RORX32ri */
+/* Table2328 */
+  0x4c2, /* RORX64mi */
+  0x4c3, /* RORX64ri */
+/* Table2330 */
+  0x0, /*  */
+  0xcf, /* BLCFILL32rm */
+  0xe3, /* BLSFILL32rm */
+  0xdf, /* BLCS32rm */
+  0x5f8, /* TZMSK32rm */
+  0xd7, /* BLCIC32rm */
+  0xeb, /* BLSIC32rm */
+  0x5c6, /* T1MSKC32rm */
+  0x0, /*  */
+  0xd0, /* BLCFILL32rr */
+  0xe4, /* BLSFILL32rr */
+  0xe0, /* BLCS32rr */
+  0x5f9, /* TZMSK32rr */
+  0xd8, /* BLCIC32rr */
+  0xec, /* BLSIC32rr */
+  0x5c7, /* T1MSKC32rr */
+/* Table2346 */
+  0x0, /*  */
+  0xdb, /* BLCMSK32rm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0xd3, /* BLCI32rm */
+  0x0, /*  */
+  0x0, /*  */
+  0xdc, /* BLCMSK32rr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0xd4, /* BLCI32rr */
+  0x0, /*  */
+/* Table2362 */
+  0x0, /*  */
+  0xd1, /* BLCFILL64rm */
+  0xe5, /* BLSFILL64rm */
+  0xe1, /* BLCS64rm */
+  0x5fa, /* TZMSK64rm */
+  0xd9, /* BLCIC64rm */
+  0xed, /* BLSIC64rm */
+  0x5c8, /* T1MSKC64rm */
+  0x0, /*  */
+  0xd2, /* BLCFILL64rr */
+  0xe6, /* BLSFILL64rr */
+  0xe2, /* BLCS64rr */
+  0x5fb, /* TZMSK64rr */
+  0xda, /* BLCIC64rr */
+  0xee, /* BLSIC64rr */
+  0x5c9, /* T1MSKC64rr */
+/* Table2378 */
+  0x0, /*  */
+  0xdd, /* BLCMSK64rm */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0xd5, /* BLCI64rm */
+  0x0, /*  */
+  0x0, /*  */
+  0xde, /* BLCMSK64rr */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0x0, /*  */
+  0xd6, /* BLCI64rr */
+  0x0, /*  */
+/* Table2394 */
+  0xcb, /* BEXTRI32mi */
+  0xcc, /* BEXTRI32ri */
+/* Table2396 */
+  0xcd, /* BEXTRI64mi */
+  0xce, /* BEXTRI64ri */
+  0x0
+};
+
+static const struct OpcodeDecision x86DisassemblerOneByteOpcodes[] = {
+ /* IC */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    11 /* Table11 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    12 /* Table12 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    23 /* Table23 */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    34 /* Table34 */
+   },
+   /* 0x17 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    35 /* Table35 */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    46 /* Table46 */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    47 /* Table47 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    59 /* Table59 */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    71 /* Table71 */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    83 /* Table83 */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    95 /* Table95 */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x60 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    100 /* Table100 */
+   },
+   /* 0x61 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    101 /* Table101 */
+   },
+   /* 0x62 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    102 /* Table102 */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    104 /* Table104 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    109 /* Table109 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    112 /* Table112 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    201 /* Table201 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    205 /* Table205 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    226 /* Table226 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    227 /* Table227 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    230 /* Table230 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    231 /* Table231 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    232 /* Table232 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    233 /* Table233 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    280 /* Table280 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    281 /* Table281 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    319 /* Table319 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    390 /* Table390 */
+   },
+   /* 0xd5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    391 /* Table391 */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    469 /* Table469 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    474 /* Table474 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    542 /* Table542 */
+   }
+  }
+ }
+,  /* IC_64BIT */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    563 /* Table563 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    585 /* Table585 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    587 /* Table587 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    593 /* Table593 */
+   }
+  }
+ }
+,  /* IC_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    609 /* Table609 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    611 /* Table611 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    613 /* Table613 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    614 /* Table614 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    615 /* Table615 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    616 /* Table616 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    618 /* Table618 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    620 /* Table620 */
+   },
+   /* 0x0e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    621 /* Table621 */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    622 /* Table622 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    624 /* Table624 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    626 /* Table626 */
+   },
+   /* 0x16 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    627 /* Table627 */
+   },
+   /* 0x17 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    628 /* Table628 */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    629 /* Table629 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    631 /* Table631 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    633 /* Table633 */
+   },
+   /* 0x1e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    634 /* Table634 */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    635 /* Table635 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    636 /* Table636 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    638 /* Table638 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    640 /* Table640 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    59 /* Table59 */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    641 /* Table641 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    643 /* Table643 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    645 /* Table645 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    71 /* Table71 */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    646 /* Table646 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    648 /* Table648 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    650 /* Table650 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    83 /* Table83 */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    651 /* Table651 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    653 /* Table653 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    655 /* Table655 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    95 /* Table95 */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    656 /* Table656 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    657 /* Table657 */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x60 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    660 /* Table660 */
+   },
+   /* 0x61 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    661 /* Table661 */
+   },
+   /* 0x62 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    662 /* Table662 */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    104 /* Table104 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    664 /* Table664 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    665 /* Table665 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    667 /* Table667 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    668 /* Table668 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    670 /* Table670 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    671 /* Table671 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    672 /* Table672 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    688 /* Table688 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    704 /* Table704 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    706 /* Table706 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    708 /* Table708 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    710 /* Table710 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    712 /* Table712 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    714 /* Table714 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    716 /* Table716 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    718 /* Table718 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    735 /* Table735 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    736 /* Table736 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    737 /* Table737 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    738 /* Table738 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    739 /* Table739 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    230 /* Table230 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    740 /* Table740 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    232 /* Table232 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    741 /* Table741 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    742 /* Table742 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    743 /* Table743 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    744 /* Table744 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    745 /* Table745 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    746 /* Table746 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    747 /* Table747 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    749 /* Table749 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    765 /* Table765 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    766 /* Table766 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    767 /* Table767 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    769 /* Table769 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    771 /* Table771 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    319 /* Table319 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    787 /* Table787 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    788 /* Table788 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    789 /* Table789 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    790 /* Table790 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    806 /* Table806 */
+   },
+   /* 0xd4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    390 /* Table390 */
+   },
+   /* 0xd5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    391 /* Table391 */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    469 /* Table469 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    822 /* Table822 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    823 /* Table823 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    824 /* Table824 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    825 /* Table825 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    826 /* Table826 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    827 /* Table827 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    828 /* Table828 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    829 /* Table829 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    845 /* Table845 */
+   }
+  }
+ }
+,  /* IC_ADSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    11 /* Table11 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    12 /* Table12 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    23 /* Table23 */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    34 /* Table34 */
+   },
+   /* 0x17 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    35 /* Table35 */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    46 /* Table46 */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    47 /* Table47 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    59 /* Table59 */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    71 /* Table71 */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    83 /* Table83 */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    95 /* Table95 */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x60 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    100 /* Table100 */
+   },
+   /* 0x61 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    101 /* Table101 */
+   },
+   /* 0x62 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    102 /* Table102 */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    104 /* Table104 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    109 /* Table109 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    112 /* Table112 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    201 /* Table201 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    205 /* Table205 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    226 /* Table226 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    227 /* Table227 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    230 /* Table230 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    231 /* Table231 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    232 /* Table232 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    233 /* Table233 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    280 /* Table280 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    281 /* Table281 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    319 /* Table319 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    390 /* Table390 */
+   },
+   /* 0xd5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    391 /* Table391 */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    861 /* Table861 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    474 /* Table474 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    542 /* Table542 */
+   }
+  }
+ }
+,  /* IC_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    11 /* Table11 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    12 /* Table12 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    23 /* Table23 */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    34 /* Table34 */
+   },
+   /* 0x17 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    35 /* Table35 */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    46 /* Table46 */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    47 /* Table47 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    59 /* Table59 */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    71 /* Table71 */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    83 /* Table83 */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    95 /* Table95 */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x60 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    100 /* Table100 */
+   },
+   /* 0x61 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    101 /* Table101 */
+   },
+   /* 0x62 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    102 /* Table102 */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    104 /* Table104 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    109 /* Table109 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    112 /* Table112 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    201 /* Table201 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    205 /* Table205 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    226 /* Table226 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    227 /* Table227 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    230 /* Table230 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    231 /* Table231 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    232 /* Table232 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    233 /* Table233 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    280 /* Table280 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    281 /* Table281 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    319 /* Table319 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    390 /* Table390 */
+   },
+   /* 0xd5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    391 /* Table391 */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    469 /* Table469 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    474 /* Table474 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    542 /* Table542 */
+   }
+  }
+ }
+,  /* IC_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    11 /* Table11 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    12 /* Table12 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    23 /* Table23 */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    34 /* Table34 */
+   },
+   /* 0x17 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    35 /* Table35 */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    46 /* Table46 */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    47 /* Table47 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    59 /* Table59 */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    71 /* Table71 */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    83 /* Table83 */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    95 /* Table95 */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    96 /* Table96 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    97 /* Table97 */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    98 /* Table98 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    99 /* Table99 */
+   },
+   /* 0x60 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    100 /* Table100 */
+   },
+   /* 0x61 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    101 /* Table101 */
+   },
+   /* 0x62 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    102 /* Table102 */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    104 /* Table104 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    109 /* Table109 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    112 /* Table112 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    201 /* Table201 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    205 /* Table205 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    222 /* Table222 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    226 /* Table226 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    227 /* Table227 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    230 /* Table230 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    231 /* Table231 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    232 /* Table232 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    233 /* Table233 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    280 /* Table280 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    281 /* Table281 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    319 /* Table319 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    390 /* Table390 */
+   },
+   /* 0xd5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    391 /* Table391 */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    469 /* Table469 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    474 /* Table474 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    542 /* Table542 */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    862 /* Table862 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    864 /* Table864 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    866 /* Table866 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    867 /* Table867 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    869 /* Table869 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    871 /* Table871 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    872 /* Table872 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    874 /* Table874 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    876 /* Table876 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    877 /* Table877 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    879 /* Table879 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    881 /* Table881 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    882 /* Table882 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    884 /* Table884 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    886 /* Table886 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    887 /* Table887 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    889 /* Table889 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    891 /* Table891 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    892 /* Table892 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    894 /* Table894 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    896 /* Table896 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    897 /* Table897 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    899 /* Table899 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    901 /* Table901 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    902 /* Table902 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    904 /* Table904 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    906 /* Table906 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    908 /* Table908 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    924 /* Table924 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    940 /* Table940 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    942 /* Table942 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    944 /* Table944 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    946 /* Table946 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    948 /* Table948 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    950 /* Table950 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    952 /* Table952 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    955 /* Table955 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    956 /* Table956 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    957 /* Table957 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    958 /* Table958 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    959 /* Table959 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    960 /* Table960 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    961 /* Table961 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    962 /* Table962 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    963 /* Table963 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    964 /* Table964 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    966 /* Table966 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    982 /* Table982 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    998 /* Table998 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    999 /* Table999 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1000 /* Table1000 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1001 /* Table1001 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1017 /* Table1017 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1033 /* Table1033 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1049 /* Table1049 */
+   }
+  }
+ }
+,  /* IC_64BIT_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    609 /* Table609 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    611 /* Table611 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    613 /* Table613 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    616 /* Table616 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    618 /* Table618 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    620 /* Table620 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    622 /* Table622 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    624 /* Table624 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    626 /* Table626 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    629 /* Table629 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    631 /* Table631 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    633 /* Table633 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    636 /* Table636 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    638 /* Table638 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    640 /* Table640 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    641 /* Table641 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    643 /* Table643 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    645 /* Table645 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    646 /* Table646 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    648 /* Table648 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    650 /* Table650 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    651 /* Table651 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    653 /* Table653 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    655 /* Table655 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1065 /* Table1065 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    665 /* Table665 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    668 /* Table668 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    670 /* Table670 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    671 /* Table671 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    672 /* Table672 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    688 /* Table688 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    704 /* Table704 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    706 /* Table706 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    708 /* Table708 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    710 /* Table710 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    712 /* Table712 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    714 /* Table714 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    716 /* Table716 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    718 /* Table718 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    734 /* Table734 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    735 /* Table735 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    736 /* Table736 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    737 /* Table737 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    738 /* Table738 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    739 /* Table739 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1066 /* Table1066 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1067 /* Table1067 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    742 /* Table742 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    743 /* Table743 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    744 /* Table744 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    745 /* Table745 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    746 /* Table746 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    747 /* Table747 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    748 /* Table748 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    749 /* Table749 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    765 /* Table765 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    766 /* Table766 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    767 /* Table767 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    769 /* Table769 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    771 /* Table771 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    787 /* Table787 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    788 /* Table788 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    789 /* Table789 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    790 /* Table790 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    806 /* Table806 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    822 /* Table822 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    823 /* Table823 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    824 /* Table824 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    825 /* Table825 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    826 /* Table826 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    827 /* Table827 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    828 /* Table828 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    829 /* Table829 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1068 /* Table1068 */
+   }
+  }
+ }
+,  /* IC_64BIT_ADSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    563 /* Table563 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    585 /* Table585 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    587 /* Table587 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1084 /* Table1084 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    593 /* Table593 */
+   }
+  }
+ }
+,  /* IC_64BIT_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    563 /* Table563 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    585 /* Table585 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    587 /* Table587 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    593 /* Table593 */
+   }
+  }
+ }
+,  /* IC_64BIT_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    3 /* Table3 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    7 /* Table7 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    10 /* Table10 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    15 /* Table15 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    19 /* Table19 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    22 /* Table22 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    26 /* Table26 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    30 /* Table30 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    33 /* Table33 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    38 /* Table38 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    42 /* Table42 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    45 /* Table45 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    50 /* Table50 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    54 /* Table54 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    57 /* Table57 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    62 /* Table62 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    66 /* Table66 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    69 /* Table69 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    74 /* Table74 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    78 /* Table78 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    81 /* Table81 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    86 /* Table86 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    90 /* Table90 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    93 /* Table93 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    110 /* Table110 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    113 /* Table113 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    151 /* Table151 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    167 /* Table167 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    185 /* Table185 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    189 /* Table189 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    193 /* Table193 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    197 /* Table197 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    199 /* Table199 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    563 /* Table563 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    203 /* Table203 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    581 /* Table581 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    223 /* Table223 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    224 /* Table224 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    585 /* Table585 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    587 /* Table587 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    235 /* Table235 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    237 /* Table237 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    239 /* Table239 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    241 /* Table241 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    243 /* Table243 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    245 /* Table245 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    247 /* Table247 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    264 /* Table264 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    302 /* Table302 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    320 /* Table320 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    321 /* Table321 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    325 /* Table325 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    342 /* Table342 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    374 /* Table374 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    504 /* Table504 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    593 /* Table593 */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    862 /* Table862 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    864 /* Table864 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    866 /* Table866 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    867 /* Table867 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    869 /* Table869 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    871 /* Table871 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    872 /* Table872 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    874 /* Table874 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    876 /* Table876 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    877 /* Table877 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    879 /* Table879 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    881 /* Table881 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    882 /* Table882 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    884 /* Table884 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    886 /* Table886 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    887 /* Table887 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    889 /* Table889 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    891 /* Table891 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    892 /* Table892 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    894 /* Table894 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    896 /* Table896 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    897 /* Table897 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    899 /* Table899 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    901 /* Table901 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    902 /* Table902 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    904 /* Table904 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    906 /* Table906 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    908 /* Table908 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    924 /* Table924 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    940 /* Table940 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    942 /* Table942 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    944 /* Table944 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    946 /* Table946 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    948 /* Table948 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    950 /* Table950 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    952 /* Table952 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    955 /* Table955 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    956 /* Table956 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    957 /* Table957 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    958 /* Table958 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    959 /* Table959 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    960 /* Table960 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    961 /* Table961 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    962 /* Table962 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    963 /* Table963 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    964 /* Table964 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    966 /* Table966 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    982 /* Table982 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    998 /* Table998 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    999 /* Table999 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1000 /* Table1000 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1001 /* Table1001 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1017 /* Table1017 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1033 /* Table1033 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1049 /* Table1049 */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    862 /* Table862 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    864 /* Table864 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    866 /* Table866 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    867 /* Table867 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    869 /* Table869 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    871 /* Table871 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    872 /* Table872 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    874 /* Table874 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    876 /* Table876 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    877 /* Table877 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    879 /* Table879 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    881 /* Table881 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    882 /* Table882 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    884 /* Table884 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    886 /* Table886 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    887 /* Table887 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    889 /* Table889 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    891 /* Table891 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    892 /* Table892 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    894 /* Table894 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    896 /* Table896 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    897 /* Table897 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    899 /* Table899 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    901 /* Table901 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    559 /* Table559 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    560 /* Table560 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    902 /* Table902 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    561 /* Table561 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    904 /* Table904 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    906 /* Table906 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    116 /* Table116 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    118 /* Table118 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    908 /* Table908 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    924 /* Table924 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    940 /* Table940 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    942 /* Table942 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    944 /* Table944 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    946 /* Table946 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    948 /* Table948 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    950 /* Table950 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    952 /* Table952 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    565 /* Table565 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    955 /* Table955 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    956 /* Table956 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    225 /* Table225 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    582 /* Table582 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    583 /* Table583 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    957 /* Table957 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    958 /* Table958 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    959 /* Table959 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    960 /* Table960 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    961 /* Table961 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    962 /* Table962 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    963 /* Table963 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    964 /* Table964 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    966 /* Table966 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    588 /* Table588 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    589 /* Table589 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    282 /* Table282 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    284 /* Table284 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    982 /* Table982 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    998 /* Table998 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    999 /* Table999 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1000 /* Table1000 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1001 /* Table1001 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1017 /* Table1017 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    471 /* Table471 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    473 /* Table473 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    592 /* Table592 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    475 /* Table475 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    476 /* Table476 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    479 /* Table479 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    481 /* Table481 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1033 /* Table1033 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1049 /* Table1049 */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1 /* Table1 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    862 /* Table862 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    5 /* Table5 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    864 /* Table864 */
+   },
+   /* 0x04 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    9 /* Table9 */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    866 /* Table866 */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    13 /* Table13 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    867 /* Table867 */
+   },
+   /* 0x0a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    17 /* Table17 */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    869 /* Table869 */
+   },
+   /* 0x0c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    21 /* Table21 */
+   },
+   /* 0x0d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    871 /* Table871 */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    24 /* Table24 */
+   },
+   /* 0x11 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    872 /* Table872 */
+   },
+   /* 0x12 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    28 /* Table28 */
+   },
+   /* 0x13 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    874 /* Table874 */
+   },
+   /* 0x14 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    32 /* Table32 */
+   },
+   /* 0x15 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    876 /* Table876 */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    36 /* Table36 */
+   },
+   /* 0x19 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    877 /* Table877 */
+   },
+   /* 0x1a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    40 /* Table40 */
+   },
+   /* 0x1b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    879 /* Table879 */
+   },
+   /* 0x1c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    44 /* Table44 */
+   },
+   /* 0x1d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    881 /* Table881 */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    48 /* Table48 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    882 /* Table882 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    52 /* Table52 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    884 /* Table884 */
+   },
+   /* 0x24 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    56 /* Table56 */
+   },
+   /* 0x25 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    886 /* Table886 */
+   },
+   /* 0x26 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    58 /* Table58 */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    60 /* Table60 */
+   },
+   /* 0x29 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    887 /* Table887 */
+   },
+   /* 0x2a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    64 /* Table64 */
+   },
+   /* 0x2b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    889 /* Table889 */
+   },
+   /* 0x2c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    68 /* Table68 */
+   },
+   /* 0x2d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    891 /* Table891 */
+   },
+   /* 0x2e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    70 /* Table70 */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    72 /* Table72 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    892 /* Table892 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    76 /* Table76 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    894 /* Table894 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    80 /* Table80 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    896 /* Table896 */
+   },
+   /* 0x36 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    82 /* Table82 */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    84 /* Table84 */
+   },
+   /* 0x39 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    897 /* Table897 */
+   },
+   /* 0x3a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    88 /* Table88 */
+   },
+   /* 0x3b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    899 /* Table899 */
+   },
+   /* 0x3c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    92 /* Table92 */
+   },
+   /* 0x3d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    901 /* Table901 */
+   },
+   /* 0x3e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    94 /* Table94 */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    558 /* Table558 */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x51 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x52 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x53 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x54 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x55 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x56 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x57 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    658 /* Table658 */
+   },
+   /* 0x58 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x59 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x5f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    659 /* Table659 */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    902 /* Table902 */
+   },
+   /* 0x64 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    106 /* Table106 */
+   },
+   /* 0x65 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    107 /* Table107 */
+   },
+   /* 0x66 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    108 /* Table108 */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1065 /* Table1065 */
+   },
+   /* 0x69 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    904 /* Table904 */
+   },
+   /* 0x6a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    562 /* Table562 */
+   },
+   /* 0x6b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    906 /* Table906 */
+   },
+   /* 0x6c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    115 /* Table115 */
+   },
+   /* 0x6d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    670 /* Table670 */
+   },
+   /* 0x6e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    117 /* Table117 */
+   },
+   /* 0x6f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    671 /* Table671 */
+   },
+   /* 0x70 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    119 /* Table119 */
+   },
+   /* 0x71 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    120 /* Table120 */
+   },
+   /* 0x72 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    121 /* Table121 */
+   },
+   /* 0x73 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    122 /* Table122 */
+   },
+   /* 0x74 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    123 /* Table123 */
+   },
+   /* 0x75 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    124 /* Table124 */
+   },
+   /* 0x76 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    125 /* Table125 */
+   },
+   /* 0x77 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    126 /* Table126 */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    127 /* Table127 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    128 /* Table128 */
+   },
+   /* 0x7a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    129 /* Table129 */
+   },
+   /* 0x7b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    130 /* Table130 */
+   },
+   /* 0x7c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    131 /* Table131 */
+   },
+   /* 0x7d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    132 /* Table132 */
+   },
+   /* 0x7e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    133 /* Table133 */
+   },
+   /* 0x7f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    134 /* Table134 */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    135 /* Table135 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    908 /* Table908 */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    924 /* Table924 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    183 /* Table183 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    940 /* Table940 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    187 /* Table187 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    942 /* Table942 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    191 /* Table191 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    944 /* Table944 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    195 /* Table195 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    946 /* Table946 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    948 /* Table948 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    950 /* Table950 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    952 /* Table952 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    718 /* Table718 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    221 /* Table221 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    954 /* Table954 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    955 /* Table955 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    956 /* Table956 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    737 /* Table737 */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    738 /* Table738 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    739 /* Table739 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    228 /* Table228 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    229 /* Table229 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    584 /* Table584 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    957 /* Table957 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    586 /* Table586 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    958 /* Table958 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    234 /* Table234 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    959 /* Table959 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    236 /* Table236 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    960 /* Table960 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    238 /* Table238 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    961 /* Table961 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    240 /* Table240 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    962 /* Table962 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    242 /* Table242 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    963 /* Table963 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    244 /* Table244 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    964 /* Table964 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    246 /* Table246 */
+   },
+   /* 0xb8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    965 /* Table965 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    248 /* Table248 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    966 /* Table966 */
+   },
+   /* 0xc2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    765 /* Table765 */
+   },
+   /* 0xc3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    766 /* Table766 */
+   },
+   /* 0xc4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    767 /* Table767 */
+   },
+   /* 0xc5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    769 /* Table769 */
+   },
+   /* 0xc6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    286 /* Table286 */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    982 /* Table982 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    318 /* Table318 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    590 /* Table590 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    998 /* Table998 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    999 /* Table999 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    322 /* Table322 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    323 /* Table323 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    324 /* Table324 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1000 /* Table1000 */
+   },
+   /* 0xd0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    326 /* Table326 */
+   },
+   /* 0xd1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1001 /* Table1001 */
+   },
+   /* 0xd2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    358 /* Table358 */
+   },
+   /* 0xd3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1017 /* Table1017 */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    392 /* Table392 */
+   },
+   /* 0xd7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    393 /* Table393 */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    394 /* Table394 */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    466 /* Table466 */
+   },
+   /* 0xe1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    467 /* Table467 */
+   },
+   /* 0xe2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    468 /* Table468 */
+   },
+   /* 0xe3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    591 /* Table591 */
+   },
+   /* 0xe4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    470 /* Table470 */
+   },
+   /* 0xe5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    822 /* Table822 */
+   },
+   /* 0xe6 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    472 /* Table472 */
+   },
+   /* 0xe7 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    823 /* Table823 */
+   },
+   /* 0xe8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    824 /* Table824 */
+   },
+   /* 0xe9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    825 /* Table825 */
+   },
+   /* 0xea */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    826 /* Table826 */
+   },
+   /* 0xeb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    477 /* Table477 */
+   },
+   /* 0xec */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    478 /* Table478 */
+   },
+   /* 0xed */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    827 /* Table827 */
+   },
+   /* 0xee */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    480 /* Table480 */
+   },
+   /* 0xef */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    828 /* Table828 */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    482 /* Table482 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    483 /* Table483 */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    484 /* Table484 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    485 /* Table485 */
+   },
+   /* 0xf4 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    486 /* Table486 */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    487 /* Table487 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    488 /* Table488 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1033 /* Table1033 */
+   },
+   /* 0xf8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    520 /* Table520 */
+   },
+   /* 0xf9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    521 /* Table521 */
+   },
+   /* 0xfa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    522 /* Table522 */
+   },
+   /* 0xfb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    523 /* Table523 */
+   },
+   /* 0xfc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    524 /* Table524 */
+   },
+   /* 0xfd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    525 /* Table525 */
+   },
+   /* 0xfe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    526 /* Table526 */
+   },
+   /* 0xff */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1085 /* Table1085 */
+   }
+  }
+ }
+,  /* IC_XD_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+, };
+static const uint8_t index_x86DisassemblerOneByteOpcodes[] = {
+1, 2, 3, 4, 5, 6, 0, 0, 7, 8, 9, 10, 11, 0, 0, 12, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
+static const struct OpcodeDecision x86DisassemblerTwoByteOpcodes[] = {
+ /* IC */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1117 /* Table1117 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1201 /* Table1201 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1203 /* Table1203 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1205 /* Table1205 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1207 /* Table1207 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1248 /* Table1248 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1250 /* Table1250 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1300 /* Table1300 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1301 /* Table1301 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1302 /* Table1302 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1453 /* Table1453 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1454 /* Table1454 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1515 /* Table1515 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1517 /* Table1517 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1527 /* Table1527 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1544 /* Table1544 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1515 /* Table1515 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1517 /* Table1517 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1527 /* Table1527 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1633 /* Table1633 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1649 /* Table1649 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1721 /* Table1721 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1723 /* Table1723 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1725 /* Table1725 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1201 /* Table1201 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1203 /* Table1203 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1205 /* Table1205 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1207 /* Table1207 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1727 /* Table1727 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1729 /* Table1729 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1731 /* Table1731 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1733 /* Table1733 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1735 /* Table1735 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1737 /* Table1737 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1739 /* Table1739 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1741 /* Table1741 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1743 /* Table1743 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1745 /* Table1745 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1747 /* Table1747 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1749 /* Table1749 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1751 /* Table1751 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1753 /* Table1753 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1755 /* Table1755 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1757 /* Table1757 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1248 /* Table1248 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1250 /* Table1250 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1759 /* Table1759 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1760 /* Table1760 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1761 /* Table1761 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1762 /* Table1762 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1763 /* Table1763 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1764 /* Table1764 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1765 /* Table1765 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1766 /* Table1766 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1767 /* Table1767 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1768 /* Table1768 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1769 /* Table1769 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1770 /* Table1770 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1771 /* Table1771 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1772 /* Table1772 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1773 /* Table1773 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1774 /* Table1774 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1775 /* Table1775 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1776 /* Table1776 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1302 /* Table1302 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1777 /* Table1777 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1779 /* Table1779 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1781 /* Table1781 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1783 /* Table1783 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1784 /* Table1784 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1785 /* Table1785 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1787 /* Table1787 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1789 /* Table1789 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1791 /* Table1791 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1793 /* Table1793 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1795 /* Table1795 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1797 /* Table1797 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1799 /* Table1799 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1801 /* Table1801 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1803 /* Table1803 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1805 /* Table1805 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1821 /* Table1821 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1823 /* Table1823 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1825 /* Table1825 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1827 /* Table1827 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1829 /* Table1829 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1831 /* Table1831 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_ADSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1117 /* Table1117 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1201 /* Table1201 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1203 /* Table1203 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1205 /* Table1205 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1207 /* Table1207 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1248 /* Table1248 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1250 /* Table1250 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1300 /* Table1300 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1301 /* Table1301 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1302 /* Table1302 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1453 /* Table1453 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1454 /* Table1454 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1515 /* Table1515 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1517 /* Table1517 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1527 /* Table1527 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1117 /* Table1117 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1201 /* Table1201 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1203 /* Table1203 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1205 /* Table1205 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1207 /* Table1207 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1248 /* Table1248 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1250 /* Table1250 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1300 /* Table1300 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1301 /* Table1301 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1302 /* Table1302 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1453 /* Table1453 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1454 /* Table1454 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1515 /* Table1515 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1517 /* Table1517 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1527 /* Table1527 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1117 /* Table1117 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1201 /* Table1201 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1203 /* Table1203 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1205 /* Table1205 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1207 /* Table1207 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1248 /* Table1248 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1250 /* Table1250 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1300 /* Table1300 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1301 /* Table1301 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1302 /* Table1302 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1453 /* Table1453 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1454 /* Table1454 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1847 /* Table1847 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1849 /* Table1849 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1851 /* Table1851 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XS_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1867 /* Table1867 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1869 /* Table1869 */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1871 /* Table1871 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1887 /* Table1887 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1959 /* Table1959 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1961 /* Table1961 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1963 /* Table1963 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1964 /* Table1964 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1965 /* Table1965 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1967 /* Table1967 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1969 /* Table1969 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1971 /* Table1971 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1973 /* Table1973 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1975 /* Table1975 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1977 /* Table1977 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1979 /* Table1979 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1981 /* Table1981 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1983 /* Table1983 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1985 /* Table1985 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1987 /* Table1987 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1989 /* Table1989 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1991 /* Table1991 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1993 /* Table1993 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1995 /* Table1995 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1997 /* Table1997 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1999 /* Table1999 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2001 /* Table2001 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2003 /* Table2003 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2005 /* Table2005 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2007 /* Table2007 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2009 /* Table2009 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2025 /* Table2025 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2027 /* Table2027 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2029 /* Table2029 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2031 /* Table2031 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2033 /* Table2033 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2035 /* Table2035 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2037 /* Table2037 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2039 /* Table2039 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2041 /* Table2041 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2057 /* Table2057 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2059 /* Table2059 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2061 /* Table2061 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2063 /* Table2063 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2065 /* Table2065 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2067 /* Table2067 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2069 /* Table2069 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1633 /* Table1633 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    2086 /* Table2086 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1721 /* Table1721 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1723 /* Table1723 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1725 /* Table1725 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1727 /* Table1727 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1729 /* Table1729 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1731 /* Table1731 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1733 /* Table1733 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1735 /* Table1735 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1737 /* Table1737 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1739 /* Table1739 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1741 /* Table1741 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1743 /* Table1743 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1745 /* Table1745 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1747 /* Table1747 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1749 /* Table1749 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1751 /* Table1751 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1753 /* Table1753 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1755 /* Table1755 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1757 /* Table1757 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1759 /* Table1759 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1760 /* Table1760 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1761 /* Table1761 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1762 /* Table1762 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1763 /* Table1763 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1764 /* Table1764 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1765 /* Table1765 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1766 /* Table1766 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1767 /* Table1767 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1768 /* Table1768 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1769 /* Table1769 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1770 /* Table1770 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1771 /* Table1771 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1772 /* Table1772 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1773 /* Table1773 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1774 /* Table1774 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1775 /* Table1775 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1776 /* Table1776 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1777 /* Table1777 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1779 /* Table1779 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1781 /* Table1781 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1783 /* Table1783 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1784 /* Table1784 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1785 /* Table1785 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1787 /* Table1787 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1789 /* Table1789 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1791 /* Table1791 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1793 /* Table1793 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1795 /* Table1795 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1797 /* Table1797 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1799 /* Table1799 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1801 /* Table1801 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1803 /* Table1803 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1805 /* Table1805 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1821 /* Table1821 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1823 /* Table1823 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1825 /* Table1825 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1827 /* Table1827 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1829 /* Table1829 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1831 /* Table1831 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_ADSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1544 /* Table1544 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1515 /* Table1515 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1517 /* Table1517 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1527 /* Table1527 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1544 /* Table1544 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1462 /* Table1462 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1515 /* Table1515 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1517 /* Table1517 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1527 /* Table1527 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1101 /* Table1101 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1544 /* Table1544 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1189 /* Table1189 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1191 /* Table1191 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1195 /* Table1195 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1214 /* Table1214 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1216 /* Table1216 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1218 /* Table1218 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1220 /* Table1220 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1222 /* Table1222 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1224 /* Table1224 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1226 /* Table1226 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1228 /* Table1228 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1230 /* Table1230 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1232 /* Table1232 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1234 /* Table1234 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1236 /* Table1236 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1238 /* Table1238 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1240 /* Table1240 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1242 /* Table1242 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1244 /* Table1244 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1246 /* Table1246 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1303 /* Table1303 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1305 /* Table1305 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1307 /* Table1307 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1456 /* Table1456 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1458 /* Table1458 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1460 /* Table1460 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2158 /* Table2158 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1478 /* Table1478 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1482 /* Table1482 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1484 /* Table1484 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1486 /* Table1486 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1488 /* Table1488 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1490 /* Table1490 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1492 /* Table1492 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1494 /* Table1494 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1497 /* Table1497 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1513 /* Table1513 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1847 /* Table1847 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1849 /* Table1849 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1519 /* Table1519 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1521 /* Table1521 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1525 /* Table1525 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1851 /* Table1851 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1543 /* Table1543 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_XS_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1867 /* Table1867 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1869 /* Table1869 */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1871 /* Table1871 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1887 /* Table1887 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1959 /* Table1959 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1961 /* Table1961 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1963 /* Table1963 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1964 /* Table1964 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1965 /* Table1965 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1967 /* Table1967 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1969 /* Table1969 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1971 /* Table1971 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1973 /* Table1973 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1975 /* Table1975 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1977 /* Table1977 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1979 /* Table1979 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1981 /* Table1981 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1983 /* Table1983 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1985 /* Table1985 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1987 /* Table1987 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1989 /* Table1989 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1991 /* Table1991 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1993 /* Table1993 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1995 /* Table1995 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1997 /* Table1997 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1999 /* Table1999 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2001 /* Table2001 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2003 /* Table2003 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2005 /* Table2005 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2007 /* Table2007 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2174 /* Table2174 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2025 /* Table2025 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2027 /* Table2027 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2029 /* Table2029 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2031 /* Table2031 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2033 /* Table2033 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2035 /* Table2035 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2037 /* Table2037 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2039 /* Table2039 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2041 /* Table2041 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2057 /* Table2057 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2190 /* Table2190 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2192 /* Table2192 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2063 /* Table2063 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2065 /* Table2065 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2067 /* Table2067 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2194 /* Table2194 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1871 /* Table1871 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1887 /* Table1887 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1959 /* Table1959 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1961 /* Table1961 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1963 /* Table1963 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1199 /* Table1199 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1964 /* Table1964 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1965 /* Table1965 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1967 /* Table1967 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1969 /* Table1969 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1971 /* Table1971 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1973 /* Table1973 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1975 /* Table1975 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1977 /* Table1977 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1979 /* Table1979 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1981 /* Table1981 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1983 /* Table1983 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1985 /* Table1985 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1987 /* Table1987 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1989 /* Table1989 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1991 /* Table1991 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1993 /* Table1993 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1995 /* Table1995 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1252 /* Table1252 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1253 /* Table1253 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1254 /* Table1254 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1255 /* Table1255 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1256 /* Table1256 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1257 /* Table1257 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1258 /* Table1258 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1259 /* Table1259 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1260 /* Table1260 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1261 /* Table1261 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1262 /* Table1262 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1263 /* Table1263 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1264 /* Table1264 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1265 /* Table1265 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1266 /* Table1266 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1267 /* Table1267 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1628 /* Table1628 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1629 /* Table1629 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1997 /* Table1997 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1999 /* Table1999 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2001 /* Table2001 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1631 /* Table1631 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1632 /* Table1632 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2003 /* Table2003 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2005 /* Table2005 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2007 /* Table2007 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2009 /* Table2009 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2025 /* Table2025 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2027 /* Table2027 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2029 /* Table2029 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2031 /* Table2031 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2033 /* Table2033 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2035 /* Table2035 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2037 /* Table2037 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2039 /* Table2039 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2041 /* Table2041 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2057 /* Table2057 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2059 /* Table2059 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2061 /* Table2061 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2063 /* Table2063 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2065 /* Table2065 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2067 /* Table2067 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2069 /* Table2069 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    1871 /* Table1871 */
+   },
+   /* 0x01 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1887 /* Table1887 */
+   },
+   /* 0x02 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1959 /* Table1959 */
+   },
+   /* 0x03 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1961 /* Table1961 */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1193 /* Table1193 */
+   },
+   /* 0x06 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1194 /* Table1194 */
+   },
+   /* 0x07 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1963 /* Table1963 */
+   },
+   /* 0x08 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1196 /* Table1196 */
+   },
+   /* 0x09 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1197 /* Table1197 */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1198 /* Table1198 */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1725 /* Table1725 */
+   },
+   /* 0x20 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1616 /* Table1616 */
+   },
+   /* 0x21 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1618 /* Table1618 */
+   },
+   /* 0x22 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1620 /* Table1620 */
+   },
+   /* 0x23 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1622 /* Table1622 */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1209 /* Table1209 */
+   },
+   /* 0x31 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1210 /* Table1210 */
+   },
+   /* 0x32 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1211 /* Table1211 */
+   },
+   /* 0x33 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1212 /* Table1212 */
+   },
+   /* 0x34 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1213 /* Table1213 */
+   },
+   /* 0x35 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1964 /* Table1964 */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1215 /* Table1215 */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1965 /* Table1965 */
+   },
+   /* 0x41 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1967 /* Table1967 */
+   },
+   /* 0x42 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1969 /* Table1969 */
+   },
+   /* 0x43 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1971 /* Table1971 */
+   },
+   /* 0x44 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1973 /* Table1973 */
+   },
+   /* 0x45 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1975 /* Table1975 */
+   },
+   /* 0x46 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1977 /* Table1977 */
+   },
+   /* 0x47 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1979 /* Table1979 */
+   },
+   /* 0x48 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1981 /* Table1981 */
+   },
+   /* 0x49 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1983 /* Table1983 */
+   },
+   /* 0x4a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1985 /* Table1985 */
+   },
+   /* 0x4b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1987 /* Table1987 */
+   },
+   /* 0x4c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1989 /* Table1989 */
+   },
+   /* 0x4d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1991 /* Table1991 */
+   },
+   /* 0x4e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1993 /* Table1993 */
+   },
+   /* 0x4f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1995 /* Table1995 */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1624 /* Table1624 */
+   },
+   /* 0x79 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1626 /* Table1626 */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1759 /* Table1759 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1760 /* Table1760 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1761 /* Table1761 */
+   },
+   /* 0x83 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1762 /* Table1762 */
+   },
+   /* 0x84 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1763 /* Table1763 */
+   },
+   /* 0x85 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1764 /* Table1764 */
+   },
+   /* 0x86 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1765 /* Table1765 */
+   },
+   /* 0x87 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1766 /* Table1766 */
+   },
+   /* 0x88 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1767 /* Table1767 */
+   },
+   /* 0x89 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1768 /* Table1768 */
+   },
+   /* 0x8a */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1769 /* Table1769 */
+   },
+   /* 0x8b */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1770 /* Table1770 */
+   },
+   /* 0x8c */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1771 /* Table1771 */
+   },
+   /* 0x8d */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1772 /* Table1772 */
+   },
+   /* 0x8e */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1773 /* Table1773 */
+   },
+   /* 0x8f */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1774 /* Table1774 */
+   },
+   /* 0x90 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1268 /* Table1268 */
+   },
+   /* 0x91 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1270 /* Table1270 */
+   },
+   /* 0x92 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1272 /* Table1272 */
+   },
+   /* 0x93 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1274 /* Table1274 */
+   },
+   /* 0x94 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1276 /* Table1276 */
+   },
+   /* 0x95 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1278 /* Table1278 */
+   },
+   /* 0x96 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1280 /* Table1280 */
+   },
+   /* 0x97 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1282 /* Table1282 */
+   },
+   /* 0x98 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1284 /* Table1284 */
+   },
+   /* 0x99 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1286 /* Table1286 */
+   },
+   /* 0x9a */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1288 /* Table1288 */
+   },
+   /* 0x9b */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1290 /* Table1290 */
+   },
+   /* 0x9c */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1292 /* Table1292 */
+   },
+   /* 0x9d */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1294 /* Table1294 */
+   },
+   /* 0x9e */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1296 /* Table1296 */
+   },
+   /* 0x9f */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1298 /* Table1298 */
+   },
+   /* 0xa0 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1775 /* Table1775 */
+   },
+   /* 0xa1 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1776 /* Table1776 */
+   },
+   /* 0xa2 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1630 /* Table1630 */
+   },
+   /* 0xa3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1997 /* Table1997 */
+   },
+   /* 0xa4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1999 /* Table1999 */
+   },
+   /* 0xa5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2001 /* Table2001 */
+   },
+   /* 0xa6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1309 /* Table1309 */
+   },
+   /* 0xa7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITMISC,
+    1381 /* Table1381 */
+   },
+   /* 0xa8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1783 /* Table1783 */
+   },
+   /* 0xa9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1784 /* Table1784 */
+   },
+   /* 0xaa */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1455 /* Table1455 */
+   },
+   /* 0xab */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2003 /* Table2003 */
+   },
+   /* 0xac */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2005 /* Table2005 */
+   },
+   /* 0xad */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2007 /* Table2007 */
+   },
+   /* 0xae */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2009 /* Table2009 */
+   },
+   /* 0xaf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2025 /* Table2025 */
+   },
+   /* 0xb0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1480 /* Table1480 */
+   },
+   /* 0xb1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2027 /* Table2027 */
+   },
+   /* 0xb2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2029 /* Table2029 */
+   },
+   /* 0xb3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2031 /* Table2031 */
+   },
+   /* 0xb4 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2033 /* Table2033 */
+   },
+   /* 0xb5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2035 /* Table2035 */
+   },
+   /* 0xb6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2037 /* Table2037 */
+   },
+   /* 0xb7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2039 /* Table2039 */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    1496 /* Table1496 */
+   },
+   /* 0xba */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2041 /* Table2041 */
+   },
+   /* 0xbb */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2057 /* Table2057 */
+   },
+   /* 0xbc */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2059 /* Table2059 */
+   },
+   /* 0xbd */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2061 /* Table2061 */
+   },
+   /* 0xbe */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2063 /* Table2063 */
+   },
+   /* 0xbf */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2065 /* Table2065 */
+   },
+   /* 0xc0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    1523 /* Table1523 */
+   },
+   /* 0xc1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2067 /* Table2067 */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2210 /* Table2210 */
+   },
+   /* 0xc8 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xc9 */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xca */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcb */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcc */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcd */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xce */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xcf */
+   { /* struct ModRMDecision */
+    MODRM_ONEENTRY,
+    2085 /* Table2085 */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XD_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+, };
+static const uint8_t index_x86DisassemblerTwoByteOpcodes[] = {
+1, 2, 3, 4, 5, 6, 0, 7, 8, 9, 10, 11, 12, 0, 13, 14, 15, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
+static const struct OpcodeDecision x86DisassemblerThreeByte38Opcodes[] = {
+ /* IC */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2230 /* Table2230 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2232 /* Table2232 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2234 /* Table2234 */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2236 /* Table2236 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2238 /* Table2238 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2240 /* Table2240 */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_ADSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2242 /* Table2242 */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2244 /* Table2244 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2246 /* Table2246 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2248 /* Table2248 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2250 /* Table2250 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2252 /* Table2252 */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2236 /* Table2236 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2238 /* Table2238 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2240 /* Table2240 */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_ADSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2226 /* Table2226 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2228 /* Table2228 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2242 /* Table2242 */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2244 /* Table2244 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2246 /* Table2246 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2254 /* Table2254 */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2244 /* Table2244 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2246 /* Table2246 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_64BIT_REXW_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2248 /* Table2248 */
+   },
+   /* 0x81 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2250 /* Table2250 */
+   },
+   /* 0x82 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2252 /* Table2252 */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2244 /* Table2244 */
+   },
+   /* 0xf1 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2246 /* Table2246 */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2256 /* Table2256 */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2258 /* Table2258 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2260 /* Table2260 */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2276 /* Table2276 */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2278 /* Table2278 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2280 /* Table2280 */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2282 /* Table2282 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2284 /* Table2284 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2286 /* Table2286 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2288 /* Table2288 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2290 /* Table2290 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_W */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2292 /* Table2292 */
+   },
+   /* 0xf3 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITREG,
+    2294 /* Table2294 */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2310 /* Table2310 */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2312 /* Table2312 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_W_XS */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2314 /* Table2314 */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2316 /* Table2316 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_W_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2318 /* Table2318 */
+   },
+   /* 0xf6 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2320 /* Table2320 */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2322 /* Table2322 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_W_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2324 /* Table2324 */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XD_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+, };
+static const uint8_t index_x86DisassemblerThreeByte38Opcodes[] = {
+1, 2, 3, 4, 5, 6, 0, 0, 7, 8, 9, 10, 11, 0, 0, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
+static const struct OpcodeDecision x86DisassemblerThreeByte3AOpcodes[] = {
+ /* IC_VEX_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2326 /* Table2326 */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_VEX_W_XD */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* struct ModRMDecision */
+    MODRM_SPLITRM,
+    2328 /* Table2328 */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+,  /* IC_XD_OPSIZE */
+ { /* struct OpcodeDecision */
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ }
+, };
+static const uint8_t index_x86DisassemblerThreeByte3AOpcodes[] = {
+0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
+static const struct OpcodeDecision emptyTable = {
+  {
+   /* 0x00 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x01 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x02 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x03 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x04 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x05 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x06 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x07 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x08 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x09 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x0f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x10 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x11 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x12 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x13 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x14 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x15 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x16 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x17 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x18 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x19 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x1f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x20 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x21 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x22 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x23 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x24 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x25 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x26 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x27 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x28 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x29 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x2f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x30 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x31 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x32 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x33 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x34 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x35 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x36 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x37 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x38 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x39 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x3f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x40 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x41 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x42 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x43 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x44 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x45 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x46 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x47 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x48 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x49 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x4f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x50 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x51 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x52 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x53 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x54 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x55 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x56 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x57 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x58 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x59 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x5f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x60 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x61 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x62 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x63 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x64 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x65 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x66 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x67 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x68 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x69 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x6f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x70 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x71 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x72 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x73 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x74 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x75 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x76 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x77 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x78 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x79 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x7f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x80 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x81 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x82 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x83 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x84 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x85 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x86 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x87 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x88 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x89 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x8f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x90 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x91 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x92 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x93 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x94 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x95 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x96 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x97 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x98 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x99 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9a */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9b */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9c */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9d */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9e */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0x9f */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xa9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xab */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xac */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xad */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xae */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xaf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xb9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xba */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xbf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xc9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xca */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xce */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xcf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xd9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xda */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xde */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xdf */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xe9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xea */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xeb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xec */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xed */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xee */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xef */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf0 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf1 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf2 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf3 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf4 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf5 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf6 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf7 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf8 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xf9 */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfa */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfb */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfc */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfd */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xfe */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   },
+   /* 0xff */
+   { /* ModRMDecision */
+    MODRM_ONEENTRY,
+    0 /* EmptyTable */
+   }
+  }
+ };
+
diff --git a/arch/X86/X86GenInstrInfo_reduce.inc b/arch/X86/X86GenInstrInfo_reduce.inc
new file mode 100644
index 0000000..5d5af8e
--- /dev/null
+++ b/arch/X86/X86GenInstrInfo_reduce.inc
@@ -0,0 +1,3380 @@
+/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
+|*                                                                            *|
+|*Target Instruction Enum Values                                              *|
+|*                                                                            *|
+|* Automatically generated file, do not edit!                                 *|
+|*                                                                            *|
+\*===----------------------------------------------------------------------===*/
+
+/* Capstone Disassembly Engine, http://www.capstone-engine.org */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
+
+
+#ifdef GET_INSTRINFO_ENUM
+#undef GET_INSTRINFO_ENUM
+
+enum {
+    X86_PHI	= 0,
+    X86_INLINEASM	= 1,
+    X86_PROLOG_LABEL	= 2,
+    X86_EH_LABEL	= 3,
+    X86_GC_LABEL	= 4,
+    X86_KILL	= 5,
+    X86_EXTRACT_SUBREG	= 6,
+    X86_INSERT_SUBREG	= 7,
+    X86_IMPLICIT_DEF	= 8,
+    X86_SUBREG_TO_REG	= 9,
+    X86_COPY_TO_REGCLASS	= 10,
+    X86_DBG_VALUE	= 11,
+    X86_REG_SEQUENCE	= 12,
+    X86_COPY	= 13,
+    X86_BUNDLE	= 14,
+    X86_LIFETIME_START	= 15,
+    X86_LIFETIME_END	= 16,
+    X86_STACKMAP	= 17,
+    X86_PATCHPOINT	= 18,
+    X86_AAA	= 19,
+    X86_AAD8i8	= 20,
+    X86_AAM8i8	= 21,
+    X86_AAS	= 22,
+    X86_ACQUIRE_MOV16rm	= 23,
+    X86_ACQUIRE_MOV32rm	= 24,
+    X86_ACQUIRE_MOV64rm	= 25,
+    X86_ACQUIRE_MOV8rm	= 26,
+    X86_ADC16i16	= 27,
+    X86_ADC16mi	= 28,
+    X86_ADC16mi8	= 29,
+    X86_ADC16mr	= 30,
+    X86_ADC16ri	= 31,
+    X86_ADC16ri8	= 32,
+    X86_ADC16rm	= 33,
+    X86_ADC16rr	= 34,
+    X86_ADC16rr_REV	= 35,
+    X86_ADC32i32	= 36,
+    X86_ADC32mi	= 37,
+    X86_ADC32mi8	= 38,
+    X86_ADC32mr	= 39,
+    X86_ADC32ri	= 40,
+    X86_ADC32ri8	= 41,
+    X86_ADC32rm	= 42,
+    X86_ADC32rr	= 43,
+    X86_ADC32rr_REV	= 44,
+    X86_ADC64i32	= 45,
+    X86_ADC64mi32	= 46,
+    X86_ADC64mi8	= 47,
+    X86_ADC64mr	= 48,
+    X86_ADC64ri32	= 49,
+    X86_ADC64ri8	= 50,
+    X86_ADC64rm	= 51,
+    X86_ADC64rr	= 52,
+    X86_ADC64rr_REV	= 53,
+    X86_ADC8i8	= 54,
+    X86_ADC8mi	= 55,
+    X86_ADC8mr	= 56,
+    X86_ADC8ri	= 57,
+    X86_ADC8rm	= 58,
+    X86_ADC8rr	= 59,
+    X86_ADC8rr_REV	= 60,
+    X86_ADCX32rm	= 61,
+    X86_ADCX32rr	= 62,
+    X86_ADCX64rm	= 63,
+    X86_ADCX64rr	= 64,
+    X86_ADD16i16	= 65,
+    X86_ADD16mi	= 66,
+    X86_ADD16mi8	= 67,
+    X86_ADD16mr	= 68,
+    X86_ADD16ri	= 69,
+    X86_ADD16ri8	= 70,
+    X86_ADD16ri8_DB	= 71,
+    X86_ADD16ri_DB	= 72,
+    X86_ADD16rm	= 73,
+    X86_ADD16rr	= 74,
+    X86_ADD16rr_DB	= 75,
+    X86_ADD16rr_REV	= 76,
+    X86_ADD32i32	= 77,
+    X86_ADD32mi	= 78,
+    X86_ADD32mi8	= 79,
+    X86_ADD32mr	= 80,
+    X86_ADD32ri	= 81,
+    X86_ADD32ri8	= 82,
+    X86_ADD32ri8_DB	= 83,
+    X86_ADD32ri_DB	= 84,
+    X86_ADD32rm	= 85,
+    X86_ADD32rr	= 86,
+    X86_ADD32rr_DB	= 87,
+    X86_ADD32rr_REV	= 88,
+    X86_ADD64i32	= 89,
+    X86_ADD64mi32	= 90,
+    X86_ADD64mi8	= 91,
+    X86_ADD64mr	= 92,
+    X86_ADD64ri32	= 93,
+    X86_ADD64ri32_DB	= 94,
+    X86_ADD64ri8	= 95,
+    X86_ADD64ri8_DB	= 96,
+    X86_ADD64rm	= 97,
+    X86_ADD64rr	= 98,
+    X86_ADD64rr_DB	= 99,
+    X86_ADD64rr_REV	= 100,
+    X86_ADD8i8	= 101,
+    X86_ADD8mi	= 102,
+    X86_ADD8mr	= 103,
+    X86_ADD8ri	= 104,
+    X86_ADD8rm	= 105,
+    X86_ADD8rr	= 106,
+    X86_ADD8rr_REV	= 107,
+    X86_ADJCALLSTACKDOWN32	= 108,
+    X86_ADJCALLSTACKDOWN64	= 109,
+    X86_ADJCALLSTACKUP32	= 110,
+    X86_ADJCALLSTACKUP64	= 111,
+    X86_ADOX32rm	= 112,
+    X86_ADOX32rr	= 113,
+    X86_ADOX64rm	= 114,
+    X86_ADOX64rr	= 115,
+    X86_AND16i16	= 116,
+    X86_AND16mi	= 117,
+    X86_AND16mi8	= 118,
+    X86_AND16mr	= 119,
+    X86_AND16ri	= 120,
+    X86_AND16ri8	= 121,
+    X86_AND16rm	= 122,
+    X86_AND16rr	= 123,
+    X86_AND16rr_REV	= 124,
+    X86_AND32i32	= 125,
+    X86_AND32mi	= 126,
+    X86_AND32mi8	= 127,
+    X86_AND32mr	= 128,
+    X86_AND32ri	= 129,
+    X86_AND32ri8	= 130,
+    X86_AND32rm	= 131,
+    X86_AND32rr	= 132,
+    X86_AND32rr_REV	= 133,
+    X86_AND64i32	= 134,
+    X86_AND64mi32	= 135,
+    X86_AND64mi8	= 136,
+    X86_AND64mr	= 137,
+    X86_AND64ri32	= 138,
+    X86_AND64ri8	= 139,
+    X86_AND64rm	= 140,
+    X86_AND64rr	= 141,
+    X86_AND64rr_REV	= 142,
+    X86_AND8i8	= 143,
+    X86_AND8mi	= 144,
+    X86_AND8mr	= 145,
+    X86_AND8ri	= 146,
+    X86_AND8rm	= 147,
+    X86_AND8rr	= 148,
+    X86_AND8rr_REV	= 149,
+    X86_ANDN32rm	= 150,
+    X86_ANDN32rr	= 151,
+    X86_ANDN64rm	= 152,
+    X86_ANDN64rr	= 153,
+    X86_ARPL16mr	= 154,
+    X86_ARPL16rr	= 155,
+    X86_ATOMADD6432	= 156,
+    X86_ATOMAND16	= 157,
+    X86_ATOMAND32	= 158,
+    X86_ATOMAND64	= 159,
+    X86_ATOMAND6432	= 160,
+    X86_ATOMAND8	= 161,
+    X86_ATOMMAX16	= 162,
+    X86_ATOMMAX32	= 163,
+    X86_ATOMMAX64	= 164,
+    X86_ATOMMAX6432	= 165,
+    X86_ATOMMAX8	= 166,
+    X86_ATOMMIN16	= 167,
+    X86_ATOMMIN32	= 168,
+    X86_ATOMMIN64	= 169,
+    X86_ATOMMIN6432	= 170,
+    X86_ATOMMIN8	= 171,
+    X86_ATOMNAND16	= 172,
+    X86_ATOMNAND32	= 173,
+    X86_ATOMNAND64	= 174,
+    X86_ATOMNAND6432	= 175,
+    X86_ATOMNAND8	= 176,
+    X86_ATOMOR16	= 177,
+    X86_ATOMOR32	= 178,
+    X86_ATOMOR64	= 179,
+    X86_ATOMOR6432	= 180,
+    X86_ATOMOR8	= 181,
+    X86_ATOMSUB6432	= 182,
+    X86_ATOMSWAP6432	= 183,
+    X86_ATOMUMAX16	= 184,
+    X86_ATOMUMAX32	= 185,
+    X86_ATOMUMAX64	= 186,
+    X86_ATOMUMAX6432	= 187,
+    X86_ATOMUMAX8	= 188,
+    X86_ATOMUMIN16	= 189,
+    X86_ATOMUMIN32	= 190,
+    X86_ATOMUMIN64	= 191,
+    X86_ATOMUMIN6432	= 192,
+    X86_ATOMUMIN8	= 193,
+    X86_ATOMXOR16	= 194,
+    X86_ATOMXOR32	= 195,
+    X86_ATOMXOR64	= 196,
+    X86_ATOMXOR6432	= 197,
+    X86_ATOMXOR8	= 198,
+    X86_BEXTR32rm	= 199,
+    X86_BEXTR32rr	= 200,
+    X86_BEXTR64rm	= 201,
+    X86_BEXTR64rr	= 202,
+    X86_BEXTRI32mi	= 203,
+    X86_BEXTRI32ri	= 204,
+    X86_BEXTRI64mi	= 205,
+    X86_BEXTRI64ri	= 206,
+    X86_BLCFILL32rm	= 207,
+    X86_BLCFILL32rr	= 208,
+    X86_BLCFILL64rm	= 209,
+    X86_BLCFILL64rr	= 210,
+    X86_BLCI32rm	= 211,
+    X86_BLCI32rr	= 212,
+    X86_BLCI64rm	= 213,
+    X86_BLCI64rr	= 214,
+    X86_BLCIC32rm	= 215,
+    X86_BLCIC32rr	= 216,
+    X86_BLCIC64rm	= 217,
+    X86_BLCIC64rr	= 218,
+    X86_BLCMSK32rm	= 219,
+    X86_BLCMSK32rr	= 220,
+    X86_BLCMSK64rm	= 221,
+    X86_BLCMSK64rr	= 222,
+    X86_BLCS32rm	= 223,
+    X86_BLCS32rr	= 224,
+    X86_BLCS64rm	= 225,
+    X86_BLCS64rr	= 226,
+    X86_BLSFILL32rm	= 227,
+    X86_BLSFILL32rr	= 228,
+    X86_BLSFILL64rm	= 229,
+    X86_BLSFILL64rr	= 230,
+    X86_BLSI32rm	= 231,
+    X86_BLSI32rr	= 232,
+    X86_BLSI64rm	= 233,
+    X86_BLSI64rr	= 234,
+    X86_BLSIC32rm	= 235,
+    X86_BLSIC32rr	= 236,
+    X86_BLSIC64rm	= 237,
+    X86_BLSIC64rr	= 238,
+    X86_BLSMSK32rm	= 239,
+    X86_BLSMSK32rr	= 240,
+    X86_BLSMSK64rm	= 241,
+    X86_BLSMSK64rr	= 242,
+    X86_BLSR32rm	= 243,
+    X86_BLSR32rr	= 244,
+    X86_BLSR64rm	= 245,
+    X86_BLSR64rr	= 246,
+    X86_BOUNDS16rm	= 247,
+    X86_BOUNDS32rm	= 248,
+    X86_BSF16rm	= 249,
+    X86_BSF16rr	= 250,
+    X86_BSF32rm	= 251,
+    X86_BSF32rr	= 252,
+    X86_BSF64rm	= 253,
+    X86_BSF64rr	= 254,
+    X86_BSR16rm	= 255,
+    X86_BSR16rr	= 256,
+    X86_BSR32rm	= 257,
+    X86_BSR32rr	= 258,
+    X86_BSR64rm	= 259,
+    X86_BSR64rr	= 260,
+    X86_BSWAP32r	= 261,
+    X86_BSWAP64r	= 262,
+    X86_BT16mi8	= 263,
+    X86_BT16mr	= 264,
+    X86_BT16ri8	= 265,
+    X86_BT16rr	= 266,
+    X86_BT32mi8	= 267,
+    X86_BT32mr	= 268,
+    X86_BT32ri8	= 269,
+    X86_BT32rr	= 270,
+    X86_BT64mi8	= 271,
+    X86_BT64mr	= 272,
+    X86_BT64ri8	= 273,
+    X86_BT64rr	= 274,
+    X86_BTC16mi8	= 275,
+    X86_BTC16mr	= 276,
+    X86_BTC16ri8	= 277,
+    X86_BTC16rr	= 278,
+    X86_BTC32mi8	= 279,
+    X86_BTC32mr	= 280,
+    X86_BTC32ri8	= 281,
+    X86_BTC32rr	= 282,
+    X86_BTC64mi8	= 283,
+    X86_BTC64mr	= 284,
+    X86_BTC64ri8	= 285,
+    X86_BTC64rr	= 286,
+    X86_BTR16mi8	= 287,
+    X86_BTR16mr	= 288,
+    X86_BTR16ri8	= 289,
+    X86_BTR16rr	= 290,
+    X86_BTR32mi8	= 291,
+    X86_BTR32mr	= 292,
+    X86_BTR32ri8	= 293,
+    X86_BTR32rr	= 294,
+    X86_BTR64mi8	= 295,
+    X86_BTR64mr	= 296,
+    X86_BTR64ri8	= 297,
+    X86_BTR64rr	= 298,
+    X86_BTS16mi8	= 299,
+    X86_BTS16mr	= 300,
+    X86_BTS16ri8	= 301,
+    X86_BTS16rr	= 302,
+    X86_BTS32mi8	= 303,
+    X86_BTS32mr	= 304,
+    X86_BTS32ri8	= 305,
+    X86_BTS32rr	= 306,
+    X86_BTS64mi8	= 307,
+    X86_BTS64mr	= 308,
+    X86_BTS64ri8	= 309,
+    X86_BTS64rr	= 310,
+    X86_BZHI32rm	= 311,
+    X86_BZHI32rr	= 312,
+    X86_BZHI64rm	= 313,
+    X86_BZHI64rr	= 314,
+    X86_CALL16m	= 315,
+    X86_CALL16r	= 316,
+    X86_CALL32m	= 317,
+    X86_CALL32r	= 318,
+    X86_CALL64m	= 319,
+    X86_CALL64pcrel32	= 320,
+    X86_CALL64r	= 321,
+    X86_CALLpcrel16	= 322,
+    X86_CALLpcrel32	= 323,
+    X86_CBW	= 324,
+    X86_CDQ	= 325,
+    X86_CDQE	= 326,
+    X86_CLAC	= 327,
+    X86_CLC	= 328,
+    X86_CLD	= 329,
+    X86_CLGI	= 330,
+    X86_CLI	= 331,
+    X86_CLTS	= 332,
+    X86_CMC	= 333,
+    X86_CMOVA16rm	= 334,
+    X86_CMOVA16rr	= 335,
+    X86_CMOVA32rm	= 336,
+    X86_CMOVA32rr	= 337,
+    X86_CMOVA64rm	= 338,
+    X86_CMOVA64rr	= 339,
+    X86_CMOVAE16rm	= 340,
+    X86_CMOVAE16rr	= 341,
+    X86_CMOVAE32rm	= 342,
+    X86_CMOVAE32rr	= 343,
+    X86_CMOVAE64rm	= 344,
+    X86_CMOVAE64rr	= 345,
+    X86_CMOVB16rm	= 346,
+    X86_CMOVB16rr	= 347,
+    X86_CMOVB32rm	= 348,
+    X86_CMOVB32rr	= 349,
+    X86_CMOVB64rm	= 350,
+    X86_CMOVB64rr	= 351,
+    X86_CMOVBE16rm	= 352,
+    X86_CMOVBE16rr	= 353,
+    X86_CMOVBE32rm	= 354,
+    X86_CMOVBE32rr	= 355,
+    X86_CMOVBE64rm	= 356,
+    X86_CMOVBE64rr	= 357,
+    X86_CMOVE16rm	= 358,
+    X86_CMOVE16rr	= 359,
+    X86_CMOVE32rm	= 360,
+    X86_CMOVE32rr	= 361,
+    X86_CMOVE64rm	= 362,
+    X86_CMOVE64rr	= 363,
+    X86_CMOVG16rm	= 364,
+    X86_CMOVG16rr	= 365,
+    X86_CMOVG32rm	= 366,
+    X86_CMOVG32rr	= 367,
+    X86_CMOVG64rm	= 368,
+    X86_CMOVG64rr	= 369,
+    X86_CMOVGE16rm	= 370,
+    X86_CMOVGE16rr	= 371,
+    X86_CMOVGE32rm	= 372,
+    X86_CMOVGE32rr	= 373,
+    X86_CMOVGE64rm	= 374,
+    X86_CMOVGE64rr	= 375,
+    X86_CMOVL16rm	= 376,
+    X86_CMOVL16rr	= 377,
+    X86_CMOVL32rm	= 378,
+    X86_CMOVL32rr	= 379,
+    X86_CMOVL64rm	= 380,
+    X86_CMOVL64rr	= 381,
+    X86_CMOVLE16rm	= 382,
+    X86_CMOVLE16rr	= 383,
+    X86_CMOVLE32rm	= 384,
+    X86_CMOVLE32rr	= 385,
+    X86_CMOVLE64rm	= 386,
+    X86_CMOVLE64rr	= 387,
+    X86_CMOVNE16rm	= 388,
+    X86_CMOVNE16rr	= 389,
+    X86_CMOVNE32rm	= 390,
+    X86_CMOVNE32rr	= 391,
+    X86_CMOVNE64rm	= 392,
+    X86_CMOVNE64rr	= 393,
+    X86_CMOVNO16rm	= 394,
+    X86_CMOVNO16rr	= 395,
+    X86_CMOVNO32rm	= 396,
+    X86_CMOVNO32rr	= 397,
+    X86_CMOVNO64rm	= 398,
+    X86_CMOVNO64rr	= 399,
+    X86_CMOVNP16rm	= 400,
+    X86_CMOVNP16rr	= 401,
+    X86_CMOVNP32rm	= 402,
+    X86_CMOVNP32rr	= 403,
+    X86_CMOVNP64rm	= 404,
+    X86_CMOVNP64rr	= 405,
+    X86_CMOVNS16rm	= 406,
+    X86_CMOVNS16rr	= 407,
+    X86_CMOVNS32rm	= 408,
+    X86_CMOVNS32rr	= 409,
+    X86_CMOVNS64rm	= 410,
+    X86_CMOVNS64rr	= 411,
+    X86_CMOVO16rm	= 412,
+    X86_CMOVO16rr	= 413,
+    X86_CMOVO32rm	= 414,
+    X86_CMOVO32rr	= 415,
+    X86_CMOVO64rm	= 416,
+    X86_CMOVO64rr	= 417,
+    X86_CMOVP16rm	= 418,
+    X86_CMOVP16rr	= 419,
+    X86_CMOVP32rm	= 420,
+    X86_CMOVP32rr	= 421,
+    X86_CMOVP64rm	= 422,
+    X86_CMOVP64rr	= 423,
+    X86_CMOVS16rm	= 424,
+    X86_CMOVS16rr	= 425,
+    X86_CMOVS32rm	= 426,
+    X86_CMOVS32rr	= 427,
+    X86_CMOVS64rm	= 428,
+    X86_CMOVS64rr	= 429,
+    X86_CMOV_FR32	= 430,
+    X86_CMOV_FR64	= 431,
+    X86_CMOV_GR16	= 432,
+    X86_CMOV_GR32	= 433,
+    X86_CMOV_GR8	= 434,
+    X86_CMOV_RFP32	= 435,
+    X86_CMOV_RFP64	= 436,
+    X86_CMOV_RFP80	= 437,
+    X86_CMOV_V16F32	= 438,
+    X86_CMOV_V2F64	= 439,
+    X86_CMOV_V2I64	= 440,
+    X86_CMOV_V4F32	= 441,
+    X86_CMOV_V4F64	= 442,
+    X86_CMOV_V4I64	= 443,
+    X86_CMOV_V8F32	= 444,
+    X86_CMOV_V8F64	= 445,
+    X86_CMOV_V8I64	= 446,
+    X86_CMP16i16	= 447,
+    X86_CMP16mi	= 448,
+    X86_CMP16mi8	= 449,
+    X86_CMP16mr	= 450,
+    X86_CMP16ri	= 451,
+    X86_CMP16ri8	= 452,
+    X86_CMP16rm	= 453,
+    X86_CMP16rr	= 454,
+    X86_CMP16rr_REV	= 455,
+    X86_CMP32i32	= 456,
+    X86_CMP32mi	= 457,
+    X86_CMP32mi8	= 458,
+    X86_CMP32mr	= 459,
+    X86_CMP32ri	= 460,
+    X86_CMP32ri8	= 461,
+    X86_CMP32rm	= 462,
+    X86_CMP32rr	= 463,
+    X86_CMP32rr_REV	= 464,
+    X86_CMP64i32	= 465,
+    X86_CMP64mi32	= 466,
+    X86_CMP64mi8	= 467,
+    X86_CMP64mr	= 468,
+    X86_CMP64ri32	= 469,
+    X86_CMP64ri8	= 470,
+    X86_CMP64rm	= 471,
+    X86_CMP64rr	= 472,
+    X86_CMP64rr_REV	= 473,
+    X86_CMP8i8	= 474,
+    X86_CMP8mi	= 475,
+    X86_CMP8mr	= 476,
+    X86_CMP8ri	= 477,
+    X86_CMP8rm	= 478,
+    X86_CMP8rr	= 479,
+    X86_CMP8rr_REV	= 480,
+    X86_CMPS16	= 481,
+    X86_CMPS32	= 482,
+    X86_CMPS64	= 483,
+    X86_CMPS8	= 484,
+    X86_CMPXCHG16B	= 485,
+    X86_CMPXCHG16rm	= 486,
+    X86_CMPXCHG16rr	= 487,
+    X86_CMPXCHG32rm	= 488,
+    X86_CMPXCHG32rr	= 489,
+    X86_CMPXCHG64rm	= 490,
+    X86_CMPXCHG64rr	= 491,
+    X86_CMPXCHG8B	= 492,
+    X86_CMPXCHG8rm	= 493,
+    X86_CMPXCHG8rr	= 494,
+    X86_CPUID32	= 495,
+    X86_CPUID64	= 496,
+    X86_CQO	= 497,
+    X86_CS_PREFIX	= 498,
+    X86_CWD	= 499,
+    X86_CWDE	= 500,
+    X86_DAA	= 501,
+    X86_DAS	= 502,
+    X86_DATA16_PREFIX	= 503,
+    X86_DEC16m	= 504,
+    X86_DEC16r	= 505,
+    X86_DEC32_16r	= 506,
+    X86_DEC32_32r	= 507,
+    X86_DEC32m	= 508,
+    X86_DEC32r	= 509,
+    X86_DEC64_16m	= 510,
+    X86_DEC64_16r	= 511,
+    X86_DEC64_32m	= 512,
+    X86_DEC64_32r	= 513,
+    X86_DEC64m	= 514,
+    X86_DEC64r	= 515,
+    X86_DEC8m	= 516,
+    X86_DEC8r	= 517,
+    X86_DIV16m	= 518,
+    X86_DIV16r	= 519,
+    X86_DIV32m	= 520,
+    X86_DIV32r	= 521,
+    X86_DIV64m	= 522,
+    X86_DIV64r	= 523,
+    X86_DIV8m	= 524,
+    X86_DIV8r	= 525,
+    X86_DS_PREFIX	= 526,
+    X86_EH_RETURN	= 527,
+    X86_EH_RETURN64	= 528,
+    X86_EH_SjLj_LongJmp32	= 529,
+    X86_EH_SjLj_LongJmp64	= 530,
+    X86_EH_SjLj_SetJmp32	= 531,
+    X86_EH_SjLj_SetJmp64	= 532,
+    X86_EH_SjLj_Setup	= 533,
+    X86_ENTER	= 534,
+    X86_ES_PREFIX	= 535,
+    X86_FARCALL16i	= 536,
+    X86_FARCALL16m	= 537,
+    X86_FARCALL32i	= 538,
+    X86_FARCALL32m	= 539,
+    X86_FARCALL64	= 540,
+    X86_FARJMP16i	= 541,
+    X86_FARJMP16m	= 542,
+    X86_FARJMP32i	= 543,
+    X86_FARJMP32m	= 544,
+    X86_FARJMP64	= 545,
+    X86_FSETPM	= 546,
+    X86_FS_PREFIX	= 547,
+    X86_GETSEC	= 548,
+    X86_GS_PREFIX	= 549,
+    X86_HLT	= 550,
+    X86_IDIV16m	= 551,
+    X86_IDIV16r	= 552,
+    X86_IDIV32m	= 553,
+    X86_IDIV32r	= 554,
+    X86_IDIV64m	= 555,
+    X86_IDIV64r	= 556,
+    X86_IDIV8m	= 557,
+    X86_IDIV8r	= 558,
+    X86_IMUL16m	= 559,
+    X86_IMUL16r	= 560,
+    X86_IMUL16rm	= 561,
+    X86_IMUL16rmi	= 562,
+    X86_IMUL16rmi8	= 563,
+    X86_IMUL16rr	= 564,
+    X86_IMUL16rri	= 565,
+    X86_IMUL16rri8	= 566,
+    X86_IMUL32m	= 567,
+    X86_IMUL32r	= 568,
+    X86_IMUL32rm	= 569,
+    X86_IMUL32rmi	= 570,
+    X86_IMUL32rmi8	= 571,
+    X86_IMUL32rr	= 572,
+    X86_IMUL32rri	= 573,
+    X86_IMUL32rri8	= 574,
+    X86_IMUL64m	= 575,
+    X86_IMUL64r	= 576,
+    X86_IMUL64rm	= 577,
+    X86_IMUL64rmi32	= 578,
+    X86_IMUL64rmi8	= 579,
+    X86_IMUL64rr	= 580,
+    X86_IMUL64rri32	= 581,
+    X86_IMUL64rri8	= 582,
+    X86_IMUL8m	= 583,
+    X86_IMUL8r	= 584,
+    X86_IN16	= 585,
+    X86_IN16ri	= 586,
+    X86_IN16rr	= 587,
+    X86_IN32	= 588,
+    X86_IN32ri	= 589,
+    X86_IN32rr	= 590,
+    X86_IN8	= 591,
+    X86_IN8ri	= 592,
+    X86_IN8rr	= 593,
+    X86_INC16m	= 594,
+    X86_INC16r	= 595,
+    X86_INC32_16r	= 596,
+    X86_INC32_32r	= 597,
+    X86_INC32m	= 598,
+    X86_INC32r	= 599,
+    X86_INC64_16m	= 600,
+    X86_INC64_16r	= 601,
+    X86_INC64_32m	= 602,
+    X86_INC64_32r	= 603,
+    X86_INC64m	= 604,
+    X86_INC64r	= 605,
+    X86_INC8m	= 606,
+    X86_INC8r	= 607,
+    X86_INT	= 608,
+    X86_INT1	= 609,
+    X86_INT3	= 610,
+    X86_INTO	= 611,
+    X86_INVD	= 612,
+    X86_INVEPT32	= 613,
+    X86_INVEPT64	= 614,
+    X86_INVLPG	= 615,
+    X86_INVLPGA32	= 616,
+    X86_INVLPGA64	= 617,
+    X86_INVPCID32	= 618,
+    X86_INVPCID64	= 619,
+    X86_INVVPID32	= 620,
+    X86_INVVPID64	= 621,
+    X86_IRET16	= 622,
+    X86_IRET32	= 623,
+    X86_IRET64	= 624,
+    X86_Int_MemBarrier	= 625,
+    X86_JAE_1	= 626,
+    X86_JAE_2	= 627,
+    X86_JAE_4	= 628,
+    X86_JA_1	= 629,
+    X86_JA_2	= 630,
+    X86_JA_4	= 631,
+    X86_JBE_1	= 632,
+    X86_JBE_2	= 633,
+    X86_JBE_4	= 634,
+    X86_JB_1	= 635,
+    X86_JB_2	= 636,
+    X86_JB_4	= 637,
+    X86_JCXZ	= 638,
+    X86_JECXZ_32	= 639,
+    X86_JECXZ_64	= 640,
+    X86_JE_1	= 641,
+    X86_JE_2	= 642,
+    X86_JE_4	= 643,
+    X86_JGE_1	= 644,
+    X86_JGE_2	= 645,
+    X86_JGE_4	= 646,
+    X86_JG_1	= 647,
+    X86_JG_2	= 648,
+    X86_JG_4	= 649,
+    X86_JLE_1	= 650,
+    X86_JLE_2	= 651,
+    X86_JLE_4	= 652,
+    X86_JL_1	= 653,
+    X86_JL_2	= 654,
+    X86_JL_4	= 655,
+    X86_JMP16m	= 656,
+    X86_JMP16r	= 657,
+    X86_JMP32m	= 658,
+    X86_JMP32r	= 659,
+    X86_JMP64m	= 660,
+    X86_JMP64r	= 661,
+    X86_JMP_1	= 662,
+    X86_JMP_2	= 663,
+    X86_JMP_4	= 664,
+    X86_JNE_1	= 665,
+    X86_JNE_2	= 666,
+    X86_JNE_4	= 667,
+    X86_JNO_1	= 668,
+    X86_JNO_2	= 669,
+    X86_JNO_4	= 670,
+    X86_JNP_1	= 671,
+    X86_JNP_2	= 672,
+    X86_JNP_4	= 673,
+    X86_JNS_1	= 674,
+    X86_JNS_2	= 675,
+    X86_JNS_4	= 676,
+    X86_JO_1	= 677,
+    X86_JO_2	= 678,
+    X86_JO_4	= 679,
+    X86_JP_1	= 680,
+    X86_JP_2	= 681,
+    X86_JP_4	= 682,
+    X86_JRCXZ	= 683,
+    X86_JS_1	= 684,
+    X86_JS_2	= 685,
+    X86_JS_4	= 686,
+    X86_LAHF	= 687,
+    X86_LAR16rm	= 688,
+    X86_LAR16rr	= 689,
+    X86_LAR32rm	= 690,
+    X86_LAR32rr	= 691,
+    X86_LAR64rm	= 692,
+    X86_LAR64rr	= 693,
+    X86_LCMPXCHG16	= 694,
+    X86_LCMPXCHG16B	= 695,
+    X86_LCMPXCHG32	= 696,
+    X86_LCMPXCHG64	= 697,
+    X86_LCMPXCHG8	= 698,
+    X86_LCMPXCHG8B	= 699,
+    X86_LDS16rm	= 700,
+    X86_LDS32rm	= 701,
+    X86_LEA16r	= 702,
+    X86_LEA32r	= 703,
+    X86_LEA64_32r	= 704,
+    X86_LEA64r	= 705,
+    X86_LEAVE	= 706,
+    X86_LEAVE64	= 707,
+    X86_LES16rm	= 708,
+    X86_LES32rm	= 709,
+    X86_LFS16rm	= 710,
+    X86_LFS32rm	= 711,
+    X86_LFS64rm	= 712,
+    X86_LGDT16m	= 713,
+    X86_LGDT32m	= 714,
+    X86_LGDT64m	= 715,
+    X86_LGS16rm	= 716,
+    X86_LGS32rm	= 717,
+    X86_LGS64rm	= 718,
+    X86_LIDT16m	= 719,
+    X86_LIDT32m	= 720,
+    X86_LIDT64m	= 721,
+    X86_LLDT16m	= 722,
+    X86_LLDT16r	= 723,
+    X86_LMSW16m	= 724,
+    X86_LMSW16r	= 725,
+    X86_LOCK_ADD16mi	= 726,
+    X86_LOCK_ADD16mi8	= 727,
+    X86_LOCK_ADD16mr	= 728,
+    X86_LOCK_ADD32mi	= 729,
+    X86_LOCK_ADD32mi8	= 730,
+    X86_LOCK_ADD32mr	= 731,
+    X86_LOCK_ADD64mi32	= 732,
+    X86_LOCK_ADD64mi8	= 733,
+    X86_LOCK_ADD64mr	= 734,
+    X86_LOCK_ADD8mi	= 735,
+    X86_LOCK_ADD8mr	= 736,
+    X86_LOCK_AND16mi	= 737,
+    X86_LOCK_AND16mi8	= 738,
+    X86_LOCK_AND16mr	= 739,
+    X86_LOCK_AND32mi	= 740,
+    X86_LOCK_AND32mi8	= 741,
+    X86_LOCK_AND32mr	= 742,
+    X86_LOCK_AND64mi32	= 743,
+    X86_LOCK_AND64mi8	= 744,
+    X86_LOCK_AND64mr	= 745,
+    X86_LOCK_AND8mi	= 746,
+    X86_LOCK_AND8mr	= 747,
+    X86_LOCK_DEC16m	= 748,
+    X86_LOCK_DEC32m	= 749,
+    X86_LOCK_DEC64m	= 750,
+    X86_LOCK_DEC8m	= 751,
+    X86_LOCK_INC16m	= 752,
+    X86_LOCK_INC32m	= 753,
+    X86_LOCK_INC64m	= 754,
+    X86_LOCK_INC8m	= 755,
+    X86_LOCK_OR16mi	= 756,
+    X86_LOCK_OR16mi8	= 757,
+    X86_LOCK_OR16mr	= 758,
+    X86_LOCK_OR32mi	= 759,
+    X86_LOCK_OR32mi8	= 760,
+    X86_LOCK_OR32mr	= 761,
+    X86_LOCK_OR64mi32	= 762,
+    X86_LOCK_OR64mi8	= 763,
+    X86_LOCK_OR64mr	= 764,
+    X86_LOCK_OR8mi	= 765,
+    X86_LOCK_OR8mr	= 766,
+    X86_LOCK_PREFIX	= 767,
+    X86_LOCK_SUB16mi	= 768,
+    X86_LOCK_SUB16mi8	= 769,
+    X86_LOCK_SUB16mr	= 770,
+    X86_LOCK_SUB32mi	= 771,
+    X86_LOCK_SUB32mi8	= 772,
+    X86_LOCK_SUB32mr	= 773,
+    X86_LOCK_SUB64mi32	= 774,
+    X86_LOCK_SUB64mi8	= 775,
+    X86_LOCK_SUB64mr	= 776,
+    X86_LOCK_SUB8mi	= 777,
+    X86_LOCK_SUB8mr	= 778,
+    X86_LOCK_XOR16mi	= 779,
+    X86_LOCK_XOR16mi8	= 780,
+    X86_LOCK_XOR16mr	= 781,
+    X86_LOCK_XOR32mi	= 782,
+    X86_LOCK_XOR32mi8	= 783,
+    X86_LOCK_XOR32mr	= 784,
+    X86_LOCK_XOR64mi32	= 785,
+    X86_LOCK_XOR64mi8	= 786,
+    X86_LOCK_XOR64mr	= 787,
+    X86_LOCK_XOR8mi	= 788,
+    X86_LOCK_XOR8mr	= 789,
+    X86_LODSB	= 790,
+    X86_LODSL	= 791,
+    X86_LODSQ	= 792,
+    X86_LODSW	= 793,
+    X86_LOOP	= 794,
+    X86_LOOPE	= 795,
+    X86_LOOPNE	= 796,
+    X86_LRETIL	= 797,
+    X86_LRETIQ	= 798,
+    X86_LRETIW	= 799,
+    X86_LRETL	= 800,
+    X86_LRETQ	= 801,
+    X86_LRETW	= 802,
+    X86_LSL16rm	= 803,
+    X86_LSL16rr	= 804,
+    X86_LSL32rm	= 805,
+    X86_LSL32rr	= 806,
+    X86_LSL64rm	= 807,
+    X86_LSL64rr	= 808,
+    X86_LSS16rm	= 809,
+    X86_LSS32rm	= 810,
+    X86_LSS64rm	= 811,
+    X86_LTRm	= 812,
+    X86_LTRr	= 813,
+    X86_LXADD16	= 814,
+    X86_LXADD32	= 815,
+    X86_LXADD64	= 816,
+    X86_LXADD8	= 817,
+    X86_LZCNT16rm	= 818,
+    X86_LZCNT16rr	= 819,
+    X86_LZCNT32rm	= 820,
+    X86_LZCNT32rr	= 821,
+    X86_LZCNT64rm	= 822,
+    X86_LZCNT64rr	= 823,
+    X86_MONTMUL	= 824,
+    X86_MORESTACK_RET	= 825,
+    X86_MORESTACK_RET_RESTORE_R10	= 826,
+    X86_MOV16ao16	= 827,
+    X86_MOV16ao16_16	= 828,
+    X86_MOV16mi	= 829,
+    X86_MOV16mr	= 830,
+    X86_MOV16ms	= 831,
+    X86_MOV16o16a	= 832,
+    X86_MOV16o16a_16	= 833,
+    X86_MOV16ri	= 834,
+    X86_MOV16ri_alt	= 835,
+    X86_MOV16rm	= 836,
+    X86_MOV16rr	= 837,
+    X86_MOV16rr_REV	= 838,
+    X86_MOV16rs	= 839,
+    X86_MOV16sm	= 840,
+    X86_MOV16sr	= 841,
+    X86_MOV32ao32	= 842,
+    X86_MOV32ao32_16	= 843,
+    X86_MOV32cr	= 844,
+    X86_MOV32dr	= 845,
+    X86_MOV32mi	= 846,
+    X86_MOV32mr	= 847,
+    X86_MOV32ms	= 848,
+    X86_MOV32o32a	= 849,
+    X86_MOV32o32a_16	= 850,
+    X86_MOV32r0	= 851,
+    X86_MOV32rc	= 852,
+    X86_MOV32rd	= 853,
+    X86_MOV32ri	= 854,
+    X86_MOV32ri64	= 855,
+    X86_MOV32ri_alt	= 856,
+    X86_MOV32rm	= 857,
+    X86_MOV32rr	= 858,
+    X86_MOV32rr_REV	= 859,
+    X86_MOV32rs	= 860,
+    X86_MOV32sm	= 861,
+    X86_MOV32sr	= 862,
+    X86_MOV64ao16	= 863,
+    X86_MOV64ao32	= 864,
+    X86_MOV64ao64	= 865,
+    X86_MOV64ao8	= 866,
+    X86_MOV64cr	= 867,
+    X86_MOV64dr	= 868,
+    X86_MOV64mi32	= 869,
+    X86_MOV64mr	= 870,
+    X86_MOV64ms	= 871,
+    X86_MOV64o16a	= 872,
+    X86_MOV64o32a	= 873,
+    X86_MOV64o64a	= 874,
+    X86_MOV64o8a	= 875,
+    X86_MOV64rc	= 876,
+    X86_MOV64rd	= 877,
+    X86_MOV64ri	= 878,
+    X86_MOV64ri32	= 879,
+    X86_MOV64rm	= 880,
+    X86_MOV64rr	= 881,
+    X86_MOV64rr_REV	= 882,
+    X86_MOV64rs	= 883,
+    X86_MOV64sm	= 884,
+    X86_MOV64sr	= 885,
+    X86_MOV8ao8	= 886,
+    X86_MOV8ao8_16	= 887,
+    X86_MOV8mi	= 888,
+    X86_MOV8mr	= 889,
+    X86_MOV8mr_NOREX	= 890,
+    X86_MOV8o8a	= 891,
+    X86_MOV8o8a_16	= 892,
+    X86_MOV8ri	= 893,
+    X86_MOV8ri_alt	= 894,
+    X86_MOV8rm	= 895,
+    X86_MOV8rm_NOREX	= 896,
+    X86_MOV8rr	= 897,
+    X86_MOV8rr_NOREX	= 898,
+    X86_MOV8rr_REV	= 899,
+    X86_MOVBE16mr	= 900,
+    X86_MOVBE16rm	= 901,
+    X86_MOVBE32mr	= 902,
+    X86_MOVBE32rm	= 903,
+    X86_MOVBE64mr	= 904,
+    X86_MOVBE64rm	= 905,
+    X86_MOVPC32r	= 906,
+    X86_MOVSB	= 907,
+    X86_MOVSL	= 908,
+    X86_MOVSQ	= 909,
+    X86_MOVSW	= 910,
+    X86_MOVSX16rm8	= 911,
+    X86_MOVSX16rr8	= 912,
+    X86_MOVSX32rm16	= 913,
+    X86_MOVSX32rm8	= 914,
+    X86_MOVSX32rr16	= 915,
+    X86_MOVSX32rr8	= 916,
+    X86_MOVSX64rm16	= 917,
+    X86_MOVSX64rm32	= 918,
+    X86_MOVSX64rm8	= 919,
+    X86_MOVSX64rr16	= 920,
+    X86_MOVSX64rr32	= 921,
+    X86_MOVSX64rr8	= 922,
+    X86_MOVZX16rm8	= 923,
+    X86_MOVZX16rr8	= 924,
+    X86_MOVZX32_NOREXrm8	= 925,
+    X86_MOVZX32_NOREXrr8	= 926,
+    X86_MOVZX32rm16	= 927,
+    X86_MOVZX32rm8	= 928,
+    X86_MOVZX32rr16	= 929,
+    X86_MOVZX32rr8	= 930,
+    X86_MOVZX64rm16_Q	= 931,
+    X86_MOVZX64rm8_Q	= 932,
+    X86_MOVZX64rr16_Q	= 933,
+    X86_MOVZX64rr8_Q	= 934,
+    X86_MUL16m	= 935,
+    X86_MUL16r	= 936,
+    X86_MUL32m	= 937,
+    X86_MUL32r	= 938,
+    X86_MUL64m	= 939,
+    X86_MUL64r	= 940,
+    X86_MUL8m	= 941,
+    X86_MUL8r	= 942,
+    X86_MULX32rm	= 943,
+    X86_MULX32rr	= 944,
+    X86_MULX64rm	= 945,
+    X86_MULX64rr	= 946,
+    X86_NEG16m	= 947,
+    X86_NEG16r	= 948,
+    X86_NEG32m	= 949,
+    X86_NEG32r	= 950,
+    X86_NEG64m	= 951,
+    X86_NEG64r	= 952,
+    X86_NEG8m	= 953,
+    X86_NEG8r	= 954,
+    X86_NOOP	= 955,
+    X86_NOOPL	= 956,
+    X86_NOOPW	= 957,
+    X86_NOT16m	= 958,
+    X86_NOT16r	= 959,
+    X86_NOT32m	= 960,
+    X86_NOT32r	= 961,
+    X86_NOT64m	= 962,
+    X86_NOT64r	= 963,
+    X86_NOT8m	= 964,
+    X86_NOT8r	= 965,
+    X86_OR16i16	= 966,
+    X86_OR16mi	= 967,
+    X86_OR16mi8	= 968,
+    X86_OR16mr	= 969,
+    X86_OR16ri	= 970,
+    X86_OR16ri8	= 971,
+    X86_OR16rm	= 972,
+    X86_OR16rr	= 973,
+    X86_OR16rr_REV	= 974,
+    X86_OR32i32	= 975,
+    X86_OR32mi	= 976,
+    X86_OR32mi8	= 977,
+    X86_OR32mr	= 978,
+    X86_OR32mrLocked	= 979,
+    X86_OR32ri	= 980,
+    X86_OR32ri8	= 981,
+    X86_OR32rm	= 982,
+    X86_OR32rr	= 983,
+    X86_OR32rr_REV	= 984,
+    X86_OR64i32	= 985,
+    X86_OR64mi32	= 986,
+    X86_OR64mi8	= 987,
+    X86_OR64mr	= 988,
+    X86_OR64ri32	= 989,
+    X86_OR64ri8	= 990,
+    X86_OR64rm	= 991,
+    X86_OR64rr	= 992,
+    X86_OR64rr_REV	= 993,
+    X86_OR8i8	= 994,
+    X86_OR8mi	= 995,
+    X86_OR8mr	= 996,
+    X86_OR8ri	= 997,
+    X86_OR8rm	= 998,
+    X86_OR8rr	= 999,
+    X86_OR8rr_REV	= 1000,
+    X86_OUT16ir	= 1001,
+    X86_OUT16rr	= 1002,
+    X86_OUT32ir	= 1003,
+    X86_OUT32rr	= 1004,
+    X86_OUT8ir	= 1005,
+    X86_OUT8rr	= 1006,
+    X86_OUTSB	= 1007,
+    X86_OUTSL	= 1008,
+    X86_OUTSW	= 1009,
+    X86_PDEP32rm	= 1010,
+    X86_PDEP32rr	= 1011,
+    X86_PDEP64rm	= 1012,
+    X86_PDEP64rr	= 1013,
+    X86_PEXT32rm	= 1014,
+    X86_PEXT32rr	= 1015,
+    X86_PEXT64rm	= 1016,
+    X86_PEXT64rr	= 1017,
+    X86_POP16r	= 1018,
+    X86_POP16rmm	= 1019,
+    X86_POP16rmr	= 1020,
+    X86_POP32r	= 1021,
+    X86_POP32rmm	= 1022,
+    X86_POP32rmr	= 1023,
+    X86_POP64r	= 1024,
+    X86_POP64rmm	= 1025,
+    X86_POP64rmr	= 1026,
+    X86_POPA16	= 1027,
+    X86_POPA32	= 1028,
+    X86_POPDS16	= 1029,
+    X86_POPDS32	= 1030,
+    X86_POPES16	= 1031,
+    X86_POPES32	= 1032,
+    X86_POPF16	= 1033,
+    X86_POPF32	= 1034,
+    X86_POPF64	= 1035,
+    X86_POPFS16	= 1036,
+    X86_POPFS32	= 1037,
+    X86_POPFS64	= 1038,
+    X86_POPGS16	= 1039,
+    X86_POPGS32	= 1040,
+    X86_POPGS64	= 1041,
+    X86_POPSS16	= 1042,
+    X86_POPSS32	= 1043,
+    X86_PUSH16i8	= 1044,
+    X86_PUSH16r	= 1045,
+    X86_PUSH16rmm	= 1046,
+    X86_PUSH16rmr	= 1047,
+    X86_PUSH32i8	= 1048,
+    X86_PUSH32r	= 1049,
+    X86_PUSH32rmm	= 1050,
+    X86_PUSH32rmr	= 1051,
+    X86_PUSH64i16	= 1052,
+    X86_PUSH64i32	= 1053,
+    X86_PUSH64i8	= 1054,
+    X86_PUSH64r	= 1055,
+    X86_PUSH64rmm	= 1056,
+    X86_PUSH64rmr	= 1057,
+    X86_PUSHA16	= 1058,
+    X86_PUSHA32	= 1059,
+    X86_PUSHCS16	= 1060,
+    X86_PUSHCS32	= 1061,
+    X86_PUSHDS16	= 1062,
+    X86_PUSHDS32	= 1063,
+    X86_PUSHES16	= 1064,
+    X86_PUSHES32	= 1065,
+    X86_PUSHF16	= 1066,
+    X86_PUSHF32	= 1067,
+    X86_PUSHF64	= 1068,
+    X86_PUSHFS16	= 1069,
+    X86_PUSHFS32	= 1070,
+    X86_PUSHFS64	= 1071,
+    X86_PUSHGS16	= 1072,
+    X86_PUSHGS32	= 1073,
+    X86_PUSHGS64	= 1074,
+    X86_PUSHSS16	= 1075,
+    X86_PUSHSS32	= 1076,
+    X86_PUSHi16	= 1077,
+    X86_PUSHi32	= 1078,
+    X86_RCL16m1	= 1079,
+    X86_RCL16mCL	= 1080,
+    X86_RCL16mi	= 1081,
+    X86_RCL16r1	= 1082,
+    X86_RCL16rCL	= 1083,
+    X86_RCL16ri	= 1084,
+    X86_RCL32m1	= 1085,
+    X86_RCL32mCL	= 1086,
+    X86_RCL32mi	= 1087,
+    X86_RCL32r1	= 1088,
+    X86_RCL32rCL	= 1089,
+    X86_RCL32ri	= 1090,
+    X86_RCL64m1	= 1091,
+    X86_RCL64mCL	= 1092,
+    X86_RCL64mi	= 1093,
+    X86_RCL64r1	= 1094,
+    X86_RCL64rCL	= 1095,
+    X86_RCL64ri	= 1096,
+    X86_RCL8m1	= 1097,
+    X86_RCL8mCL	= 1098,
+    X86_RCL8mi	= 1099,
+    X86_RCL8r1	= 1100,
+    X86_RCL8rCL	= 1101,
+    X86_RCL8ri	= 1102,
+    X86_RCR16m1	= 1103,
+    X86_RCR16mCL	= 1104,
+    X86_RCR16mi	= 1105,
+    X86_RCR16r1	= 1106,
+    X86_RCR16rCL	= 1107,
+    X86_RCR16ri	= 1108,
+    X86_RCR32m1	= 1109,
+    X86_RCR32mCL	= 1110,
+    X86_RCR32mi	= 1111,
+    X86_RCR32r1	= 1112,
+    X86_RCR32rCL	= 1113,
+    X86_RCR32ri	= 1114,
+    X86_RCR64m1	= 1115,
+    X86_RCR64mCL	= 1116,
+    X86_RCR64mi	= 1117,
+    X86_RCR64r1	= 1118,
+    X86_RCR64rCL	= 1119,
+    X86_RCR64ri	= 1120,
+    X86_RCR8m1	= 1121,
+    X86_RCR8mCL	= 1122,
+    X86_RCR8mi	= 1123,
+    X86_RCR8r1	= 1124,
+    X86_RCR8rCL	= 1125,
+    X86_RCR8ri	= 1126,
+    X86_RDFSBASE	= 1127,
+    X86_RDFSBASE64	= 1128,
+    X86_RDGSBASE	= 1129,
+    X86_RDGSBASE64	= 1130,
+    X86_RDMSR	= 1131,
+    X86_RDPMC	= 1132,
+    X86_RDRAND16r	= 1133,
+    X86_RDRAND32r	= 1134,
+    X86_RDRAND64r	= 1135,
+    X86_RDSEED16r	= 1136,
+    X86_RDSEED32r	= 1137,
+    X86_RDSEED64r	= 1138,
+    X86_RDTSC	= 1139,
+    X86_RDTSCP	= 1140,
+    X86_RELEASE_MOV16mr	= 1141,
+    X86_RELEASE_MOV32mr	= 1142,
+    X86_RELEASE_MOV64mr	= 1143,
+    X86_RELEASE_MOV8mr	= 1144,
+    X86_REPNE_PREFIX	= 1145,
+    X86_REP_MOVSB_32	= 1146,
+    X86_REP_MOVSB_64	= 1147,
+    X86_REP_MOVSD_32	= 1148,
+    X86_REP_MOVSD_64	= 1149,
+    X86_REP_MOVSQ_64	= 1150,
+    X86_REP_MOVSW_32	= 1151,
+    X86_REP_MOVSW_64	= 1152,
+    X86_REP_PREFIX	= 1153,
+    X86_REP_STOSB_32	= 1154,
+    X86_REP_STOSB_64	= 1155,
+    X86_REP_STOSD_32	= 1156,
+    X86_REP_STOSD_64	= 1157,
+    X86_REP_STOSQ_64	= 1158,
+    X86_REP_STOSW_32	= 1159,
+    X86_REP_STOSW_64	= 1160,
+    X86_RETIL	= 1161,
+    X86_RETIQ	= 1162,
+    X86_RETIW	= 1163,
+    X86_RETL	= 1164,
+    X86_RETQ	= 1165,
+    X86_RETW	= 1166,
+    X86_REX64_PREFIX	= 1167,
+    X86_ROL16m1	= 1168,
+    X86_ROL16mCL	= 1169,
+    X86_ROL16mi	= 1170,
+    X86_ROL16r1	= 1171,
+    X86_ROL16rCL	= 1172,
+    X86_ROL16ri	= 1173,
+    X86_ROL32m1	= 1174,
+    X86_ROL32mCL	= 1175,
+    X86_ROL32mi	= 1176,
+    X86_ROL32r1	= 1177,
+    X86_ROL32rCL	= 1178,
+    X86_ROL32ri	= 1179,
+    X86_ROL64m1	= 1180,
+    X86_ROL64mCL	= 1181,
+    X86_ROL64mi	= 1182,
+    X86_ROL64r1	= 1183,
+    X86_ROL64rCL	= 1184,
+    X86_ROL64ri	= 1185,
+    X86_ROL8m1	= 1186,
+    X86_ROL8mCL	= 1187,
+    X86_ROL8mi	= 1188,
+    X86_ROL8r1	= 1189,
+    X86_ROL8rCL	= 1190,
+    X86_ROL8ri	= 1191,
+    X86_ROR16m1	= 1192,
+    X86_ROR16mCL	= 1193,
+    X86_ROR16mi	= 1194,
+    X86_ROR16r1	= 1195,
+    X86_ROR16rCL	= 1196,
+    X86_ROR16ri	= 1197,
+    X86_ROR32m1	= 1198,
+    X86_ROR32mCL	= 1199,
+    X86_ROR32mi	= 1200,
+    X86_ROR32r1	= 1201,
+    X86_ROR32rCL	= 1202,
+    X86_ROR32ri	= 1203,
+    X86_ROR64m1	= 1204,
+    X86_ROR64mCL	= 1205,
+    X86_ROR64mi	= 1206,
+    X86_ROR64r1	= 1207,
+    X86_ROR64rCL	= 1208,
+    X86_ROR64ri	= 1209,
+    X86_ROR8m1	= 1210,
+    X86_ROR8mCL	= 1211,
+    X86_ROR8mi	= 1212,
+    X86_ROR8r1	= 1213,
+    X86_ROR8rCL	= 1214,
+    X86_ROR8ri	= 1215,
+    X86_RORX32mi	= 1216,
+    X86_RORX32ri	= 1217,
+    X86_RORX64mi	= 1218,
+    X86_RORX64ri	= 1219,
+    X86_RSM	= 1220,
+    X86_SAHF	= 1221,
+    X86_SALC	= 1222,
+    X86_SAR16m1	= 1223,
+    X86_SAR16mCL	= 1224,
+    X86_SAR16mi	= 1225,
+    X86_SAR16r1	= 1226,
+    X86_SAR16rCL	= 1227,
+    X86_SAR16ri	= 1228,
+    X86_SAR32m1	= 1229,
+    X86_SAR32mCL	= 1230,
+    X86_SAR32mi	= 1231,
+    X86_SAR32r1	= 1232,
+    X86_SAR32rCL	= 1233,
+    X86_SAR32ri	= 1234,
+    X86_SAR64m1	= 1235,
+    X86_SAR64mCL	= 1236,
+    X86_SAR64mi	= 1237,
+    X86_SAR64r1	= 1238,
+    X86_SAR64rCL	= 1239,
+    X86_SAR64ri	= 1240,
+    X86_SAR8m1	= 1241,
+    X86_SAR8mCL	= 1242,
+    X86_SAR8mi	= 1243,
+    X86_SAR8r1	= 1244,
+    X86_SAR8rCL	= 1245,
+    X86_SAR8ri	= 1246,
+    X86_SARX32rm	= 1247,
+    X86_SARX32rr	= 1248,
+    X86_SARX64rm	= 1249,
+    X86_SARX64rr	= 1250,
+    X86_SBB16i16	= 1251,
+    X86_SBB16mi	= 1252,
+    X86_SBB16mi8	= 1253,
+    X86_SBB16mr	= 1254,
+    X86_SBB16ri	= 1255,
+    X86_SBB16ri8	= 1256,
+    X86_SBB16rm	= 1257,
+    X86_SBB16rr	= 1258,
+    X86_SBB16rr_REV	= 1259,
+    X86_SBB32i32	= 1260,
+    X86_SBB32mi	= 1261,
+    X86_SBB32mi8	= 1262,
+    X86_SBB32mr	= 1263,
+    X86_SBB32ri	= 1264,
+    X86_SBB32ri8	= 1265,
+    X86_SBB32rm	= 1266,
+    X86_SBB32rr	= 1267,
+    X86_SBB32rr_REV	= 1268,
+    X86_SBB64i32	= 1269,
+    X86_SBB64mi32	= 1270,
+    X86_SBB64mi8	= 1271,
+    X86_SBB64mr	= 1272,
+    X86_SBB64ri32	= 1273,
+    X86_SBB64ri8	= 1274,
+    X86_SBB64rm	= 1275,
+    X86_SBB64rr	= 1276,
+    X86_SBB64rr_REV	= 1277,
+    X86_SBB8i8	= 1278,
+    X86_SBB8mi	= 1279,
+    X86_SBB8mr	= 1280,
+    X86_SBB8ri	= 1281,
+    X86_SBB8rm	= 1282,
+    X86_SBB8rr	= 1283,
+    X86_SBB8rr_REV	= 1284,
+    X86_SCAS16	= 1285,
+    X86_SCAS32	= 1286,
+    X86_SCAS64	= 1287,
+    X86_SCAS8	= 1288,
+    X86_SEG_ALLOCA_32	= 1289,
+    X86_SEG_ALLOCA_64	= 1290,
+    X86_SETAEm	= 1291,
+    X86_SETAEr	= 1292,
+    X86_SETAm	= 1293,
+    X86_SETAr	= 1294,
+    X86_SETBEm	= 1295,
+    X86_SETBEr	= 1296,
+    X86_SETB_C16r	= 1297,
+    X86_SETB_C32r	= 1298,
+    X86_SETB_C64r	= 1299,
+    X86_SETB_C8r	= 1300,
+    X86_SETBm	= 1301,
+    X86_SETBr	= 1302,
+    X86_SETEm	= 1303,
+    X86_SETEr	= 1304,
+    X86_SETGEm	= 1305,
+    X86_SETGEr	= 1306,
+    X86_SETGm	= 1307,
+    X86_SETGr	= 1308,
+    X86_SETLEm	= 1309,
+    X86_SETLEr	= 1310,
+    X86_SETLm	= 1311,
+    X86_SETLr	= 1312,
+    X86_SETNEm	= 1313,
+    X86_SETNEr	= 1314,
+    X86_SETNOm	= 1315,
+    X86_SETNOr	= 1316,
+    X86_SETNPm	= 1317,
+    X86_SETNPr	= 1318,
+    X86_SETNSm	= 1319,
+    X86_SETNSr	= 1320,
+    X86_SETOm	= 1321,
+    X86_SETOr	= 1322,
+    X86_SETPm	= 1323,
+    X86_SETPr	= 1324,
+    X86_SETSm	= 1325,
+    X86_SETSr	= 1326,
+    X86_SGDT16m	= 1327,
+    X86_SGDT32m	= 1328,
+    X86_SGDT64m	= 1329,
+    X86_SHL16m1	= 1330,
+    X86_SHL16mCL	= 1331,
+    X86_SHL16mi	= 1332,
+    X86_SHL16r1	= 1333,
+    X86_SHL16rCL	= 1334,
+    X86_SHL16ri	= 1335,
+    X86_SHL32m1	= 1336,
+    X86_SHL32mCL	= 1337,
+    X86_SHL32mi	= 1338,
+    X86_SHL32r1	= 1339,
+    X86_SHL32rCL	= 1340,
+    X86_SHL32ri	= 1341,
+    X86_SHL64m1	= 1342,
+    X86_SHL64mCL	= 1343,
+    X86_SHL64mi	= 1344,
+    X86_SHL64r1	= 1345,
+    X86_SHL64rCL	= 1346,
+    X86_SHL64ri	= 1347,
+    X86_SHL8m1	= 1348,
+    X86_SHL8mCL	= 1349,
+    X86_SHL8mi	= 1350,
+    X86_SHL8r1	= 1351,
+    X86_SHL8rCL	= 1352,
+    X86_SHL8ri	= 1353,
+    X86_SHLD16mrCL	= 1354,
+    X86_SHLD16mri8	= 1355,
+    X86_SHLD16rrCL	= 1356,
+    X86_SHLD16rri8	= 1357,
+    X86_SHLD32mrCL	= 1358,
+    X86_SHLD32mri8	= 1359,
+    X86_SHLD32rrCL	= 1360,
+    X86_SHLD32rri8	= 1361,
+    X86_SHLD64mrCL	= 1362,
+    X86_SHLD64mri8	= 1363,
+    X86_SHLD64rrCL	= 1364,
+    X86_SHLD64rri8	= 1365,
+    X86_SHLX32rm	= 1366,
+    X86_SHLX32rr	= 1367,
+    X86_SHLX64rm	= 1368,
+    X86_SHLX64rr	= 1369,
+    X86_SHR16m1	= 1370,
+    X86_SHR16mCL	= 1371,
+    X86_SHR16mi	= 1372,
+    X86_SHR16r1	= 1373,
+    X86_SHR16rCL	= 1374,
+    X86_SHR16ri	= 1375,
+    X86_SHR32m1	= 1376,
+    X86_SHR32mCL	= 1377,
+    X86_SHR32mi	= 1378,
+    X86_SHR32r1	= 1379,
+    X86_SHR32rCL	= 1380,
+    X86_SHR32ri	= 1381,
+    X86_SHR64m1	= 1382,
+    X86_SHR64mCL	= 1383,
+    X86_SHR64mi	= 1384,
+    X86_SHR64r1	= 1385,
+    X86_SHR64rCL	= 1386,
+    X86_SHR64ri	= 1387,
+    X86_SHR8m1	= 1388,
+    X86_SHR8mCL	= 1389,
+    X86_SHR8mi	= 1390,
+    X86_SHR8r1	= 1391,
+    X86_SHR8rCL	= 1392,
+    X86_SHR8ri	= 1393,
+    X86_SHRD16mrCL	= 1394,
+    X86_SHRD16mri8	= 1395,
+    X86_SHRD16rrCL	= 1396,
+    X86_SHRD16rri8	= 1397,
+    X86_SHRD32mrCL	= 1398,
+    X86_SHRD32mri8	= 1399,
+    X86_SHRD32rrCL	= 1400,
+    X86_SHRD32rri8	= 1401,
+    X86_SHRD64mrCL	= 1402,
+    X86_SHRD64mri8	= 1403,
+    X86_SHRD64rrCL	= 1404,
+    X86_SHRD64rri8	= 1405,
+    X86_SHRX32rm	= 1406,
+    X86_SHRX32rr	= 1407,
+    X86_SHRX64rm	= 1408,
+    X86_SHRX64rr	= 1409,
+    X86_SIDT16m	= 1410,
+    X86_SIDT32m	= 1411,
+    X86_SIDT64m	= 1412,
+    X86_SKINIT	= 1413,
+    X86_SLDT16m	= 1414,
+    X86_SLDT16r	= 1415,
+    X86_SLDT32r	= 1416,
+    X86_SLDT64m	= 1417,
+    X86_SLDT64r	= 1418,
+    X86_SMSW16m	= 1419,
+    X86_SMSW16r	= 1420,
+    X86_SMSW32r	= 1421,
+    X86_SMSW64r	= 1422,
+    X86_SS_PREFIX	= 1423,
+    X86_STAC	= 1424,
+    X86_STC	= 1425,
+    X86_STD	= 1426,
+    X86_STGI	= 1427,
+    X86_STI	= 1428,
+    X86_STOSB	= 1429,
+    X86_STOSL	= 1430,
+    X86_STOSQ	= 1431,
+    X86_STOSW	= 1432,
+    X86_STR16r	= 1433,
+    X86_STR32r	= 1434,
+    X86_STR64r	= 1435,
+    X86_STRm	= 1436,
+    X86_SUB16i16	= 1437,
+    X86_SUB16mi	= 1438,
+    X86_SUB16mi8	= 1439,
+    X86_SUB16mr	= 1440,
+    X86_SUB16ri	= 1441,
+    X86_SUB16ri8	= 1442,
+    X86_SUB16rm	= 1443,
+    X86_SUB16rr	= 1444,
+    X86_SUB16rr_REV	= 1445,
+    X86_SUB32i32	= 1446,
+    X86_SUB32mi	= 1447,
+    X86_SUB32mi8	= 1448,
+    X86_SUB32mr	= 1449,
+    X86_SUB32ri	= 1450,
+    X86_SUB32ri8	= 1451,
+    X86_SUB32rm	= 1452,
+    X86_SUB32rr	= 1453,
+    X86_SUB32rr_REV	= 1454,
+    X86_SUB64i32	= 1455,
+    X86_SUB64mi32	= 1456,
+    X86_SUB64mi8	= 1457,
+    X86_SUB64mr	= 1458,
+    X86_SUB64ri32	= 1459,
+    X86_SUB64ri8	= 1460,
+    X86_SUB64rm	= 1461,
+    X86_SUB64rr	= 1462,
+    X86_SUB64rr_REV	= 1463,
+    X86_SUB8i8	= 1464,
+    X86_SUB8mi	= 1465,
+    X86_SUB8mr	= 1466,
+    X86_SUB8ri	= 1467,
+    X86_SUB8rm	= 1468,
+    X86_SUB8rr	= 1469,
+    X86_SUB8rr_REV	= 1470,
+    X86_SWAPGS	= 1471,
+    X86_SYSCALL	= 1472,
+    X86_SYSENTER	= 1473,
+    X86_SYSEXIT	= 1474,
+    X86_SYSEXIT64	= 1475,
+    X86_SYSRET	= 1476,
+    X86_SYSRET64	= 1477,
+    X86_T1MSKC32rm	= 1478,
+    X86_T1MSKC32rr	= 1479,
+    X86_T1MSKC64rm	= 1480,
+    X86_T1MSKC64rr	= 1481,
+    X86_TAILJMPd	= 1482,
+    X86_TAILJMPd64	= 1483,
+    X86_TAILJMPm	= 1484,
+    X86_TAILJMPm64	= 1485,
+    X86_TAILJMPr	= 1486,
+    X86_TAILJMPr64	= 1487,
+    X86_TCRETURNdi	= 1488,
+    X86_TCRETURNdi64	= 1489,
+    X86_TCRETURNmi	= 1490,
+    X86_TCRETURNmi64	= 1491,
+    X86_TCRETURNri	= 1492,
+    X86_TCRETURNri64	= 1493,
+    X86_TEST16i16	= 1494,
+    X86_TEST16mi	= 1495,
+    X86_TEST16ri	= 1496,
+    X86_TEST16rm	= 1497,
+    X86_TEST16rr	= 1498,
+    X86_TEST32i32	= 1499,
+    X86_TEST32mi	= 1500,
+    X86_TEST32ri	= 1501,
+    X86_TEST32rm	= 1502,
+    X86_TEST32rr	= 1503,
+    X86_TEST64i32	= 1504,
+    X86_TEST64mi32	= 1505,
+    X86_TEST64ri32	= 1506,
+    X86_TEST64rm	= 1507,
+    X86_TEST64rr	= 1508,
+    X86_TEST8i8	= 1509,
+    X86_TEST8mi	= 1510,
+    X86_TEST8ri	= 1511,
+    X86_TEST8ri_NOREX	= 1512,
+    X86_TEST8rm	= 1513,
+    X86_TEST8rr	= 1514,
+    X86_TLSCall_32	= 1515,
+    X86_TLSCall_64	= 1516,
+    X86_TLS_addr32	= 1517,
+    X86_TLS_addr64	= 1518,
+    X86_TLS_base_addr32	= 1519,
+    X86_TLS_base_addr64	= 1520,
+    X86_TRAP	= 1521,
+    X86_TZCNT16rm	= 1522,
+    X86_TZCNT16rr	= 1523,
+    X86_TZCNT32rm	= 1524,
+    X86_TZCNT32rr	= 1525,
+    X86_TZCNT64rm	= 1526,
+    X86_TZCNT64rr	= 1527,
+    X86_TZMSK32rm	= 1528,
+    X86_TZMSK32rr	= 1529,
+    X86_TZMSK64rm	= 1530,
+    X86_TZMSK64rr	= 1531,
+    X86_UD2B	= 1532,
+    X86_VAARG_64	= 1533,
+    X86_VASTART_SAVE_XMM_REGS	= 1534,
+    X86_VERRm	= 1535,
+    X86_VERRr	= 1536,
+    X86_VERWm	= 1537,
+    X86_VERWr	= 1538,
+    X86_VMCALL	= 1539,
+    X86_VMCLEARm	= 1540,
+    X86_VMFUNC	= 1541,
+    X86_VMLAUNCH	= 1542,
+    X86_VMLOAD32	= 1543,
+    X86_VMLOAD64	= 1544,
+    X86_VMMCALL	= 1545,
+    X86_VMPTRLDm	= 1546,
+    X86_VMPTRSTm	= 1547,
+    X86_VMREAD32rm	= 1548,
+    X86_VMREAD32rr	= 1549,
+    X86_VMREAD64rm	= 1550,
+    X86_VMREAD64rr	= 1551,
+    X86_VMRESUME	= 1552,
+    X86_VMRUN32	= 1553,
+    X86_VMRUN64	= 1554,
+    X86_VMSAVE32	= 1555,
+    X86_VMSAVE64	= 1556,
+    X86_VMWRITE32rm	= 1557,
+    X86_VMWRITE32rr	= 1558,
+    X86_VMWRITE64rm	= 1559,
+    X86_VMWRITE64rr	= 1560,
+    X86_VMXOFF	= 1561,
+    X86_VMXON	= 1562,
+    X86_W64ALLOCA	= 1563,
+    X86_WBINVD	= 1564,
+    X86_WIN_ALLOCA	= 1565,
+    X86_WIN_FTOL_32	= 1566,
+    X86_WIN_FTOL_64	= 1567,
+    X86_WRFSBASE	= 1568,
+    X86_WRFSBASE64	= 1569,
+    X86_WRGSBASE	= 1570,
+    X86_WRGSBASE64	= 1571,
+    X86_WRMSR	= 1572,
+    X86_XADD16rm	= 1573,
+    X86_XADD16rr	= 1574,
+    X86_XADD32rm	= 1575,
+    X86_XADD32rr	= 1576,
+    X86_XADD64rm	= 1577,
+    X86_XADD64rr	= 1578,
+    X86_XADD8rm	= 1579,
+    X86_XADD8rr	= 1580,
+    X86_XCHG16ar	= 1581,
+    X86_XCHG16rm	= 1582,
+    X86_XCHG16rr	= 1583,
+    X86_XCHG32ar	= 1584,
+    X86_XCHG32ar64	= 1585,
+    X86_XCHG32rm	= 1586,
+    X86_XCHG32rr	= 1587,
+    X86_XCHG64ar	= 1588,
+    X86_XCHG64rm	= 1589,
+    X86_XCHG64rr	= 1590,
+    X86_XCHG8rm	= 1591,
+    X86_XCHG8rr	= 1592,
+    X86_XCRYPTCBC	= 1593,
+    X86_XCRYPTCFB	= 1594,
+    X86_XCRYPTCTR	= 1595,
+    X86_XCRYPTECB	= 1596,
+    X86_XCRYPTOFB	= 1597,
+    X86_XGETBV	= 1598,
+    X86_XLAT	= 1599,
+    X86_XOR16i16	= 1600,
+    X86_XOR16mi	= 1601,
+    X86_XOR16mi8	= 1602,
+    X86_XOR16mr	= 1603,
+    X86_XOR16ri	= 1604,
+    X86_XOR16ri8	= 1605,
+    X86_XOR16rm	= 1606,
+    X86_XOR16rr	= 1607,
+    X86_XOR16rr_REV	= 1608,
+    X86_XOR32i32	= 1609,
+    X86_XOR32mi	= 1610,
+    X86_XOR32mi8	= 1611,
+    X86_XOR32mr	= 1612,
+    X86_XOR32ri	= 1613,
+    X86_XOR32ri8	= 1614,
+    X86_XOR32rm	= 1615,
+    X86_XOR32rr	= 1616,
+    X86_XOR32rr_REV	= 1617,
+    X86_XOR64i32	= 1618,
+    X86_XOR64mi32	= 1619,
+    X86_XOR64mi8	= 1620,
+    X86_XOR64mr	= 1621,
+    X86_XOR64ri32	= 1622,
+    X86_XOR64ri8	= 1623,
+    X86_XOR64rm	= 1624,
+    X86_XOR64rr	= 1625,
+    X86_XOR64rr_REV	= 1626,
+    X86_XOR8i8	= 1627,
+    X86_XOR8mi	= 1628,
+    X86_XOR8mr	= 1629,
+    X86_XOR8ri	= 1630,
+    X86_XOR8rm	= 1631,
+    X86_XOR8rr	= 1632,
+    X86_XOR8rr_REV	= 1633,
+    X86_XRSTOR	= 1634,
+    X86_XRSTOR64	= 1635,
+    X86_XSAVE	= 1636,
+    X86_XSAVE64	= 1637,
+    X86_XSAVEOPT	= 1638,
+    X86_XSAVEOPT64	= 1639,
+    X86_XSETBV	= 1640,
+    X86_XSHA1	= 1641,
+    X86_XSHA256	= 1642,
+    X86_XSTORE	= 1643,
+    X86_INSTRUCTION_LIST_END = 1644
+};
+
+#endif // GET_INSTRINFO_ENUM
+
+
+#ifdef GET_INSTRINFO_MC_DESC
+#undef GET_INSTRINFO_MC_DESC
+
+static const char X86InstrNameData[] = {
+  /* 0 */ 'M', 'O', 'R', 'E', 'S', 'T', 'A', 'C', 'K', '_', 'R', 'E', 'T', '_', 'R', 'E', 'S', 'T', 'O', 'R', 'E', '_', 'R', '1', '0', 0,
+  /* 26 */ 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '8', '0', 0,
+  /* 37 */ 'M', 'O', 'V', '3', '2', 'r', '0', 0,
+  /* 45 */ 'X', 'S', 'H', 'A', '1', 0,
+  /* 51 */ 'I', 'N', 'T', '1', 0,
+  /* 56 */ 'J', 'A', '_', '1', 0,
+  /* 61 */ 'J', 'B', '_', '1', 0,
+  /* 66 */ 'J', 'A', 'E', '_', '1', 0,
+  /* 72 */ 'J', 'B', 'E', '_', '1', 0,
+  /* 78 */ 'J', 'G', 'E', '_', '1', 0,
+  /* 84 */ 'J', 'E', '_', '1', 0,
+  /* 89 */ 'J', 'L', 'E', '_', '1', 0,
+  /* 95 */ 'J', 'N', 'E', '_', '1', 0,
+  /* 101 */ 'J', 'G', '_', '1', 0,
+  /* 106 */ 'J', 'L', '_', '1', 0,
+  /* 111 */ 'J', 'O', '_', '1', 0,
+  /* 116 */ 'J', 'N', 'O', '_', '1', 0,
+  /* 122 */ 'J', 'P', '_', '1', 0,
+  /* 127 */ 'J', 'M', 'P', '_', '1', 0,
+  /* 133 */ 'J', 'N', 'P', '_', '1', 0,
+  /* 139 */ 'J', 'S', '_', '1', 0,
+  /* 144 */ 'J', 'N', 'S', '_', '1', 0,
+  /* 150 */ 'R', 'C', 'L', '3', '2', 'm', '1', 0,
+  /* 158 */ 'S', 'H', 'L', '3', '2', 'm', '1', 0,
+  /* 166 */ 'R', 'O', 'L', '3', '2', 'm', '1', 0,
+  /* 174 */ 'S', 'A', 'R', '3', '2', 'm', '1', 0,
+  /* 182 */ 'R', 'C', 'R', '3', '2', 'm', '1', 0,
+  /* 190 */ 'S', 'H', 'R', '3', '2', 'm', '1', 0,
+  /* 198 */ 'R', 'O', 'R', '3', '2', 'm', '1', 0,
+  /* 206 */ 'R', 'C', 'L', '6', '4', 'm', '1', 0,
+  /* 214 */ 'S', 'H', 'L', '6', '4', 'm', '1', 0,
+  /* 222 */ 'R', 'O', 'L', '6', '4', 'm', '1', 0,
+  /* 230 */ 'S', 'A', 'R', '6', '4', 'm', '1', 0,
+  /* 238 */ 'R', 'C', 'R', '6', '4', 'm', '1', 0,
+  /* 246 */ 'S', 'H', 'R', '6', '4', 'm', '1', 0,
+  /* 254 */ 'R', 'O', 'R', '6', '4', 'm', '1', 0,
+  /* 262 */ 'R', 'C', 'L', '1', '6', 'm', '1', 0,
+  /* 270 */ 'S', 'H', 'L', '1', '6', 'm', '1', 0,
+  /* 278 */ 'R', 'O', 'L', '1', '6', 'm', '1', 0,
+  /* 286 */ 'S', 'A', 'R', '1', '6', 'm', '1', 0,
+  /* 294 */ 'R', 'C', 'R', '1', '6', 'm', '1', 0,
+  /* 302 */ 'S', 'H', 'R', '1', '6', 'm', '1', 0,
+  /* 310 */ 'R', 'O', 'R', '1', '6', 'm', '1', 0,
+  /* 318 */ 'R', 'C', 'L', '8', 'm', '1', 0,
+  /* 325 */ 'S', 'H', 'L', '8', 'm', '1', 0,
+  /* 332 */ 'R', 'O', 'L', '8', 'm', '1', 0,
+  /* 339 */ 'S', 'A', 'R', '8', 'm', '1', 0,
+  /* 346 */ 'R', 'C', 'R', '8', 'm', '1', 0,
+  /* 353 */ 'S', 'H', 'R', '8', 'm', '1', 0,
+  /* 360 */ 'R', 'O', 'R', '8', 'm', '1', 0,
+  /* 367 */ 'R', 'C', 'L', '3', '2', 'r', '1', 0,
+  /* 375 */ 'S', 'H', 'L', '3', '2', 'r', '1', 0,
+  /* 383 */ 'R', 'O', 'L', '3', '2', 'r', '1', 0,
+  /* 391 */ 'S', 'A', 'R', '3', '2', 'r', '1', 0,
+  /* 399 */ 'R', 'C', 'R', '3', '2', 'r', '1', 0,
+  /* 407 */ 'S', 'H', 'R', '3', '2', 'r', '1', 0,
+  /* 415 */ 'R', 'O', 'R', '3', '2', 'r', '1', 0,
+  /* 423 */ 'R', 'C', 'L', '6', '4', 'r', '1', 0,
+  /* 431 */ 'S', 'H', 'L', '6', '4', 'r', '1', 0,
+  /* 439 */ 'R', 'O', 'L', '6', '4', 'r', '1', 0,
+  /* 447 */ 'S', 'A', 'R', '6', '4', 'r', '1', 0,
+  /* 455 */ 'R', 'C', 'R', '6', '4', 'r', '1', 0,
+  /* 463 */ 'S', 'H', 'R', '6', '4', 'r', '1', 0,
+  /* 471 */ 'R', 'O', 'R', '6', '4', 'r', '1', 0,
+  /* 479 */ 'R', 'C', 'L', '1', '6', 'r', '1', 0,
+  /* 487 */ 'S', 'H', 'L', '1', '6', 'r', '1', 0,
+  /* 495 */ 'R', 'O', 'L', '1', '6', 'r', '1', 0,
+  /* 503 */ 'S', 'A', 'R', '1', '6', 'r', '1', 0,
+  /* 511 */ 'R', 'C', 'R', '1', '6', 'r', '1', 0,
+  /* 519 */ 'S', 'H', 'R', '1', '6', 'r', '1', 0,
+  /* 527 */ 'R', 'O', 'R', '1', '6', 'r', '1', 0,
+  /* 535 */ 'R', 'C', 'L', '8', 'r', '1', 0,
+  /* 542 */ 'S', 'H', 'L', '8', 'r', '1', 0,
+  /* 549 */ 'R', 'O', 'L', '8', 'r', '1', 0,
+  /* 556 */ 'S', 'A', 'R', '8', 'r', '1', 0,
+  /* 563 */ 'R', 'C', 'R', '8', 'r', '1', 0,
+  /* 570 */ 'S', 'H', 'R', '8', 'r', '1', 0,
+  /* 577 */ 'R', 'O', 'R', '8', 'r', '1', 0,
+  /* 584 */ 'A', 'T', 'O', 'M', 'S', 'U', 'B', '6', '4', '3', '2', 0,
+  /* 596 */ 'A', 'T', 'O', 'M', 'A', 'D', 'D', '6', '4', '3', '2', 0,
+  /* 608 */ 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', '3', '2', 0,
+  /* 620 */ 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', '3', '2', 0,
+  /* 633 */ 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', '3', '2', 0,
+  /* 645 */ 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', '3', '2', 0,
+  /* 658 */ 'A', 'T', 'O', 'M', 'S', 'W', 'A', 'P', '6', '4', '3', '2', 0,
+  /* 671 */ 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', '3', '2', 0,
+  /* 682 */ 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', '3', '2', 0,
+  /* 694 */ 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', '3', '2', 0,
+  /* 706 */ 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', '3', '2', 0,
+  /* 719 */ 'I', 'N', 'V', 'L', 'P', 'G', 'A', '3', '2', 0,
+  /* 729 */ 'P', 'U', 'S', 'H', 'A', '3', '2', 0,
+  /* 737 */ 'P', 'O', 'P', 'A', '3', '2', 0,
+  /* 744 */ 'V', 'M', 'L', 'O', 'A', 'D', '3', '2', 0,
+  /* 753 */ 'L', 'X', 'A', 'D', 'D', '3', '2', 0,
+  /* 761 */ 'I', 'N', 'V', 'P', 'C', 'I', 'D', '3', '2', 0,
+  /* 771 */ 'I', 'N', 'V', 'V', 'P', 'I', 'D', '3', '2', 0,
+  /* 781 */ 'C', 'P', 'U', 'I', 'D', '3', '2', 0,
+  /* 789 */ 'A', 'T', 'O', 'M', 'A', 'N', 'D', '3', '2', 0,
+  /* 799 */ 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '3', '2', 0,
+  /* 810 */ 'V', 'M', 'S', 'A', 'V', 'E', '3', '2', 0,
+  /* 819 */ 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '3', '2', 0,
+  /* 830 */ 'C', 'M', 'O', 'V', '_', 'V', '1', '6', 'F', '3', '2', 0,
+  /* 842 */ 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '3', '2', 0,
+  /* 853 */ 'P', 'U', 'S', 'H', 'F', '3', '2', 0,
+  /* 861 */ 'P', 'O', 'P', 'F', '3', '2', 0,
+  /* 868 */ 'L', 'C', 'M', 'P', 'X', 'C', 'H', 'G', '3', '2', 0,
+  /* 879 */ 'A', 'T', 'O', 'M', 'M', 'I', 'N', '3', '2', 0,
+  /* 889 */ 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '3', '2', 0,
+  /* 900 */ 'V', 'M', 'R', 'U', 'N', '3', '2', 0,
+  /* 908 */ 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', '3', '2', 0,
+  /* 927 */ 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '3', '2', 0,
+  /* 938 */ 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', '3', '2', 0,
+  /* 955 */ 'C', 'M', 'O', 'V', '_', 'F', 'R', '3', '2', 0,
+  /* 965 */ 'C', 'M', 'O', 'V', '_', 'G', 'R', '3', '2', 0,
+  /* 975 */ 'A', 'T', 'O', 'M', 'O', 'R', '3', '2', 0,
+  /* 984 */ 'A', 'T', 'O', 'M', 'X', 'O', 'R', '3', '2', 0,
+  /* 994 */ 'S', 'C', 'A', 'S', '3', '2', 0,
+  /* 1001 */ 'P', 'U', 'S', 'H', 'C', 'S', '3', '2', 0,
+  /* 1010 */ 'P', 'U', 'S', 'H', 'D', 'S', '3', '2', 0,
+  /* 1019 */ 'P', 'O', 'P', 'D', 'S', '3', '2', 0,
+  /* 1027 */ 'P', 'U', 'S', 'H', 'E', 'S', '3', '2', 0,
+  /* 1036 */ 'P', 'O', 'P', 'E', 'S', '3', '2', 0,
+  /* 1044 */ 'P', 'U', 'S', 'H', 'F', 'S', '3', '2', 0,
+  /* 1053 */ 'P', 'O', 'P', 'F', 'S', '3', '2', 0,
+  /* 1061 */ 'P', 'U', 'S', 'H', 'G', 'S', '3', '2', 0,
+  /* 1070 */ 'P', 'O', 'P', 'G', 'S', '3', '2', 0,
+  /* 1078 */ 'C', 'M', 'P', 'S', '3', '2', 0,
+  /* 1085 */ 'P', 'U', 'S', 'H', 'S', 'S', '3', '2', 0,
+  /* 1094 */ 'P', 'O', 'P', 'S', 'S', '3', '2', 0,
+  /* 1102 */ 'I', 'R', 'E', 'T', '3', '2', 0,
+  /* 1109 */ 'I', 'N', 'V', 'E', 'P', 'T', '3', '2', 0,
+  /* 1118 */ 'A', 'T', 'O', 'M', 'M', 'A', 'X', '3', '2', 0,
+  /* 1128 */ 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '3', '2', 0,
+  /* 1139 */ 'S', 'E', 'G', '_', 'A', 'L', 'L', 'O', 'C', 'A', '_', '3', '2', 0,
+  /* 1153 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'B', '_', '3', '2', 0,
+  /* 1166 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'B', '_', '3', '2', 0,
+  /* 1179 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'D', '_', '3', '2', 0,
+  /* 1192 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'D', '_', '3', '2', 0,
+  /* 1205 */ 'W', 'I', 'N', '_', 'F', 'T', 'O', 'L', '_', '3', '2', 0,
+  /* 1217 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'W', '_', '3', '2', 0,
+  /* 1230 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'W', '_', '3', '2', 0,
+  /* 1243 */ 'J', 'E', 'C', 'X', 'Z', '_', '3', '2', 0,
+  /* 1252 */ 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '3', '2', 0,
+  /* 1263 */ 'S', 'B', 'B', '3', '2', 'i', '3', '2', 0,
+  /* 1272 */ 'S', 'U', 'B', '3', '2', 'i', '3', '2', 0,
+  /* 1281 */ 'A', 'D', 'C', '3', '2', 'i', '3', '2', 0,
+  /* 1290 */ 'A', 'D', 'D', '3', '2', 'i', '3', '2', 0,
+  /* 1299 */ 'A', 'N', 'D', '3', '2', 'i', '3', '2', 0,
+  /* 1308 */ 'C', 'M', 'P', '3', '2', 'i', '3', '2', 0,
+  /* 1317 */ 'X', 'O', 'R', '3', '2', 'i', '3', '2', 0,
+  /* 1326 */ 'T', 'E', 'S', 'T', '3', '2', 'i', '3', '2', 0,
+  /* 1336 */ 'S', 'B', 'B', '6', '4', 'i', '3', '2', 0,
+  /* 1345 */ 'S', 'U', 'B', '6', '4', 'i', '3', '2', 0,
+  /* 1354 */ 'A', 'D', 'C', '6', '4', 'i', '3', '2', 0,
+  /* 1363 */ 'A', 'D', 'D', '6', '4', 'i', '3', '2', 0,
+  /* 1372 */ 'A', 'N', 'D', '6', '4', 'i', '3', '2', 0,
+  /* 1381 */ 'P', 'U', 'S', 'H', '6', '4', 'i', '3', '2', 0,
+  /* 1391 */ 'C', 'M', 'P', '6', '4', 'i', '3', '2', 0,
+  /* 1400 */ 'X', 'O', 'R', '6', '4', 'i', '3', '2', 0,
+  /* 1409 */ 'T', 'E', 'S', 'T', '6', '4', 'i', '3', '2', 0,
+  /* 1419 */ 'P', 'U', 'S', 'H', 'i', '3', '2', 0,
+  /* 1427 */ 'S', 'B', 'B', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1437 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1452 */ 'A', 'D', 'C', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1462 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1477 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1492 */ 'C', 'M', 'P', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1502 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1517 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1531 */ 'T', 'E', 'S', 'T', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1542 */ 'M', 'O', 'V', '6', '4', 'm', 'i', '3', '2', 0,
+  /* 1552 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 'm', 'i', '3', '2', 0,
+  /* 1564 */ 'S', 'B', 'B', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1574 */ 'S', 'U', 'B', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1584 */ 'A', 'D', 'C', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1594 */ 'A', 'D', 'D', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1604 */ 'A', 'N', 'D', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1614 */ 'C', 'M', 'P', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1624 */ 'X', 'O', 'R', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1634 */ 'T', 'E', 'S', 'T', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1645 */ 'M', 'O', 'V', '6', '4', 'r', 'i', '3', '2', 0,
+  /* 1655 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 'r', 'i', '3', '2', 0,
+  /* 1667 */ 'C', 'A', 'L', 'L', '6', '4', 'p', 'c', 'r', 'e', 'l', '3', '2', 0,
+  /* 1681 */ 'C', 'A', 'L', 'L', 'p', 'c', 'r', 'e', 'l', '3', '2', 0,
+  /* 1693 */ 'M', 'O', 'V', 'S', 'X', '6', '4', 'r', 'm', '3', '2', 0,
+  /* 1705 */ 'M', 'O', 'V', '3', '2', 'a', 'o', '3', '2', 0,
+  /* 1715 */ 'M', 'O', 'V', '6', '4', 'a', 'o', '3', '2', 0,
+  /* 1725 */ 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'L', 'o', 'n', 'g', 'J', 'm', 'p', '3', '2', 0,
+  /* 1743 */ 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'J', 'm', 'p', '3', '2', 0,
+  /* 1760 */ 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '3', '2', 0,
+  /* 1771 */ 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '3', '2', 0,
+  /* 1787 */ 'M', 'O', 'V', 'S', 'X', '6', '4', 'r', 'r', '3', '2', 0,
+  /* 1799 */ 'J', 'A', '_', '2', 0,
+  /* 1804 */ 'J', 'B', '_', '2', 0,
+  /* 1809 */ 'J', 'A', 'E', '_', '2', 0,
+  /* 1815 */ 'J', 'B', 'E', '_', '2', 0,
+  /* 1821 */ 'J', 'G', 'E', '_', '2', 0,
+  /* 1827 */ 'J', 'E', '_', '2', 0,
+  /* 1832 */ 'J', 'L', 'E', '_', '2', 0,
+  /* 1838 */ 'J', 'N', 'E', '_', '2', 0,
+  /* 1844 */ 'J', 'G', '_', '2', 0,
+  /* 1849 */ 'J', 'L', '_', '2', 0,
+  /* 1854 */ 'J', 'O', '_', '2', 0,
+  /* 1859 */ 'J', 'N', 'O', '_', '2', 0,
+  /* 1865 */ 'J', 'P', '_', '2', 0,
+  /* 1870 */ 'J', 'M', 'P', '_', '2', 0,
+  /* 1876 */ 'J', 'N', 'P', '_', '2', 0,
+  /* 1882 */ 'J', 'S', '_', '2', 0,
+  /* 1887 */ 'J', 'N', 'S', '_', '2', 0,
+  /* 1893 */ 'I', 'N', 'T', '3', 0,
+  /* 1898 */ 'I', 'N', 'V', 'L', 'P', 'G', 'A', '6', '4', 0,
+  /* 1908 */ 'V', 'M', 'L', 'O', 'A', 'D', '6', '4', 0,
+  /* 1917 */ 'L', 'X', 'A', 'D', 'D', '6', '4', 0,
+  /* 1925 */ 'I', 'N', 'V', 'P', 'C', 'I', 'D', '6', '4', 0,
+  /* 1935 */ 'I', 'N', 'V', 'V', 'P', 'I', 'D', '6', '4', 0,
+  /* 1945 */ 'C', 'P', 'U', 'I', 'D', '6', '4', 0,
+  /* 1953 */ 'A', 'T', 'O', 'M', 'A', 'N', 'D', '6', '4', 0,
+  /* 1963 */ 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '6', '4', 0,
+  /* 1974 */ 'R', 'D', 'F', 'S', 'B', 'A', 'S', 'E', '6', '4', 0,
+  /* 1985 */ 'W', 'R', 'F', 'S', 'B', 'A', 'S', 'E', '6', '4', 0,
+  /* 1996 */ 'R', 'D', 'G', 'S', 'B', 'A', 'S', 'E', '6', '4', 0,
+  /* 2007 */ 'W', 'R', 'G', 'S', 'B', 'A', 'S', 'E', '6', '4', 0,
+  /* 2018 */ 'L', 'E', 'A', 'V', 'E', '6', '4', 0,
+  /* 2026 */ 'V', 'M', 'S', 'A', 'V', 'E', '6', '4', 0,
+  /* 2035 */ 'X', 'S', 'A', 'V', 'E', '6', '4', 0,
+  /* 2043 */ 'C', 'M', 'O', 'V', '_', 'V', '2', 'F', '6', '4', 0,
+  /* 2054 */ 'C', 'M', 'O', 'V', '_', 'V', '4', 'F', '6', '4', 0,
+  /* 2065 */ 'C', 'M', 'O', 'V', '_', 'V', '8', 'F', '6', '4', 0,
+  /* 2076 */ 'P', 'U', 'S', 'H', 'F', '6', '4', 0,
+  /* 2084 */ 'P', 'O', 'P', 'F', '6', '4', 0,
+  /* 2091 */ 'L', 'C', 'M', 'P', 'X', 'C', 'H', 'G', '6', '4', 0,
+  /* 2102 */ 'C', 'M', 'O', 'V', '_', 'V', '2', 'I', '6', '4', 0,
+  /* 2113 */ 'C', 'M', 'O', 'V', '_', 'V', '4', 'I', '6', '4', 0,
+  /* 2124 */ 'C', 'M', 'O', 'V', '_', 'V', '8', 'I', '6', '4', 0,
+  /* 2135 */ 'F', 'A', 'R', 'C', 'A', 'L', 'L', '6', '4', 0,
+  /* 2145 */ 'A', 'T', 'O', 'M', 'M', 'I', 'N', '6', '4', 0,
+  /* 2155 */ 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '6', '4', 0,
+  /* 2166 */ 'E', 'H', '_', 'R', 'E', 'T', 'U', 'R', 'N', '6', '4', 0,
+  /* 2178 */ 'V', 'M', 'R', 'U', 'N', '6', '4', 0,
+  /* 2186 */ 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'D', 'O', 'W', 'N', '6', '4', 0,
+  /* 2205 */ 'C', 'M', 'O', 'V', '_', 'R', 'F', 'P', '6', '4', 0,
+  /* 2216 */ 'F', 'A', 'R', 'J', 'M', 'P', '6', '4', 0,
+  /* 2225 */ 'A', 'D', 'J', 'C', 'A', 'L', 'L', 'S', 'T', 'A', 'C', 'K', 'U', 'P', '6', '4', 0,
+  /* 2242 */ 'C', 'M', 'O', 'V', '_', 'F', 'R', '6', '4', 0,
+  /* 2252 */ 'A', 'T', 'O', 'M', 'O', 'R', '6', '4', 0,
+  /* 2261 */ 'X', 'R', 'S', 'T', 'O', 'R', '6', '4', 0,
+  /* 2270 */ 'A', 'T', 'O', 'M', 'X', 'O', 'R', '6', '4', 0,
+  /* 2280 */ 'S', 'C', 'A', 'S', '6', '4', 0,
+  /* 2287 */ 'P', 'U', 'S', 'H', 'F', 'S', '6', '4', 0,
+  /* 2296 */ 'P', 'O', 'P', 'F', 'S', '6', '4', 0,
+  /* 2304 */ 'P', 'U', 'S', 'H', 'G', 'S', '6', '4', 0,
+  /* 2313 */ 'P', 'O', 'P', 'G', 'S', '6', '4', 0,
+  /* 2321 */ 'C', 'M', 'P', 'S', '6', '4', 0,
+  /* 2328 */ 'I', 'R', 'E', 'T', '6', '4', 0,
+  /* 2335 */ 'S', 'Y', 'S', 'R', 'E', 'T', '6', '4', 0,
+  /* 2344 */ 'S', 'Y', 'S', 'E', 'X', 'I', 'T', '6', '4', 0,
+  /* 2354 */ 'I', 'N', 'V', 'E', 'P', 'T', '6', '4', 0,
+  /* 2363 */ 'X', 'S', 'A', 'V', 'E', 'O', 'P', 'T', '6', '4', 0,
+  /* 2374 */ 'A', 'T', 'O', 'M', 'M', 'A', 'X', '6', '4', 0,
+  /* 2384 */ 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '6', '4', 0,
+  /* 2395 */ 'S', 'E', 'G', '_', 'A', 'L', 'L', 'O', 'C', 'A', '_', '6', '4', 0,
+  /* 2409 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'B', '_', '6', '4', 0,
+  /* 2422 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'B', '_', '6', '4', 0,
+  /* 2435 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'D', '_', '6', '4', 0,
+  /* 2448 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'D', '_', '6', '4', 0,
+  /* 2461 */ 'V', 'A', 'A', 'R', 'G', '_', '6', '4', 0,
+  /* 2470 */ 'W', 'I', 'N', '_', 'F', 'T', 'O', 'L', '_', '6', '4', 0,
+  /* 2482 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'Q', '_', '6', '4', 0,
+  /* 2495 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'Q', '_', '6', '4', 0,
+  /* 2508 */ 'R', 'E', 'P', '_', 'S', 'T', 'O', 'S', 'W', '_', '6', '4', 0,
+  /* 2521 */ 'R', 'E', 'P', '_', 'M', 'O', 'V', 'S', 'W', '_', '6', '4', 0,
+  /* 2534 */ 'J', 'E', 'C', 'X', 'Z', '_', '6', '4', 0,
+  /* 2543 */ 'T', 'L', 'S', 'C', 'a', 'l', 'l', '_', '6', '4', 0,
+  /* 2554 */ 'T', 'A', 'I', 'L', 'J', 'M', 'P', 'd', '6', '4', 0,
+  /* 2565 */ 'T', 'C', 'R', 'E', 'T', 'U', 'R', 'N', 'd', 'i', '6', '4', 0,
+  /* 2578 */ 'T', 'C', 'R', 'E', 'T', 'U', 'R', 'N', 'm', 'i', '6', '4', 0,
+  /* 2591 */ 'M', 'O', 'V', '3', '2', 'r', 'i', '6', '4', 0,
+  /* 2601 */ 'T', 'C', 'R', 'E', 'T', 'U', 'R', 'N', 'r', 'i', '6', '4', 0,
+  /* 2614 */ 'T', 'A', 'I', 'L', 'J', 'M', 'P', 'm', '6', '4', 0,
+  /* 2625 */ 'M', 'O', 'V', '6', '4', 'a', 'o', '6', '4', 0,
+  /* 2635 */ 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'L', 'o', 'n', 'g', 'J', 'm', 'p', '6', '4', 0,
+  /* 2653 */ 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'J', 'm', 'p', '6', '4', 0,
+  /* 2670 */ 'T', 'A', 'I', 'L', 'J', 'M', 'P', 'r', '6', '4', 0,
+  /* 2681 */ 'X', 'C', 'H', 'G', '3', '2', 'a', 'r', '6', '4', 0,
+  /* 2692 */ 'T', 'L', 'S', '_', 'a', 'd', 'd', 'r', '6', '4', 0,
+  /* 2703 */ 'T', 'L', 'S', '_', 'b', 'a', 's', 'e', '_', 'a', 'd', 'd', 'r', '6', '4', 0,
+  /* 2719 */ 'J', 'A', '_', '4', 0,
+  /* 2724 */ 'J', 'B', '_', '4', 0,
+  /* 2729 */ 'J', 'A', 'E', '_', '4', 0,
+  /* 2735 */ 'J', 'B', 'E', '_', '4', 0,
+  /* 2741 */ 'J', 'G', 'E', '_', '4', 0,
+  /* 2747 */ 'J', 'E', '_', '4', 0,
+  /* 2752 */ 'J', 'L', 'E', '_', '4', 0,
+  /* 2758 */ 'J', 'N', 'E', '_', '4', 0,
+  /* 2764 */ 'J', 'G', '_', '4', 0,
+  /* 2769 */ 'J', 'L', '_', '4', 0,
+  /* 2774 */ 'J', 'O', '_', '4', 0,
+  /* 2779 */ 'J', 'N', 'O', '_', '4', 0,
+  /* 2785 */ 'J', 'P', '_', '4', 0,
+  /* 2790 */ 'J', 'M', 'P', '_', '4', 0,
+  /* 2796 */ 'J', 'N', 'P', '_', '4', 0,
+  /* 2802 */ 'J', 'S', '_', '4', 0,
+  /* 2807 */ 'J', 'N', 'S', '_', '4', 0,
+  /* 2813 */ 'P', 'U', 'S', 'H', 'A', '1', '6', 0,
+  /* 2821 */ 'P', 'O', 'P', 'A', '1', '6', 0,
+  /* 2828 */ 'L', 'X', 'A', 'D', 'D', '1', '6', 0,
+  /* 2836 */ 'A', 'T', 'O', 'M', 'A', 'N', 'D', '1', '6', 0,
+  /* 2846 */ 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '1', '6', 0,
+  /* 2857 */ 'P', 'U', 'S', 'H', 'F', '1', '6', 0,
+  /* 2865 */ 'P', 'O', 'P', 'F', '1', '6', 0,
+  /* 2872 */ 'L', 'C', 'M', 'P', 'X', 'C', 'H', 'G', '1', '6', 0,
+  /* 2883 */ 'A', 'T', 'O', 'M', 'M', 'I', 'N', '1', '6', 0,
+  /* 2893 */ 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '1', '6', 0,
+  /* 2904 */ 'C', 'M', 'O', 'V', '_', 'G', 'R', '1', '6', 0,
+  /* 2914 */ 'A', 'T', 'O', 'M', 'O', 'R', '1', '6', 0,
+  /* 2923 */ 'A', 'T', 'O', 'M', 'X', 'O', 'R', '1', '6', 0,
+  /* 2933 */ 'S', 'C', 'A', 'S', '1', '6', 0,
+  /* 2940 */ 'P', 'U', 'S', 'H', 'C', 'S', '1', '6', 0,
+  /* 2949 */ 'P', 'U', 'S', 'H', 'D', 'S', '1', '6', 0,
+  /* 2958 */ 'P', 'O', 'P', 'D', 'S', '1', '6', 0,
+  /* 2966 */ 'P', 'U', 'S', 'H', 'E', 'S', '1', '6', 0,
+  /* 2975 */ 'P', 'O', 'P', 'E', 'S', '1', '6', 0,
+  /* 2983 */ 'P', 'U', 'S', 'H', 'F', 'S', '1', '6', 0,
+  /* 2992 */ 'P', 'O', 'P', 'F', 'S', '1', '6', 0,
+  /* 3000 */ 'P', 'U', 'S', 'H', 'G', 'S', '1', '6', 0,
+  /* 3009 */ 'P', 'O', 'P', 'G', 'S', '1', '6', 0,
+  /* 3017 */ 'C', 'M', 'P', 'S', '1', '6', 0,
+  /* 3024 */ 'P', 'U', 'S', 'H', 'S', 'S', '1', '6', 0,
+  /* 3033 */ 'P', 'O', 'P', 'S', 'S', '1', '6', 0,
+  /* 3041 */ 'I', 'R', 'E', 'T', '1', '6', 0,
+  /* 3048 */ 'A', 'T', 'O', 'M', 'M', 'A', 'X', '1', '6', 0,
+  /* 3058 */ 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '1', '6', 0,
+  /* 3069 */ 'M', 'O', 'V', '3', '2', 'a', 'o', '3', '2', '_', '1', '6', 0,
+  /* 3082 */ 'M', 'O', 'V', '1', '6', 'a', 'o', '1', '6', '_', '1', '6', 0,
+  /* 3095 */ 'M', 'O', 'V', '8', 'a', 'o', '8', '_', '1', '6', 0,
+  /* 3106 */ 'M', 'O', 'V', '3', '2', 'o', '3', '2', 'a', '_', '1', '6', 0,
+  /* 3119 */ 'M', 'O', 'V', '1', '6', 'o', '1', '6', 'a', '_', '1', '6', 0,
+  /* 3132 */ 'M', 'O', 'V', '8', 'o', '8', 'a', '_', '1', '6', 0,
+  /* 3143 */ 'P', 'U', 'S', 'H', '6', '4', 'i', '1', '6', 0,
+  /* 3153 */ 'S', 'B', 'B', '1', '6', 'i', '1', '6', 0,
+  /* 3162 */ 'S', 'U', 'B', '1', '6', 'i', '1', '6', 0,
+  /* 3171 */ 'A', 'D', 'C', '1', '6', 'i', '1', '6', 0,
+  /* 3180 */ 'A', 'D', 'D', '1', '6', 'i', '1', '6', 0,
+  /* 3189 */ 'A', 'N', 'D', '1', '6', 'i', '1', '6', 0,
+  /* 3198 */ 'C', 'M', 'P', '1', '6', 'i', '1', '6', 0,
+  /* 3207 */ 'X', 'O', 'R', '1', '6', 'i', '1', '6', 0,
+  /* 3216 */ 'T', 'E', 'S', 'T', '1', '6', 'i', '1', '6', 0,
+  /* 3226 */ 'P', 'U', 'S', 'H', 'i', '1', '6', 0,
+  /* 3234 */ 'C', 'A', 'L', 'L', 'p', 'c', 'r', 'e', 'l', '1', '6', 0,
+  /* 3246 */ 'M', 'O', 'V', 'S', 'X', '3', '2', 'r', 'm', '1', '6', 0,
+  /* 3258 */ 'M', 'O', 'V', 'Z', 'X', '3', '2', 'r', 'm', '1', '6', 0,
+  /* 3270 */ 'M', 'O', 'V', 'S', 'X', '6', '4', 'r', 'm', '1', '6', 0,
+  /* 3282 */ 'M', 'O', 'V', '6', '4', 'a', 'o', '1', '6', 0,
+  /* 3292 */ 'M', 'O', 'V', '1', '6', 'a', 'o', '1', '6', 0,
+  /* 3302 */ 'M', 'O', 'V', 'S', 'X', '3', '2', 'r', 'r', '1', '6', 0,
+  /* 3314 */ 'M', 'O', 'V', 'Z', 'X', '3', '2', 'r', 'r', '1', '6', 0,
+  /* 3326 */ 'M', 'O', 'V', 'S', 'X', '6', '4', 'r', 'r', '1', '6', 0,
+  /* 3338 */ 'X', 'S', 'H', 'A', '2', '5', '6', 0,
+  /* 3346 */ 'L', 'X', 'A', 'D', 'D', '8', 0,
+  /* 3353 */ 'A', 'T', 'O', 'M', 'A', 'N', 'D', '8', 0,
+  /* 3362 */ 'A', 'T', 'O', 'M', 'N', 'A', 'N', 'D', '8', 0,
+  /* 3372 */ 'L', 'C', 'M', 'P', 'X', 'C', 'H', 'G', '8', 0,
+  /* 3382 */ 'A', 'T', 'O', 'M', 'M', 'I', 'N', '8', 0,
+  /* 3391 */ 'A', 'T', 'O', 'M', 'U', 'M', 'I', 'N', '8', 0,
+  /* 3401 */ 'C', 'M', 'O', 'V', '_', 'G', 'R', '8', 0,
+  /* 3410 */ 'A', 'T', 'O', 'M', 'O', 'R', '8', 0,
+  /* 3418 */ 'A', 'T', 'O', 'M', 'X', 'O', 'R', '8', 0,
+  /* 3427 */ 'S', 'C', 'A', 'S', '8', 0,
+  /* 3433 */ 'C', 'M', 'P', 'S', '8', 0,
+  /* 3439 */ 'A', 'T', 'O', 'M', 'M', 'A', 'X', '8', 0,
+  /* 3448 */ 'A', 'T', 'O', 'M', 'U', 'M', 'A', 'X', '8', 0,
+  /* 3458 */ 'P', 'U', 'S', 'H', '3', '2', 'i', '8', 0,
+  /* 3467 */ 'P', 'U', 'S', 'H', '6', '4', 'i', '8', 0,
+  /* 3476 */ 'P', 'U', 'S', 'H', '1', '6', 'i', '8', 0,
+  /* 3485 */ 'S', 'B', 'B', '8', 'i', '8', 0,
+  /* 3492 */ 'S', 'U', 'B', '8', 'i', '8', 0,
+  /* 3499 */ 'A', 'D', 'C', '8', 'i', '8', 0,
+  /* 3506 */ 'A', 'A', 'D', '8', 'i', '8', 0,
+  /* 3513 */ 'A', 'D', 'D', '8', 'i', '8', 0,
+  /* 3520 */ 'A', 'N', 'D', '8', 'i', '8', 0,
+  /* 3527 */ 'A', 'A', 'M', '8', 'i', '8', 0,
+  /* 3534 */ 'C', 'M', 'P', '8', 'i', '8', 0,
+  /* 3541 */ 'X', 'O', 'R', '8', 'i', '8', 0,
+  /* 3548 */ 'T', 'E', 'S', 'T', '8', 'i', '8', 0,
+  /* 3556 */ 'S', 'B', 'B', '3', '2', 'm', 'i', '8', 0,
+  /* 3565 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '3', '2', 'm', 'i', '8', 0,
+  /* 3579 */ 'A', 'D', 'C', '3', '2', 'm', 'i', '8', 0,
+  /* 3588 */ 'B', 'T', 'C', '3', '2', 'm', 'i', '8', 0,
+  /* 3597 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '3', '2', 'm', 'i', '8', 0,
+  /* 3611 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '3', '2', 'm', 'i', '8', 0,
+  /* 3625 */ 'C', 'M', 'P', '3', '2', 'm', 'i', '8', 0,
+  /* 3634 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '3', '2', 'm', 'i', '8', 0,
+  /* 3648 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '3', '2', 'm', 'i', '8', 0,
+  /* 3661 */ 'B', 'T', 'R', '3', '2', 'm', 'i', '8', 0,
+  /* 3670 */ 'B', 'T', 'S', '3', '2', 'm', 'i', '8', 0,
+  /* 3679 */ 'B', 'T', '3', '2', 'm', 'i', '8', 0,
+  /* 3687 */ 'S', 'B', 'B', '6', '4', 'm', 'i', '8', 0,
+  /* 3696 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '6', '4', 'm', 'i', '8', 0,
+  /* 3710 */ 'A', 'D', 'C', '6', '4', 'm', 'i', '8', 0,
+  /* 3719 */ 'B', 'T', 'C', '6', '4', 'm', 'i', '8', 0,
+  /* 3728 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '6', '4', 'm', 'i', '8', 0,
+  /* 3742 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '6', '4', 'm', 'i', '8', 0,
+  /* 3756 */ 'C', 'M', 'P', '6', '4', 'm', 'i', '8', 0,
+  /* 3765 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '6', '4', 'm', 'i', '8', 0,
+  /* 3779 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '6', '4', 'm', 'i', '8', 0,
+  /* 3792 */ 'B', 'T', 'R', '6', '4', 'm', 'i', '8', 0,
+  /* 3801 */ 'B', 'T', 'S', '6', '4', 'm', 'i', '8', 0,
+  /* 3810 */ 'B', 'T', '6', '4', 'm', 'i', '8', 0,
+  /* 3818 */ 'S', 'B', 'B', '1', '6', 'm', 'i', '8', 0,
+  /* 3827 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '1', '6', 'm', 'i', '8', 0,
+  /* 3841 */ 'A', 'D', 'C', '1', '6', 'm', 'i', '8', 0,
+  /* 3850 */ 'B', 'T', 'C', '1', '6', 'm', 'i', '8', 0,
+  /* 3859 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '1', '6', 'm', 'i', '8', 0,
+  /* 3873 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '1', '6', 'm', 'i', '8', 0,
+  /* 3887 */ 'C', 'M', 'P', '1', '6', 'm', 'i', '8', 0,
+  /* 3896 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '1', '6', 'm', 'i', '8', 0,
+  /* 3910 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '1', '6', 'm', 'i', '8', 0,
+  /* 3923 */ 'B', 'T', 'R', '1', '6', 'm', 'i', '8', 0,
+  /* 3932 */ 'B', 'T', 'S', '1', '6', 'm', 'i', '8', 0,
+  /* 3941 */ 'B', 'T', '1', '6', 'm', 'i', '8', 0,
+  /* 3949 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 'm', 'i', '8', 0,
+  /* 3960 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 'm', 'i', '8', 0,
+  /* 3971 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 'm', 'i', '8', 0,
+  /* 3982 */ 'S', 'B', 'B', '3', '2', 'r', 'i', '8', 0,
+  /* 3991 */ 'S', 'U', 'B', '3', '2', 'r', 'i', '8', 0,
+  /* 4000 */ 'A', 'D', 'C', '3', '2', 'r', 'i', '8', 0,
+  /* 4009 */ 'B', 'T', 'C', '3', '2', 'r', 'i', '8', 0,
+  /* 4018 */ 'A', 'D', 'D', '3', '2', 'r', 'i', '8', 0,
+  /* 4027 */ 'A', 'N', 'D', '3', '2', 'r', 'i', '8', 0,
+  /* 4036 */ 'C', 'M', 'P', '3', '2', 'r', 'i', '8', 0,
+  /* 4045 */ 'X', 'O', 'R', '3', '2', 'r', 'i', '8', 0,
+  /* 4054 */ 'B', 'T', 'R', '3', '2', 'r', 'i', '8', 0,
+  /* 4063 */ 'B', 'T', 'S', '3', '2', 'r', 'i', '8', 0,
+  /* 4072 */ 'B', 'T', '3', '2', 'r', 'i', '8', 0,
+  /* 4080 */ 'S', 'B', 'B', '6', '4', 'r', 'i', '8', 0,
+  /* 4089 */ 'S', 'U', 'B', '6', '4', 'r', 'i', '8', 0,
+  /* 4098 */ 'A', 'D', 'C', '6', '4', 'r', 'i', '8', 0,
+  /* 4107 */ 'B', 'T', 'C', '6', '4', 'r', 'i', '8', 0,
+  /* 4116 */ 'A', 'D', 'D', '6', '4', 'r', 'i', '8', 0,
+  /* 4125 */ 'A', 'N', 'D', '6', '4', 'r', 'i', '8', 0,
+  /* 4134 */ 'C', 'M', 'P', '6', '4', 'r', 'i', '8', 0,
+  /* 4143 */ 'X', 'O', 'R', '6', '4', 'r', 'i', '8', 0,
+  /* 4152 */ 'B', 'T', 'R', '6', '4', 'r', 'i', '8', 0,
+  /* 4161 */ 'B', 'T', 'S', '6', '4', 'r', 'i', '8', 0,
+  /* 4170 */ 'B', 'T', '6', '4', 'r', 'i', '8', 0,
+  /* 4178 */ 'S', 'B', 'B', '1', '6', 'r', 'i', '8', 0,
+  /* 4187 */ 'S', 'U', 'B', '1', '6', 'r', 'i', '8', 0,
+  /* 4196 */ 'A', 'D', 'C', '1', '6', 'r', 'i', '8', 0,
+  /* 4205 */ 'B', 'T', 'C', '1', '6', 'r', 'i', '8', 0,
+  /* 4214 */ 'A', 'D', 'D', '1', '6', 'r', 'i', '8', 0,
+  /* 4223 */ 'A', 'N', 'D', '1', '6', 'r', 'i', '8', 0,
+  /* 4232 */ 'C', 'M', 'P', '1', '6', 'r', 'i', '8', 0,
+  /* 4241 */ 'X', 'O', 'R', '1', '6', 'r', 'i', '8', 0,
+  /* 4250 */ 'B', 'T', 'R', '1', '6', 'r', 'i', '8', 0,
+  /* 4259 */ 'B', 'T', 'S', '1', '6', 'r', 'i', '8', 0,
+  /* 4268 */ 'B', 'T', '1', '6', 'r', 'i', '8', 0,
+  /* 4276 */ 'S', 'H', 'L', 'D', '3', '2', 'm', 'r', 'i', '8', 0,
+  /* 4287 */ 'S', 'H', 'R', 'D', '3', '2', 'm', 'r', 'i', '8', 0,
+  /* 4298 */ 'S', 'H', 'L', 'D', '6', '4', 'm', 'r', 'i', '8', 0,
+  /* 4309 */ 'S', 'H', 'R', 'D', '6', '4', 'm', 'r', 'i', '8', 0,
+  /* 4320 */ 'S', 'H', 'L', 'D', '1', '6', 'm', 'r', 'i', '8', 0,
+  /* 4331 */ 'S', 'H', 'R', 'D', '1', '6', 'm', 'r', 'i', '8', 0,
+  /* 4342 */ 'S', 'H', 'L', 'D', '3', '2', 'r', 'r', 'i', '8', 0,
+  /* 4353 */ 'S', 'H', 'R', 'D', '3', '2', 'r', 'r', 'i', '8', 0,
+  /* 4364 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 'r', 'i', '8', 0,
+  /* 4375 */ 'S', 'H', 'L', 'D', '6', '4', 'r', 'r', 'i', '8', 0,
+  /* 4386 */ 'S', 'H', 'R', 'D', '6', '4', 'r', 'r', 'i', '8', 0,
+  /* 4397 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 'r', 'i', '8', 0,
+  /* 4408 */ 'S', 'H', 'L', 'D', '1', '6', 'r', 'r', 'i', '8', 0,
+  /* 4419 */ 'S', 'H', 'R', 'D', '1', '6', 'r', 'r', 'i', '8', 0,
+  /* 4430 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 'r', 'i', '8', 0,
+  /* 4441 */ 'M', 'O', 'V', 'S', 'X', '3', '2', 'r', 'm', '8', 0,
+  /* 4452 */ 'M', 'O', 'V', 'Z', 'X', '3', '2', 'r', 'm', '8', 0,
+  /* 4463 */ 'M', 'O', 'V', 'S', 'X', '6', '4', 'r', 'm', '8', 0,
+  /* 4474 */ 'M', 'O', 'V', 'S', 'X', '1', '6', 'r', 'm', '8', 0,
+  /* 4485 */ 'M', 'O', 'V', 'Z', 'X', '1', '6', 'r', 'm', '8', 0,
+  /* 4496 */ 'M', 'O', 'V', 'Z', 'X', '3', '2', '_', 'N', 'O', 'R', 'E', 'X', 'r', 'm', '8', 0,
+  /* 4513 */ 'M', 'O', 'V', '6', '4', 'a', 'o', '8', 0,
+  /* 4522 */ 'M', 'O', 'V', '8', 'a', 'o', '8', 0,
+  /* 4530 */ 'M', 'O', 'V', 'S', 'X', '3', '2', 'r', 'r', '8', 0,
+  /* 4541 */ 'M', 'O', 'V', 'Z', 'X', '3', '2', 'r', 'r', '8', 0,
+  /* 4552 */ 'M', 'O', 'V', 'S', 'X', '6', '4', 'r', 'r', '8', 0,
+  /* 4563 */ 'M', 'O', 'V', 'S', 'X', '1', '6', 'r', 'r', '8', 0,
+  /* 4574 */ 'M', 'O', 'V', 'Z', 'X', '1', '6', 'r', 'r', '8', 0,
+  /* 4585 */ 'M', 'O', 'V', 'Z', 'X', '3', '2', '_', 'N', 'O', 'R', 'E', 'X', 'r', 'r', '8', 0,
+  /* 4602 */ 'A', 'A', 'A', 0,
+  /* 4606 */ 'D', 'A', 'A', 0,
+  /* 4610 */ 'W', '6', '4', 'A', 'L', 'L', 'O', 'C', 'A', 0,
+  /* 4620 */ 'W', 'I', 'N', '_', 'A', 'L', 'L', 'O', 'C', 'A', 0,
+  /* 4631 */ 'U', 'D', '2', 'B', 0,
+  /* 4636 */ 'L', 'C', 'M', 'P', 'X', 'C', 'H', 'G', '1', '6', 'B', 0,
+  /* 4648 */ 'L', 'C', 'M', 'P', 'X', 'C', 'H', 'G', '8', 'B', 0,
+  /* 4659 */ 'X', 'C', 'R', 'Y', 'P', 'T', 'E', 'C', 'B', 0,
+  /* 4669 */ 'A', 'D', 'D', '6', '4', 'r', 'i', '3', '2', '_', 'D', 'B', 0,
+  /* 4682 */ 'A', 'D', 'D', '3', '2', 'r', 'i', '8', '_', 'D', 'B', 0,
+  /* 4694 */ 'A', 'D', 'D', '6', '4', 'r', 'i', '8', '_', 'D', 'B', 0,
+  /* 4706 */ 'A', 'D', 'D', '1', '6', 'r', 'i', '8', '_', 'D', 'B', 0,
+  /* 4718 */ 'A', 'D', 'D', '3', '2', 'r', 'i', '_', 'D', 'B', 0,
+  /* 4729 */ 'A', 'D', 'D', '1', '6', 'r', 'i', '_', 'D', 'B', 0,
+  /* 4740 */ 'A', 'D', 'D', '3', '2', 'r', 'r', '_', 'D', 'B', 0,
+  /* 4751 */ 'A', 'D', 'D', '6', '4', 'r', 'r', '_', 'D', 'B', 0,
+  /* 4762 */ 'A', 'D', 'D', '1', '6', 'r', 'r', '_', 'D', 'B', 0,
+  /* 4773 */ 'X', 'C', 'R', 'Y', 'P', 'T', 'C', 'F', 'B', 0,
+  /* 4783 */ 'X', 'C', 'R', 'Y', 'P', 'T', 'O', 'F', 'B', 0,
+  /* 4793 */ 'L', 'O', 'D', 'S', 'B', 0,
+  /* 4799 */ 'S', 'T', 'O', 'S', 'B', 0,
+  /* 4805 */ 'O', 'U', 'T', 'S', 'B', 0,
+  /* 4811 */ 'M', 'O', 'V', 'S', 'B', 0,
+  /* 4817 */ 'C', 'L', 'A', 'C', 0,
+  /* 4822 */ 'S', 'T', 'A', 'C', 0,
+  /* 4827 */ 'X', 'C', 'R', 'Y', 'P', 'T', 'C', 'B', 'C', 0,
+  /* 4837 */ 'G', 'E', 'T', 'S', 'E', 'C', 0,
+  /* 4844 */ 'S', 'A', 'L', 'C', 0,
+  /* 4849 */ 'C', 'L', 'C', 0,
+  /* 4853 */ 'C', 'M', 'C', 0,
+  /* 4857 */ 'R', 'D', 'P', 'M', 'C', 0,
+  /* 4863 */ 'V', 'M', 'F', 'U', 'N', 'C', 0,
+  /* 4870 */ 'R', 'D', 'T', 'S', 'C', 0,
+  /* 4876 */ 'S', 'T', 'C', 0,
+  /* 4880 */ 'C', 'L', 'D', 0,
+  /* 4884 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'E', 'N', 'D', 0,
+  /* 4897 */ 'S', 'T', 'D', 0,
+  /* 4901 */ 'W', 'B', 'I', 'N', 'V', 'D', 0,
+  /* 4908 */ 'C', 'W', 'D', 0,
+  /* 4912 */ 'R', 'E', 'G', '_', 'S', 'E', 'Q', 'U', 'E', 'N', 'C', 'E', 0,
+  /* 4925 */ 'C', 'W', 'D', 'E', 0,
+  /* 4930 */ 'B', 'U', 'N', 'D', 'L', 'E', 0,
+  /* 4937 */ 'V', 'M', 'R', 'E', 'S', 'U', 'M', 'E', 0,
+  /* 4946 */ 'L', 'O', 'O', 'P', 'N', 'E', 0,
+  /* 4953 */ 'L', 'O', 'O', 'P', 'E', 0,
+  /* 4959 */ 'C', 'D', 'Q', 'E', 0,
+  /* 4964 */ 'X', 'S', 'T', 'O', 'R', 'E', 0,
+  /* 4971 */ 'R', 'D', 'F', 'S', 'B', 'A', 'S', 'E', 0,
+  /* 4980 */ 'W', 'R', 'F', 'S', 'B', 'A', 'S', 'E', 0,
+  /* 4989 */ 'R', 'D', 'G', 'S', 'B', 'A', 'S', 'E', 0,
+  /* 4998 */ 'W', 'R', 'G', 'S', 'B', 'A', 'S', 'E', 0,
+  /* 5007 */ 'D', 'B', 'G', '_', 'V', 'A', 'L', 'U', 'E', 0,
+  /* 5017 */ 'L', 'E', 'A', 'V', 'E', 0,
+  /* 5023 */ 'X', 'S', 'A', 'V', 'E', 0,
+  /* 5029 */ 'I', 'M', 'P', 'L', 'I', 'C', 'I', 'T', '_', 'D', 'E', 'F', 0,
+  /* 5042 */ 'V', 'M', 'X', 'O', 'F', 'F', 0,
+  /* 5049 */ 'L', 'A', 'H', 'F', 0,
+  /* 5054 */ 'S', 'A', 'H', 'F', 0,
+  /* 5059 */ 'E', 'X', 'T', 'R', 'A', 'C', 'T', '_', 'S', 'U', 'B', 'R', 'E', 'G', 0,
+  /* 5074 */ 'I', 'N', 'S', 'E', 'R', 'T', '_', 'S', 'U', 'B', 'R', 'E', 'G', 0,
+  /* 5088 */ 'S', 'U', 'B', 'R', 'E', 'G', '_', 'T', 'O', '_', 'R', 'E', 'G', 0,
+  /* 5102 */ 'I', 'N', 'V', 'L', 'P', 'G', 0,
+  /* 5109 */ 'V', 'M', 'L', 'A', 'U', 'N', 'C', 'H', 0,
+  /* 5118 */ 'C', 'L', 'G', 'I', 0,
+  /* 5123 */ 'S', 'T', 'G', 'I', 0,
+  /* 5128 */ 'P', 'H', 'I', 0,
+  /* 5132 */ 'C', 'L', 'I', 0,
+  /* 5136 */ 'S', 'T', 'I', 0,
+  /* 5140 */ 'R', 'C', 'L', '3', '2', 'm', 'C', 'L', 0,
+  /* 5149 */ 'S', 'H', 'L', '3', '2', 'm', 'C', 'L', 0,
+  /* 5158 */ 'R', 'O', 'L', '3', '2', 'm', 'C', 'L', 0,
+  /* 5167 */ 'S', 'A', 'R', '3', '2', 'm', 'C', 'L', 0,
+  /* 5176 */ 'R', 'C', 'R', '3', '2', 'm', 'C', 'L', 0,
+  /* 5185 */ 'S', 'H', 'R', '3', '2', 'm', 'C', 'L', 0,
+  /* 5194 */ 'R', 'O', 'R', '3', '2', 'm', 'C', 'L', 0,
+  /* 5203 */ 'R', 'C', 'L', '6', '4', 'm', 'C', 'L', 0,
+  /* 5212 */ 'S', 'H', 'L', '6', '4', 'm', 'C', 'L', 0,
+  /* 5221 */ 'R', 'O', 'L', '6', '4', 'm', 'C', 'L', 0,
+  /* 5230 */ 'S', 'A', 'R', '6', '4', 'm', 'C', 'L', 0,
+  /* 5239 */ 'R', 'C', 'R', '6', '4', 'm', 'C', 'L', 0,
+  /* 5248 */ 'S', 'H', 'R', '6', '4', 'm', 'C', 'L', 0,
+  /* 5257 */ 'R', 'O', 'R', '6', '4', 'm', 'C', 'L', 0,
+  /* 5266 */ 'R', 'C', 'L', '1', '6', 'm', 'C', 'L', 0,
+  /* 5275 */ 'S', 'H', 'L', '1', '6', 'm', 'C', 'L', 0,
+  /* 5284 */ 'R', 'O', 'L', '1', '6', 'm', 'C', 'L', 0,
+  /* 5293 */ 'S', 'A', 'R', '1', '6', 'm', 'C', 'L', 0,
+  /* 5302 */ 'R', 'C', 'R', '1', '6', 'm', 'C', 'L', 0,
+  /* 5311 */ 'S', 'H', 'R', '1', '6', 'm', 'C', 'L', 0,
+  /* 5320 */ 'R', 'O', 'R', '1', '6', 'm', 'C', 'L', 0,
+  /* 5329 */ 'R', 'C', 'L', '8', 'm', 'C', 'L', 0,
+  /* 5337 */ 'S', 'H', 'L', '8', 'm', 'C', 'L', 0,
+  /* 5345 */ 'R', 'O', 'L', '8', 'm', 'C', 'L', 0,
+  /* 5353 */ 'S', 'A', 'R', '8', 'm', 'C', 'L', 0,
+  /* 5361 */ 'R', 'C', 'R', '8', 'm', 'C', 'L', 0,
+  /* 5369 */ 'S', 'H', 'R', '8', 'm', 'C', 'L', 0,
+  /* 5377 */ 'R', 'O', 'R', '8', 'm', 'C', 'L', 0,
+  /* 5385 */ 'R', 'C', 'L', '3', '2', 'r', 'C', 'L', 0,
+  /* 5394 */ 'S', 'H', 'L', '3', '2', 'r', 'C', 'L', 0,
+  /* 5403 */ 'R', 'O', 'L', '3', '2', 'r', 'C', 'L', 0,
+  /* 5412 */ 'S', 'A', 'R', '3', '2', 'r', 'C', 'L', 0,
+  /* 5421 */ 'R', 'C', 'R', '3', '2', 'r', 'C', 'L', 0,
+  /* 5430 */ 'S', 'H', 'R', '3', '2', 'r', 'C', 'L', 0,
+  /* 5439 */ 'R', 'O', 'R', '3', '2', 'r', 'C', 'L', 0,
+  /* 5448 */ 'R', 'C', 'L', '6', '4', 'r', 'C', 'L', 0,
+  /* 5457 */ 'S', 'H', 'L', '6', '4', 'r', 'C', 'L', 0,
+  /* 5466 */ 'R', 'O', 'L', '6', '4', 'r', 'C', 'L', 0,
+  /* 5475 */ 'S', 'A', 'R', '6', '4', 'r', 'C', 'L', 0,
+  /* 5484 */ 'R', 'C', 'R', '6', '4', 'r', 'C', 'L', 0,
+  /* 5493 */ 'S', 'H', 'R', '6', '4', 'r', 'C', 'L', 0,
+  /* 5502 */ 'R', 'O', 'R', '6', '4', 'r', 'C', 'L', 0,
+  /* 5511 */ 'R', 'C', 'L', '1', '6', 'r', 'C', 'L', 0,
+  /* 5520 */ 'S', 'H', 'L', '1', '6', 'r', 'C', 'L', 0,
+  /* 5529 */ 'R', 'O', 'L', '1', '6', 'r', 'C', 'L', 0,
+  /* 5538 */ 'S', 'A', 'R', '1', '6', 'r', 'C', 'L', 0,
+  /* 5547 */ 'R', 'C', 'R', '1', '6', 'r', 'C', 'L', 0,
+  /* 5556 */ 'S', 'H', 'R', '1', '6', 'r', 'C', 'L', 0,
+  /* 5565 */ 'R', 'O', 'R', '1', '6', 'r', 'C', 'L', 0,
+  /* 5574 */ 'R', 'C', 'L', '8', 'r', 'C', 'L', 0,
+  /* 5582 */ 'S', 'H', 'L', '8', 'r', 'C', 'L', 0,
+  /* 5590 */ 'R', 'O', 'L', '8', 'r', 'C', 'L', 0,
+  /* 5598 */ 'S', 'A', 'R', '8', 'r', 'C', 'L', 0,
+  /* 5606 */ 'R', 'C', 'R', '8', 'r', 'C', 'L', 0,
+  /* 5614 */ 'S', 'H', 'R', '8', 'r', 'C', 'L', 0,
+  /* 5622 */ 'R', 'O', 'R', '8', 'r', 'C', 'L', 0,
+  /* 5630 */ 'S', 'H', 'L', 'D', '3', '2', 'm', 'r', 'C', 'L', 0,
+  /* 5641 */ 'S', 'H', 'R', 'D', '3', '2', 'm', 'r', 'C', 'L', 0,
+  /* 5652 */ 'S', 'H', 'L', 'D', '6', '4', 'm', 'r', 'C', 'L', 0,
+  /* 5663 */ 'S', 'H', 'R', 'D', '6', '4', 'm', 'r', 'C', 'L', 0,
+  /* 5674 */ 'S', 'H', 'L', 'D', '1', '6', 'm', 'r', 'C', 'L', 0,
+  /* 5685 */ 'S', 'H', 'R', 'D', '1', '6', 'm', 'r', 'C', 'L', 0,
+  /* 5696 */ 'S', 'H', 'L', 'D', '3', '2', 'r', 'r', 'C', 'L', 0,
+  /* 5707 */ 'S', 'H', 'R', 'D', '3', '2', 'r', 'r', 'C', 'L', 0,
+  /* 5718 */ 'S', 'H', 'L', 'D', '6', '4', 'r', 'r', 'C', 'L', 0,
+  /* 5729 */ 'S', 'H', 'R', 'D', '6', '4', 'r', 'r', 'C', 'L', 0,
+  /* 5740 */ 'S', 'H', 'L', 'D', '1', '6', 'r', 'r', 'C', 'L', 0,
+  /* 5751 */ 'S', 'H', 'R', 'D', '1', '6', 'r', 'r', 'C', 'L', 0,
+  /* 5762 */ 'G', 'C', '_', 'L', 'A', 'B', 'E', 'L', 0,
+  /* 5771 */ 'P', 'R', 'O', 'L', 'O', 'G', '_', 'L', 'A', 'B', 'E', 'L', 0,
+  /* 5784 */ 'E', 'H', '_', 'L', 'A', 'B', 'E', 'L', 0,
+  /* 5793 */ 'L', 'R', 'E', 'T', 'I', 'L', 0,
+  /* 5800 */ 'V', 'M', 'M', 'C', 'A', 'L', 'L', 0,
+  /* 5808 */ 'V', 'M', 'C', 'A', 'L', 'L', 0,
+  /* 5815 */ 'S', 'Y', 'S', 'C', 'A', 'L', 'L', 0,
+  /* 5823 */ 'K', 'I', 'L', 'L', 0,
+  /* 5828 */ 'N', 'O', 'O', 'P', 'L', 0,
+  /* 5834 */ 'L', 'O', 'D', 'S', 'L', 0,
+  /* 5840 */ 'S', 'T', 'O', 'S', 'L', 0,
+  /* 5846 */ 'O', 'U', 'T', 'S', 'L', 0,
+  /* 5852 */ 'M', 'O', 'V', 'S', 'L', 0,
+  /* 5858 */ 'L', 'R', 'E', 'T', 'L', 0,
+  /* 5864 */ 'M', 'O', 'N', 'T', 'M', 'U', 'L', 0,
+  /* 5872 */ 'F', 'S', 'E', 'T', 'P', 'M', 0,
+  /* 5879 */ 'I', 'N', 'L', 'I', 'N', 'E', 'A', 'S', 'M', 0,
+  /* 5889 */ 'R', 'S', 'M', 0,
+  /* 5893 */ 'V', 'M', 'X', 'O', 'N', 0,
+  /* 5899 */ 'E', 'H', '_', 'R', 'E', 'T', 'U', 'R', 'N', 0,
+  /* 5909 */ 'C', 'Q', 'O', 0,
+  /* 5913 */ 'I', 'N', 'T', 'O', 0,
+  /* 5918 */ 'S', 'T', 'A', 'C', 'K', 'M', 'A', 'P', 0,
+  /* 5927 */ 'T', 'R', 'A', 'P', 0,
+  /* 5932 */ 'R', 'D', 'T', 'S', 'C', 'P', 0,
+  /* 5939 */ 'L', 'O', 'O', 'P', 0,
+  /* 5944 */ 'N', 'O', 'O', 'P', 0,
+  /* 5949 */ 'C', 'D', 'Q', 0,
+  /* 5953 */ 'L', 'R', 'E', 'T', 'I', 'Q', 0,
+  /* 5960 */ 'L', 'O', 'D', 'S', 'Q', 0,
+  /* 5966 */ 'S', 'T', 'O', 'S', 'Q', 0,
+  /* 5972 */ 'M', 'O', 'V', 'S', 'Q', 0,
+  /* 5978 */ 'L', 'R', 'E', 'T', 'Q', 0,
+  /* 5984 */ 'M', 'O', 'V', 'Z', 'X', '6', '4', 'r', 'm', '1', '6', '_', 'Q', 0,
+  /* 5998 */ 'M', 'O', 'V', 'Z', 'X', '6', '4', 'r', 'r', '1', '6', '_', 'Q', 0,
+  /* 6012 */ 'M', 'O', 'V', 'Z', 'X', '6', '4', 'r', 'm', '8', '_', 'Q', 0,
+  /* 6025 */ 'M', 'O', 'V', 'Z', 'X', '6', '4', 'r', 'r', '8', '_', 'Q', 0,
+  /* 6038 */ 'S', 'Y', 'S', 'E', 'N', 'T', 'E', 'R', 0,
+  /* 6047 */ 'X', 'R', 'S', 'T', 'O', 'R', 0,
+  /* 6054 */ 'R', 'D', 'M', 'S', 'R', 0,
+  /* 6060 */ 'W', 'R', 'M', 'S', 'R', 0,
+  /* 6066 */ 'X', 'C', 'R', 'Y', 'P', 'T', 'C', 'T', 'R', 0,
+  /* 6076 */ 'A', 'A', 'S', 0,
+  /* 6080 */ 'D', 'A', 'S', 0,
+  /* 6084 */ 'V', 'A', 'S', 'T', 'A', 'R', 'T', '_', 'S', 'A', 'V', 'E', '_', 'X', 'M', 'M', '_', 'R', 'E', 'G', 'S', 0,
+  /* 6106 */ 'S', 'W', 'A', 'P', 'G', 'S', 0,
+  /* 6113 */ 'C', 'O', 'P', 'Y', '_', 'T', 'O', '_', 'R', 'E', 'G', 'C', 'L', 'A', 'S', 'S', 0,
+  /* 6130 */ 'C', 'L', 'T', 'S', 0,
+  /* 6135 */ 'X', 'L', 'A', 'T', 0,
+  /* 6140 */ 'S', 'Y', 'S', 'R', 'E', 'T', 0,
+  /* 6147 */ 'M', 'O', 'R', 'E', 'S', 'T', 'A', 'C', 'K', '_', 'R', 'E', 'T', 0,
+  /* 6161 */ 'S', 'K', 'I', 'N', 'I', 'T', 0,
+  /* 6168 */ 'S', 'Y', 'S', 'E', 'X', 'I', 'T', 0,
+  /* 6176 */ 'H', 'L', 'T', 0,
+  /* 6180 */ 'P', 'A', 'T', 'C', 'H', 'P', 'O', 'I', 'N', 'T', 0,
+  /* 6191 */ 'X', 'S', 'A', 'V', 'E', 'O', 'P', 'T', 0,
+  /* 6200 */ 'L', 'I', 'F', 'E', 'T', 'I', 'M', 'E', '_', 'S', 'T', 'A', 'R', 'T', 0,
+  /* 6215 */ 'X', 'G', 'E', 'T', 'B', 'V', 0,
+  /* 6222 */ 'X', 'S', 'E', 'T', 'B', 'V', 0,
+  /* 6229 */ 'S', 'B', 'B', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6241 */ 'S', 'U', 'B', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6253 */ 'A', 'D', 'C', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6265 */ 'A', 'D', 'D', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6277 */ 'A', 'N', 'D', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6289 */ 'C', 'M', 'P', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6301 */ 'X', 'O', 'R', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6313 */ 'M', 'O', 'V', '3', '2', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6325 */ 'S', 'B', 'B', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6337 */ 'S', 'U', 'B', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6349 */ 'A', 'D', 'C', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6361 */ 'A', 'D', 'D', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6373 */ 'A', 'N', 'D', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6385 */ 'C', 'M', 'P', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6397 */ 'X', 'O', 'R', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6409 */ 'M', 'O', 'V', '6', '4', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6421 */ 'S', 'B', 'B', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6433 */ 'S', 'U', 'B', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6445 */ 'A', 'D', 'C', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6457 */ 'A', 'D', 'D', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6469 */ 'A', 'N', 'D', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6481 */ 'C', 'M', 'P', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6493 */ 'X', 'O', 'R', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6505 */ 'M', 'O', 'V', '1', '6', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6517 */ 'S', 'B', 'B', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6528 */ 'S', 'U', 'B', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6539 */ 'A', 'D', 'C', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6550 */ 'A', 'D', 'D', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6561 */ 'A', 'N', 'D', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6572 */ 'C', 'M', 'P', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6583 */ 'X', 'O', 'R', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6594 */ 'M', 'O', 'V', '8', 'r', 'r', '_', 'R', 'E', 'V', 0,
+  /* 6605 */ 'C', 'B', 'W', 0,
+  /* 6609 */ 'L', 'R', 'E', 'T', 'I', 'W', 0,
+  /* 6616 */ 'N', 'O', 'O', 'P', 'W', 0,
+  /* 6622 */ 'L', 'O', 'D', 'S', 'W', 0,
+  /* 6628 */ 'S', 'T', 'O', 'S', 'W', 0,
+  /* 6634 */ 'O', 'U', 'T', 'S', 'W', 0,
+  /* 6640 */ 'M', 'O', 'V', 'S', 'W', 0,
+  /* 6646 */ 'L', 'R', 'E', 'T', 'W', 0,
+  /* 6652 */ 'T', 'E', 'S', 'T', '8', 'r', 'i', '_', 'N', 'O', 'R', 'E', 'X', 0,
+  /* 6666 */ 'M', 'O', 'V', '8', 'r', 'm', '_', 'N', 'O', 'R', 'E', 'X', 0,
+  /* 6679 */ 'M', 'O', 'V', '8', 'm', 'r', '_', 'N', 'O', 'R', 'E', 'X', 0,
+  /* 6692 */ 'M', 'O', 'V', '8', 'r', 'r', '_', 'N', 'O', 'R', 'E', 'X', 0,
+  /* 6705 */ 'R', 'E', 'X', '6', '4', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6718 */ 'D', 'A', 'T', 'A', '1', '6', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6732 */ 'R', 'E', 'P', 'N', 'E', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6745 */ 'L', 'O', 'C', 'K', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6757 */ 'R', 'E', 'P', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6768 */ 'C', 'S', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6778 */ 'D', 'S', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6788 */ 'E', 'S', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6798 */ 'F', 'S', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6808 */ 'G', 'S', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6818 */ 'S', 'S', '_', 'P', 'R', 'E', 'F', 'I', 'X', 0,
+  /* 6828 */ 'C', 'O', 'P', 'Y', 0,
+  /* 6833 */ 'J', 'C', 'X', 'Z', 0,
+  /* 6838 */ 'J', 'R', 'C', 'X', 'Z', 0,
+  /* 6844 */ 'M', 'O', 'V', '3', '2', 'o', '3', '2', 'a', 0,
+  /* 6854 */ 'M', 'O', 'V', '6', '4', 'o', '3', '2', 'a', 0,
+  /* 6864 */ 'M', 'O', 'V', '6', '4', 'o', '6', '4', 'a', 0,
+  /* 6874 */ 'M', 'O', 'V', '6', '4', 'o', '1', '6', 'a', 0,
+  /* 6884 */ 'M', 'O', 'V', '1', '6', 'o', '1', '6', 'a', 0,
+  /* 6894 */ 'M', 'O', 'V', '6', '4', 'o', '8', 'a', 0,
+  /* 6903 */ 'M', 'O', 'V', '8', 'o', '8', 'a', 0,
+  /* 6911 */ 'M', 'O', 'V', '3', '2', 'r', 'c', 0,
+  /* 6919 */ 'M', 'O', 'V', '6', '4', 'r', 'c', 0,
+  /* 6927 */ 'T', 'A', 'I', 'L', 'J', 'M', 'P', 'd', 0,
+  /* 6936 */ 'O', 'R', '3', '2', 'm', 'r', 'L', 'o', 'c', 'k', 'e', 'd', 0,
+  /* 6949 */ 'M', 'O', 'V', '3', '2', 'r', 'd', 0,
+  /* 6957 */ 'M', 'O', 'V', '6', '4', 'r', 'd', 0,
+  /* 6965 */ 'F', 'A', 'R', 'C', 'A', 'L', 'L', '3', '2', 'i', 0,
+  /* 6976 */ 'F', 'A', 'R', 'J', 'M', 'P', '3', '2', 'i', 0,
+  /* 6986 */ 'F', 'A', 'R', 'C', 'A', 'L', 'L', '1', '6', 'i', 0,
+  /* 6997 */ 'F', 'A', 'R', 'J', 'M', 'P', '1', '6', 'i', 0,
+  /* 7007 */ 'T', 'C', 'R', 'E', 'T', 'U', 'R', 'N', 'd', 'i', 0,
+  /* 7018 */ 'S', 'B', 'B', '3', '2', 'm', 'i', 0,
+  /* 7026 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '3', '2', 'm', 'i', 0,
+  /* 7039 */ 'A', 'D', 'C', '3', '2', 'm', 'i', 0,
+  /* 7047 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '3', '2', 'm', 'i', 0,
+  /* 7060 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '3', '2', 'm', 'i', 0,
+  /* 7073 */ 'B', 'E', 'X', 'T', 'R', 'I', '3', '2', 'm', 'i', 0,
+  /* 7084 */ 'R', 'C', 'L', '3', '2', 'm', 'i', 0,
+  /* 7092 */ 'S', 'H', 'L', '3', '2', 'm', 'i', 0,
+  /* 7100 */ 'R', 'O', 'L', '3', '2', 'm', 'i', 0,
+  /* 7108 */ 'C', 'M', 'P', '3', '2', 'm', 'i', 0,
+  /* 7116 */ 'S', 'A', 'R', '3', '2', 'm', 'i', 0,
+  /* 7124 */ 'R', 'C', 'R', '3', '2', 'm', 'i', 0,
+  /* 7132 */ 'S', 'H', 'R', '3', '2', 'm', 'i', 0,
+  /* 7140 */ 'R', 'O', 'R', '3', '2', 'm', 'i', 0,
+  /* 7148 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '3', '2', 'm', 'i', 0,
+  /* 7161 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '3', '2', 'm', 'i', 0,
+  /* 7173 */ 'T', 'E', 'S', 'T', '3', '2', 'm', 'i', 0,
+  /* 7182 */ 'M', 'O', 'V', '3', '2', 'm', 'i', 0,
+  /* 7190 */ 'R', 'O', 'R', 'X', '3', '2', 'm', 'i', 0,
+  /* 7199 */ 'B', 'E', 'X', 'T', 'R', 'I', '6', '4', 'm', 'i', 0,
+  /* 7210 */ 'R', 'C', 'L', '6', '4', 'm', 'i', 0,
+  /* 7218 */ 'S', 'H', 'L', '6', '4', 'm', 'i', 0,
+  /* 7226 */ 'R', 'O', 'L', '6', '4', 'm', 'i', 0,
+  /* 7234 */ 'S', 'A', 'R', '6', '4', 'm', 'i', 0,
+  /* 7242 */ 'R', 'C', 'R', '6', '4', 'm', 'i', 0,
+  /* 7250 */ 'S', 'H', 'R', '6', '4', 'm', 'i', 0,
+  /* 7258 */ 'R', 'O', 'R', '6', '4', 'm', 'i', 0,
+  /* 7266 */ 'R', 'O', 'R', 'X', '6', '4', 'm', 'i', 0,
+  /* 7275 */ 'S', 'B', 'B', '1', '6', 'm', 'i', 0,
+  /* 7283 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '1', '6', 'm', 'i', 0,
+  /* 7296 */ 'A', 'D', 'C', '1', '6', 'm', 'i', 0,
+  /* 7304 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '1', '6', 'm', 'i', 0,
+  /* 7317 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '1', '6', 'm', 'i', 0,
+  /* 7330 */ 'R', 'C', 'L', '1', '6', 'm', 'i', 0,
+  /* 7338 */ 'S', 'H', 'L', '1', '6', 'm', 'i', 0,
+  /* 7346 */ 'R', 'O', 'L', '1', '6', 'm', 'i', 0,
+  /* 7354 */ 'C', 'M', 'P', '1', '6', 'm', 'i', 0,
+  /* 7362 */ 'S', 'A', 'R', '1', '6', 'm', 'i', 0,
+  /* 7370 */ 'R', 'C', 'R', '1', '6', 'm', 'i', 0,
+  /* 7378 */ 'S', 'H', 'R', '1', '6', 'm', 'i', 0,
+  /* 7386 */ 'R', 'O', 'R', '1', '6', 'm', 'i', 0,
+  /* 7394 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '1', '6', 'm', 'i', 0,
+  /* 7407 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '1', '6', 'm', 'i', 0,
+  /* 7419 */ 'T', 'E', 'S', 'T', '1', '6', 'm', 'i', 0,
+  /* 7428 */ 'M', 'O', 'V', '1', '6', 'm', 'i', 0,
+  /* 7436 */ 'S', 'B', 'B', '8', 'm', 'i', 0,
+  /* 7443 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '8', 'm', 'i', 0,
+  /* 7455 */ 'A', 'D', 'C', '8', 'm', 'i', 0,
+  /* 7462 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '8', 'm', 'i', 0,
+  /* 7474 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '8', 'm', 'i', 0,
+  /* 7486 */ 'R', 'C', 'L', '8', 'm', 'i', 0,
+  /* 7493 */ 'S', 'H', 'L', '8', 'm', 'i', 0,
+  /* 7500 */ 'R', 'O', 'L', '8', 'm', 'i', 0,
+  /* 7507 */ 'C', 'M', 'P', '8', 'm', 'i', 0,
+  /* 7514 */ 'S', 'A', 'R', '8', 'm', 'i', 0,
+  /* 7521 */ 'R', 'C', 'R', '8', 'm', 'i', 0,
+  /* 7528 */ 'S', 'H', 'R', '8', 'm', 'i', 0,
+  /* 7535 */ 'R', 'O', 'R', '8', 'm', 'i', 0,
+  /* 7542 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '8', 'm', 'i', 0,
+  /* 7554 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '8', 'm', 'i', 0,
+  /* 7565 */ 'T', 'E', 'S', 'T', '8', 'm', 'i', 0,
+  /* 7573 */ 'M', 'O', 'V', '8', 'm', 'i', 0,
+  /* 7580 */ 'T', 'C', 'R', 'E', 'T', 'U', 'R', 'N', 'm', 'i', 0,
+  /* 7591 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 'm', 'i', 0,
+  /* 7601 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 'm', 'i', 0,
+  /* 7611 */ 'S', 'B', 'B', '3', '2', 'r', 'i', 0,
+  /* 7619 */ 'S', 'U', 'B', '3', '2', 'r', 'i', 0,
+  /* 7627 */ 'A', 'D', 'C', '3', '2', 'r', 'i', 0,
+  /* 7635 */ 'A', 'D', 'D', '3', '2', 'r', 'i', 0,
+  /* 7643 */ 'A', 'N', 'D', '3', '2', 'r', 'i', 0,
+  /* 7651 */ 'B', 'E', 'X', 'T', 'R', 'I', '3', '2', 'r', 'i', 0,
+  /* 7662 */ 'R', 'C', 'L', '3', '2', 'r', 'i', 0,
+  /* 7670 */ 'S', 'H', 'L', '3', '2', 'r', 'i', 0,
+  /* 7678 */ 'R', 'O', 'L', '3', '2', 'r', 'i', 0,
+  /* 7686 */ 'I', 'N', '3', '2', 'r', 'i', 0,
+  /* 7693 */ 'C', 'M', 'P', '3', '2', 'r', 'i', 0,
+  /* 7701 */ 'S', 'A', 'R', '3', '2', 'r', 'i', 0,
+  /* 7709 */ 'R', 'C', 'R', '3', '2', 'r', 'i', 0,
+  /* 7717 */ 'S', 'H', 'R', '3', '2', 'r', 'i', 0,
+  /* 7725 */ 'R', 'O', 'R', '3', '2', 'r', 'i', 0,
+  /* 7733 */ 'X', 'O', 'R', '3', '2', 'r', 'i', 0,
+  /* 7741 */ 'T', 'E', 'S', 'T', '3', '2', 'r', 'i', 0,
+  /* 7750 */ 'M', 'O', 'V', '3', '2', 'r', 'i', 0,
+  /* 7758 */ 'R', 'O', 'R', 'X', '3', '2', 'r', 'i', 0,
+  /* 7767 */ 'B', 'E', 'X', 'T', 'R', 'I', '6', '4', 'r', 'i', 0,
+  /* 7778 */ 'R', 'C', 'L', '6', '4', 'r', 'i', 0,
+  /* 7786 */ 'S', 'H', 'L', '6', '4', 'r', 'i', 0,
+  /* 7794 */ 'R', 'O', 'L', '6', '4', 'r', 'i', 0,
+  /* 7802 */ 'S', 'A', 'R', '6', '4', 'r', 'i', 0,
+  /* 7810 */ 'R', 'C', 'R', '6', '4', 'r', 'i', 0,
+  /* 7818 */ 'S', 'H', 'R', '6', '4', 'r', 'i', 0,
+  /* 7826 */ 'R', 'O', 'R', '6', '4', 'r', 'i', 0,
+  /* 7834 */ 'M', 'O', 'V', '6', '4', 'r', 'i', 0,
+  /* 7842 */ 'R', 'O', 'R', 'X', '6', '4', 'r', 'i', 0,
+  /* 7851 */ 'S', 'B', 'B', '1', '6', 'r', 'i', 0,
+  /* 7859 */ 'S', 'U', 'B', '1', '6', 'r', 'i', 0,
+  /* 7867 */ 'A', 'D', 'C', '1', '6', 'r', 'i', 0,
+  /* 7875 */ 'A', 'D', 'D', '1', '6', 'r', 'i', 0,
+  /* 7883 */ 'A', 'N', 'D', '1', '6', 'r', 'i', 0,
+  /* 7891 */ 'R', 'C', 'L', '1', '6', 'r', 'i', 0,
+  /* 7899 */ 'S', 'H', 'L', '1', '6', 'r', 'i', 0,
+  /* 7907 */ 'R', 'O', 'L', '1', '6', 'r', 'i', 0,
+  /* 7915 */ 'I', 'N', '1', '6', 'r', 'i', 0,
+  /* 7922 */ 'C', 'M', 'P', '1', '6', 'r', 'i', 0,
+  /* 7930 */ 'S', 'A', 'R', '1', '6', 'r', 'i', 0,
+  /* 7938 */ 'R', 'C', 'R', '1', '6', 'r', 'i', 0,
+  /* 7946 */ 'S', 'H', 'R', '1', '6', 'r', 'i', 0,
+  /* 7954 */ 'R', 'O', 'R', '1', '6', 'r', 'i', 0,
+  /* 7962 */ 'X', 'O', 'R', '1', '6', 'r', 'i', 0,
+  /* 7970 */ 'T', 'E', 'S', 'T', '1', '6', 'r', 'i', 0,
+  /* 7979 */ 'M', 'O', 'V', '1', '6', 'r', 'i', 0,
+  /* 7987 */ 'S', 'B', 'B', '8', 'r', 'i', 0,
+  /* 7994 */ 'S', 'U', 'B', '8', 'r', 'i', 0,
+  /* 8001 */ 'A', 'D', 'C', '8', 'r', 'i', 0,
+  /* 8008 */ 'A', 'D', 'D', '8', 'r', 'i', 0,
+  /* 8015 */ 'A', 'N', 'D', '8', 'r', 'i', 0,
+  /* 8022 */ 'R', 'C', 'L', '8', 'r', 'i', 0,
+  /* 8029 */ 'S', 'H', 'L', '8', 'r', 'i', 0,
+  /* 8036 */ 'R', 'O', 'L', '8', 'r', 'i', 0,
+  /* 8043 */ 'I', 'N', '8', 'r', 'i', 0,
+  /* 8049 */ 'C', 'M', 'P', '8', 'r', 'i', 0,
+  /* 8056 */ 'S', 'A', 'R', '8', 'r', 'i', 0,
+  /* 8063 */ 'R', 'C', 'R', '8', 'r', 'i', 0,
+  /* 8070 */ 'S', 'H', 'R', '8', 'r', 'i', 0,
+  /* 8077 */ 'R', 'O', 'R', '8', 'r', 'i', 0,
+  /* 8084 */ 'X', 'O', 'R', '8', 'r', 'i', 0,
+  /* 8091 */ 'T', 'E', 'S', 'T', '8', 'r', 'i', 0,
+  /* 8099 */ 'M', 'O', 'V', '8', 'r', 'i', 0,
+  /* 8106 */ 'T', 'C', 'R', 'E', 'T', 'U', 'R', 'N', 'r', 'i', 0,
+  /* 8117 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 'r', 'i', 0,
+  /* 8127 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 'r', 'i', 0,
+  /* 8137 */ 'L', 'O', 'C', 'K', '_', 'D', 'E', 'C', '3', '2', 'm', 0,
+  /* 8149 */ 'L', 'O', 'C', 'K', '_', 'I', 'N', 'C', '3', '2', 'm', 0,
+  /* 8161 */ 'N', 'E', 'G', '3', '2', 'm', 0,
+  /* 8168 */ 'F', 'A', 'R', 'C', 'A', 'L', 'L', '3', '2', 'm', 0,
+  /* 8179 */ 'I', 'M', 'U', 'L', '3', '2', 'm', 0,
+  /* 8187 */ 'F', 'A', 'R', 'J', 'M', 'P', '3', '2', 'm', 0,
+  /* 8197 */ 'L', 'G', 'D', 'T', '3', '2', 'm', 0,
+  /* 8205 */ 'S', 'G', 'D', 'T', '3', '2', 'm', 0,
+  /* 8213 */ 'L', 'I', 'D', 'T', '3', '2', 'm', 0,
+  /* 8221 */ 'S', 'I', 'D', 'T', '3', '2', 'm', 0,
+  /* 8229 */ 'N', 'O', 'T', '3', '2', 'm', 0,
+  /* 8236 */ 'I', 'D', 'I', 'V', '3', '2', 'm', 0,
+  /* 8244 */ 'D', 'E', 'C', '6', '4', '_', '3', '2', 'm', 0,
+  /* 8254 */ 'I', 'N', 'C', '6', '4', '_', '3', '2', 'm', 0,
+  /* 8264 */ 'L', 'O', 'C', 'K', '_', 'D', 'E', 'C', '6', '4', 'm', 0,
+  /* 8276 */ 'L', 'O', 'C', 'K', '_', 'I', 'N', 'C', '6', '4', 'm', 0,
+  /* 8288 */ 'N', 'E', 'G', '6', '4', 'm', 0,
+  /* 8295 */ 'C', 'A', 'L', 'L', '6', '4', 'm', 0,
+  /* 8303 */ 'I', 'M', 'U', 'L', '6', '4', 'm', 0,
+  /* 8311 */ 'J', 'M', 'P', '6', '4', 'm', 0,
+  /* 8318 */ 'L', 'G', 'D', 'T', '6', '4', 'm', 0,
+  /* 8326 */ 'S', 'G', 'D', 'T', '6', '4', 'm', 0,
+  /* 8334 */ 'L', 'I', 'D', 'T', '6', '4', 'm', 0,
+  /* 8342 */ 'S', 'I', 'D', 'T', '6', '4', 'm', 0,
+  /* 8350 */ 'S', 'L', 'D', 'T', '6', '4', 'm', 0,
+  /* 8358 */ 'N', 'O', 'T', '6', '4', 'm', 0,
+  /* 8365 */ 'I', 'D', 'I', 'V', '6', '4', 'm', 0,
+  /* 8373 */ 'L', 'O', 'C', 'K', '_', 'D', 'E', 'C', '1', '6', 'm', 0,
+  /* 8385 */ 'L', 'O', 'C', 'K', '_', 'I', 'N', 'C', '1', '6', 'm', 0,
+  /* 8397 */ 'N', 'E', 'G', '1', '6', 'm', 0,
+  /* 8404 */ 'F', 'A', 'R', 'C', 'A', 'L', 'L', '1', '6', 'm', 0,
+  /* 8415 */ 'I', 'M', 'U', 'L', '1', '6', 'm', 0,
+  /* 8423 */ 'F', 'A', 'R', 'J', 'M', 'P', '1', '6', 'm', 0,
+  /* 8433 */ 'L', 'G', 'D', 'T', '1', '6', 'm', 0,
+  /* 8441 */ 'S', 'G', 'D', 'T', '1', '6', 'm', 0,
+  /* 8449 */ 'L', 'I', 'D', 'T', '1', '6', 'm', 0,
+  /* 8457 */ 'S', 'I', 'D', 'T', '1', '6', 'm', 0,
+  /* 8465 */ 'L', 'L', 'D', 'T', '1', '6', 'm', 0,
+  /* 8473 */ 'S', 'L', 'D', 'T', '1', '6', 'm', 0,
+  /* 8481 */ 'N', 'O', 'T', '1', '6', 'm', 0,
+  /* 8488 */ 'I', 'D', 'I', 'V', '1', '6', 'm', 0,
+  /* 8496 */ 'L', 'M', 'S', 'W', '1', '6', 'm', 0,
+  /* 8504 */ 'S', 'M', 'S', 'W', '1', '6', 'm', 0,
+  /* 8512 */ 'D', 'E', 'C', '6', '4', '_', '1', '6', 'm', 0,
+  /* 8522 */ 'I', 'N', 'C', '6', '4', '_', '1', '6', 'm', 0,
+  /* 8532 */ 'L', 'O', 'C', 'K', '_', 'D', 'E', 'C', '8', 'm', 0,
+  /* 8543 */ 'L', 'O', 'C', 'K', '_', 'I', 'N', 'C', '8', 'm', 0,
+  /* 8554 */ 'N', 'E', 'G', '8', 'm', 0,
+  /* 8560 */ 'I', 'M', 'U', 'L', '8', 'm', 0,
+  /* 8567 */ 'N', 'O', 'T', '8', 'm', 0,
+  /* 8573 */ 'I', 'D', 'I', 'V', '8', 'm', 0,
+  /* 8580 */ 'S', 'E', 'T', 'A', 'm', 0,
+  /* 8586 */ 'S', 'E', 'T', 'B', 'm', 0,
+  /* 8592 */ 'V', 'M', 'P', 'T', 'R', 'L', 'D', 'm', 0,
+  /* 8601 */ 'S', 'E', 'T', 'A', 'E', 'm', 0,
+  /* 8608 */ 'S', 'E', 'T', 'B', 'E', 'm', 0,
+  /* 8615 */ 'S', 'E', 'T', 'G', 'E', 'm', 0,
+  /* 8622 */ 'S', 'E', 'T', 'L', 'E', 'm', 0,
+  /* 8629 */ 'S', 'E', 'T', 'N', 'E', 'm', 0,
+  /* 8636 */ 'S', 'E', 'T', 'E', 'm', 0,
+  /* 8642 */ 'S', 'E', 'T', 'G', 'm', 0,
+  /* 8648 */ 'S', 'E', 'T', 'L', 'm', 0,
+  /* 8654 */ 'S', 'E', 'T', 'N', 'O', 'm', 0,
+  /* 8661 */ 'S', 'E', 'T', 'O', 'm', 0,
+  /* 8667 */ 'T', 'A', 'I', 'L', 'J', 'M', 'P', 'm', 0,
+  /* 8676 */ 'S', 'E', 'T', 'N', 'P', 'm', 0,
+  /* 8683 */ 'S', 'E', 'T', 'P', 'm', 0,
+  /* 8689 */ 'V', 'M', 'C', 'L', 'E', 'A', 'R', 'm', 0,
+  /* 8698 */ 'V', 'E', 'R', 'R', 'm', 0,
+  /* 8704 */ 'L', 'T', 'R', 'm', 0,
+  /* 8709 */ 'S', 'T', 'R', 'm', 0,
+  /* 8714 */ 'S', 'E', 'T', 'N', 'S', 'm', 0,
+  /* 8721 */ 'S', 'E', 'T', 'S', 'm', 0,
+  /* 8727 */ 'V', 'M', 'P', 'T', 'R', 'S', 'T', 'm', 0,
+  /* 8736 */ 'V', 'E', 'R', 'W', 'm', 0,
+  /* 8742 */ 'P', 'U', 'S', 'H', '3', '2', 'r', 'm', 'm', 0,
+  /* 8752 */ 'P', 'O', 'P', '3', '2', 'r', 'm', 'm', 0,
+  /* 8761 */ 'P', 'U', 'S', 'H', '6', '4', 'r', 'm', 'm', 0,
+  /* 8771 */ 'P', 'O', 'P', '6', '4', 'r', 'm', 'm', 0,
+  /* 8780 */ 'P', 'U', 'S', 'H', '1', '6', 'r', 'm', 'm', 0,
+  /* 8790 */ 'P', 'O', 'P', '1', '6', 'r', 'm', 'm', 0,
+  /* 8799 */ 'C', 'M', 'O', 'V', 'A', '3', '2', 'r', 'm', 0,
+  /* 8809 */ 'S', 'B', 'B', '3', '2', 'r', 'm', 0,
+  /* 8817 */ 'S', 'U', 'B', '3', '2', 'r', 'm', 0,
+  /* 8825 */ 'C', 'M', 'O', 'V', 'B', '3', '2', 'r', 'm', 0,
+  /* 8835 */ 'A', 'D', 'C', '3', '2', 'r', 'm', 0,
+  /* 8843 */ 'B', 'L', 'C', 'I', 'C', '3', '2', 'r', 'm', 0,
+  /* 8853 */ 'B', 'L', 'S', 'I', 'C', '3', '2', 'r', 'm', 0,
+  /* 8863 */ 'T', '1', 'M', 'S', 'K', 'C', '3', '2', 'r', 'm', 0,
+  /* 8874 */ 'V', 'M', 'R', 'E', 'A', 'D', '3', '2', 'r', 'm', 0,
+  /* 8885 */ 'X', 'A', 'D', 'D', '3', '2', 'r', 'm', 0,
+  /* 8894 */ 'A', 'N', 'D', '3', '2', 'r', 'm', 0,
+  /* 8902 */ 'C', 'M', 'O', 'V', 'A', 'E', '3', '2', 'r', 'm', 0,
+  /* 8913 */ 'C', 'M', 'O', 'V', 'B', 'E', '3', '2', 'r', 'm', 0,
+  /* 8924 */ 'C', 'M', 'O', 'V', 'G', 'E', '3', '2', 'r', 'm', 0,
+  /* 8935 */ 'C', 'M', 'O', 'V', 'L', 'E', '3', '2', 'r', 'm', 0,
+  /* 8946 */ 'C', 'M', 'O', 'V', 'N', 'E', '3', '2', 'r', 'm', 0,
+  /* 8957 */ 'V', 'M', 'W', 'R', 'I', 'T', 'E', '3', '2', 'r', 'm', 0,
+  /* 8969 */ 'C', 'M', 'O', 'V', 'E', '3', '2', 'r', 'm', 0,
+  /* 8979 */ 'B', 'S', 'F', '3', '2', 'r', 'm', 0,
+  /* 8987 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '3', '2', 'r', 'm', 0,
+  /* 8999 */ 'C', 'M', 'O', 'V', 'G', '3', '2', 'r', 'm', 0,
+  /* 9009 */ 'B', 'L', 'C', 'I', '3', '2', 'r', 'm', 0,
+  /* 9018 */ 'B', 'Z', 'H', 'I', '3', '2', 'r', 'm', 0,
+  /* 9027 */ 'B', 'L', 'S', 'I', '3', '2', 'r', 'm', 0,
+  /* 9036 */ 'B', 'L', 'C', 'M', 'S', 'K', '3', '2', 'r', 'm', 0,
+  /* 9047 */ 'B', 'L', 'S', 'M', 'S', 'K', '3', '2', 'r', 'm', 0,
+  /* 9058 */ 'T', 'Z', 'M', 'S', 'K', '3', '2', 'r', 'm', 0,
+  /* 9068 */ 'B', 'L', 'C', 'F', 'I', 'L', 'L', '3', '2', 'r', 'm', 0,
+  /* 9080 */ 'B', 'L', 'S', 'F', 'I', 'L', 'L', '3', '2', 'r', 'm', 0,
+  /* 9092 */ 'L', 'S', 'L', '3', '2', 'r', 'm', 0,
+  /* 9100 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 'm', 0,
+  /* 9109 */ 'C', 'M', 'O', 'V', 'L', '3', '2', 'r', 'm', 0,
+  /* 9119 */ 'A', 'N', 'D', 'N', '3', '2', 'r', 'm', 0,
+  /* 9128 */ 'C', 'M', 'O', 'V', 'N', 'O', '3', '2', 'r', 'm', 0,
+  /* 9139 */ 'C', 'M', 'O', 'V', 'O', '3', '2', 'r', 'm', 0,
+  /* 9149 */ 'P', 'D', 'E', 'P', '3', '2', 'r', 'm', 0,
+  /* 9158 */ 'C', 'M', 'P', '3', '2', 'r', 'm', 0,
+  /* 9166 */ 'C', 'M', 'O', 'V', 'N', 'P', '3', '2', 'r', 'm', 0,
+  /* 9177 */ 'C', 'M', 'O', 'V', 'P', '3', '2', 'r', 'm', 0,
+  /* 9187 */ 'L', 'A', 'R', '3', '2', 'r', 'm', 0,
+  /* 9195 */ 'X', 'O', 'R', '3', '2', 'r', 'm', 0,
+  /* 9203 */ 'B', 'S', 'R', '3', '2', 'r', 'm', 0,
+  /* 9211 */ 'B', 'L', 'S', 'R', '3', '2', 'r', 'm', 0,
+  /* 9220 */ 'B', 'E', 'X', 'T', 'R', '3', '2', 'r', 'm', 0,
+  /* 9230 */ 'B', 'L', 'C', 'S', '3', '2', 'r', 'm', 0,
+  /* 9239 */ 'L', 'D', 'S', '3', '2', 'r', 'm', 0,
+  /* 9247 */ 'B', 'O', 'U', 'N', 'D', 'S', '3', '2', 'r', 'm', 0,
+  /* 9258 */ 'L', 'E', 'S', '3', '2', 'r', 'm', 0,
+  /* 9266 */ 'L', 'F', 'S', '3', '2', 'r', 'm', 0,
+  /* 9274 */ 'L', 'G', 'S', '3', '2', 'r', 'm', 0,
+  /* 9282 */ 'C', 'M', 'O', 'V', 'N', 'S', '3', '2', 'r', 'm', 0,
+  /* 9293 */ 'L', 'S', 'S', '3', '2', 'r', 'm', 0,
+  /* 9301 */ 'C', 'M', 'O', 'V', 'S', '3', '2', 'r', 'm', 0,
+  /* 9311 */ 'L', 'Z', 'C', 'N', 'T', '3', '2', 'r', 'm', 0,
+  /* 9321 */ 'T', 'Z', 'C', 'N', 'T', '3', '2', 'r', 'm', 0,
+  /* 9331 */ 'T', 'E', 'S', 'T', '3', '2', 'r', 'm', 0,
+  /* 9340 */ 'P', 'E', 'X', 'T', '3', '2', 'r', 'm', 0,
+  /* 9349 */ 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', '3', '2', 'r', 'm', 0,
+  /* 9365 */ 'A', 'D', 'C', 'X', '3', '2', 'r', 'm', 0,
+  /* 9374 */ 'S', 'H', 'L', 'X', '3', '2', 'r', 'm', 0,
+  /* 9383 */ 'M', 'U', 'L', 'X', '3', '2', 'r', 'm', 0,
+  /* 9392 */ 'A', 'D', 'O', 'X', '3', '2', 'r', 'm', 0,
+  /* 9401 */ 'S', 'A', 'R', 'X', '3', '2', 'r', 'm', 0,
+  /* 9410 */ 'S', 'H', 'R', 'X', '3', '2', 'r', 'm', 0,
+  /* 9419 */ 'C', 'M', 'O', 'V', 'A', '6', '4', 'r', 'm', 0,
+  /* 9429 */ 'S', 'B', 'B', '6', '4', 'r', 'm', 0,
+  /* 9437 */ 'S', 'U', 'B', '6', '4', 'r', 'm', 0,
+  /* 9445 */ 'C', 'M', 'O', 'V', 'B', '6', '4', 'r', 'm', 0,
+  /* 9455 */ 'A', 'D', 'C', '6', '4', 'r', 'm', 0,
+  /* 9463 */ 'B', 'L', 'C', 'I', 'C', '6', '4', 'r', 'm', 0,
+  /* 9473 */ 'B', 'L', 'S', 'I', 'C', '6', '4', 'r', 'm', 0,
+  /* 9483 */ 'T', '1', 'M', 'S', 'K', 'C', '6', '4', 'r', 'm', 0,
+  /* 9494 */ 'V', 'M', 'R', 'E', 'A', 'D', '6', '4', 'r', 'm', 0,
+  /* 9505 */ 'X', 'A', 'D', 'D', '6', '4', 'r', 'm', 0,
+  /* 9514 */ 'A', 'N', 'D', '6', '4', 'r', 'm', 0,
+  /* 9522 */ 'C', 'M', 'O', 'V', 'A', 'E', '6', '4', 'r', 'm', 0,
+  /* 9533 */ 'C', 'M', 'O', 'V', 'B', 'E', '6', '4', 'r', 'm', 0,
+  /* 9544 */ 'C', 'M', 'O', 'V', 'G', 'E', '6', '4', 'r', 'm', 0,
+  /* 9555 */ 'C', 'M', 'O', 'V', 'L', 'E', '6', '4', 'r', 'm', 0,
+  /* 9566 */ 'C', 'M', 'O', 'V', 'N', 'E', '6', '4', 'r', 'm', 0,
+  /* 9577 */ 'V', 'M', 'W', 'R', 'I', 'T', 'E', '6', '4', 'r', 'm', 0,
+  /* 9589 */ 'C', 'M', 'O', 'V', 'E', '6', '4', 'r', 'm', 0,
+  /* 9599 */ 'B', 'S', 'F', '6', '4', 'r', 'm', 0,
+  /* 9607 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '6', '4', 'r', 'm', 0,
+  /* 9619 */ 'C', 'M', 'O', 'V', 'G', '6', '4', 'r', 'm', 0,
+  /* 9629 */ 'B', 'L', 'C', 'I', '6', '4', 'r', 'm', 0,
+  /* 9638 */ 'B', 'Z', 'H', 'I', '6', '4', 'r', 'm', 0,
+  /* 9647 */ 'B', 'L', 'S', 'I', '6', '4', 'r', 'm', 0,
+  /* 9656 */ 'B', 'L', 'C', 'M', 'S', 'K', '6', '4', 'r', 'm', 0,
+  /* 9667 */ 'B', 'L', 'S', 'M', 'S', 'K', '6', '4', 'r', 'm', 0,
+  /* 9678 */ 'T', 'Z', 'M', 'S', 'K', '6', '4', 'r', 'm', 0,
+  /* 9688 */ 'B', 'L', 'C', 'F', 'I', 'L', 'L', '6', '4', 'r', 'm', 0,
+  /* 9700 */ 'B', 'L', 'S', 'F', 'I', 'L', 'L', '6', '4', 'r', 'm', 0,
+  /* 9712 */ 'L', 'S', 'L', '6', '4', 'r', 'm', 0,
+  /* 9720 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 'm', 0,
+  /* 9729 */ 'C', 'M', 'O', 'V', 'L', '6', '4', 'r', 'm', 0,
+  /* 9739 */ 'A', 'N', 'D', 'N', '6', '4', 'r', 'm', 0,
+  /* 9748 */ 'C', 'M', 'O', 'V', 'N', 'O', '6', '4', 'r', 'm', 0,
+  /* 9759 */ 'C', 'M', 'O', 'V', 'O', '6', '4', 'r', 'm', 0,
+  /* 9769 */ 'P', 'D', 'E', 'P', '6', '4', 'r', 'm', 0,
+  /* 9778 */ 'C', 'M', 'P', '6', '4', 'r', 'm', 0,
+  /* 9786 */ 'C', 'M', 'O', 'V', 'N', 'P', '6', '4', 'r', 'm', 0,
+  /* 9797 */ 'C', 'M', 'O', 'V', 'P', '6', '4', 'r', 'm', 0,
+  /* 9807 */ 'L', 'A', 'R', '6', '4', 'r', 'm', 0,
+  /* 9815 */ 'X', 'O', 'R', '6', '4', 'r', 'm', 0,
+  /* 9823 */ 'B', 'S', 'R', '6', '4', 'r', 'm', 0,
+  /* 9831 */ 'B', 'L', 'S', 'R', '6', '4', 'r', 'm', 0,
+  /* 9840 */ 'B', 'E', 'X', 'T', 'R', '6', '4', 'r', 'm', 0,
+  /* 9850 */ 'B', 'L', 'C', 'S', '6', '4', 'r', 'm', 0,
+  /* 9859 */ 'L', 'F', 'S', '6', '4', 'r', 'm', 0,
+  /* 9867 */ 'L', 'G', 'S', '6', '4', 'r', 'm', 0,
+  /* 9875 */ 'C', 'M', 'O', 'V', 'N', 'S', '6', '4', 'r', 'm', 0,
+  /* 9886 */ 'L', 'S', 'S', '6', '4', 'r', 'm', 0,
+  /* 9894 */ 'C', 'M', 'O', 'V', 'S', '6', '4', 'r', 'm', 0,
+  /* 9904 */ 'L', 'Z', 'C', 'N', 'T', '6', '4', 'r', 'm', 0,
+  /* 9914 */ 'T', 'Z', 'C', 'N', 'T', '6', '4', 'r', 'm', 0,
+  /* 9924 */ 'T', 'E', 'S', 'T', '6', '4', 'r', 'm', 0,
+  /* 9933 */ 'P', 'E', 'X', 'T', '6', '4', 'r', 'm', 0,
+  /* 9942 */ 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', '6', '4', 'r', 'm', 0,
+  /* 9958 */ 'A', 'D', 'C', 'X', '6', '4', 'r', 'm', 0,
+  /* 9967 */ 'S', 'H', 'L', 'X', '6', '4', 'r', 'm', 0,
+  /* 9976 */ 'M', 'U', 'L', 'X', '6', '4', 'r', 'm', 0,
+  /* 9985 */ 'A', 'D', 'O', 'X', '6', '4', 'r', 'm', 0,
+  /* 9994 */ 'S', 'A', 'R', 'X', '6', '4', 'r', 'm', 0,
+  /* 10003 */ 'S', 'H', 'R', 'X', '6', '4', 'r', 'm', 0,
+  /* 10012 */ 'C', 'M', 'O', 'V', 'A', '1', '6', 'r', 'm', 0,
+  /* 10022 */ 'S', 'B', 'B', '1', '6', 'r', 'm', 0,
+  /* 10030 */ 'S', 'U', 'B', '1', '6', 'r', 'm', 0,
+  /* 10038 */ 'C', 'M', 'O', 'V', 'B', '1', '6', 'r', 'm', 0,
+  /* 10048 */ 'A', 'D', 'C', '1', '6', 'r', 'm', 0,
+  /* 10056 */ 'X', 'A', 'D', 'D', '1', '6', 'r', 'm', 0,
+  /* 10065 */ 'A', 'N', 'D', '1', '6', 'r', 'm', 0,
+  /* 10073 */ 'C', 'M', 'O', 'V', 'A', 'E', '1', '6', 'r', 'm', 0,
+  /* 10084 */ 'C', 'M', 'O', 'V', 'B', 'E', '1', '6', 'r', 'm', 0,
+  /* 10095 */ 'C', 'M', 'O', 'V', 'G', 'E', '1', '6', 'r', 'm', 0,
+  /* 10106 */ 'C', 'M', 'O', 'V', 'L', 'E', '1', '6', 'r', 'm', 0,
+  /* 10117 */ 'C', 'M', 'O', 'V', 'N', 'E', '1', '6', 'r', 'm', 0,
+  /* 10128 */ 'C', 'M', 'O', 'V', 'E', '1', '6', 'r', 'm', 0,
+  /* 10138 */ 'B', 'S', 'F', '1', '6', 'r', 'm', 0,
+  /* 10146 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '1', '6', 'r', 'm', 0,
+  /* 10158 */ 'C', 'M', 'O', 'V', 'G', '1', '6', 'r', 'm', 0,
+  /* 10168 */ 'L', 'S', 'L', '1', '6', 'r', 'm', 0,
+  /* 10176 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 'm', 0,
+  /* 10185 */ 'C', 'M', 'O', 'V', 'L', '1', '6', 'r', 'm', 0,
+  /* 10195 */ 'C', 'M', 'O', 'V', 'N', 'O', '1', '6', 'r', 'm', 0,
+  /* 10206 */ 'C', 'M', 'O', 'V', 'O', '1', '6', 'r', 'm', 0,
+  /* 10216 */ 'C', 'M', 'P', '1', '6', 'r', 'm', 0,
+  /* 10224 */ 'C', 'M', 'O', 'V', 'N', 'P', '1', '6', 'r', 'm', 0,
+  /* 10235 */ 'C', 'M', 'O', 'V', 'P', '1', '6', 'r', 'm', 0,
+  /* 10245 */ 'L', 'A', 'R', '1', '6', 'r', 'm', 0,
+  /* 10253 */ 'X', 'O', 'R', '1', '6', 'r', 'm', 0,
+  /* 10261 */ 'B', 'S', 'R', '1', '6', 'r', 'm', 0,
+  /* 10269 */ 'L', 'D', 'S', '1', '6', 'r', 'm', 0,
+  /* 10277 */ 'B', 'O', 'U', 'N', 'D', 'S', '1', '6', 'r', 'm', 0,
+  /* 10288 */ 'L', 'E', 'S', '1', '6', 'r', 'm', 0,
+  /* 10296 */ 'L', 'F', 'S', '1', '6', 'r', 'm', 0,
+  /* 10304 */ 'L', 'G', 'S', '1', '6', 'r', 'm', 0,
+  /* 10312 */ 'C', 'M', 'O', 'V', 'N', 'S', '1', '6', 'r', 'm', 0,
+  /* 10323 */ 'L', 'S', 'S', '1', '6', 'r', 'm', 0,
+  /* 10331 */ 'C', 'M', 'O', 'V', 'S', '1', '6', 'r', 'm', 0,
+  /* 10341 */ 'L', 'Z', 'C', 'N', 'T', '1', '6', 'r', 'm', 0,
+  /* 10351 */ 'T', 'Z', 'C', 'N', 'T', '1', '6', 'r', 'm', 0,
+  /* 10361 */ 'T', 'E', 'S', 'T', '1', '6', 'r', 'm', 0,
+  /* 10370 */ 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', '1', '6', 'r', 'm', 0,
+  /* 10386 */ 'S', 'B', 'B', '8', 'r', 'm', 0,
+  /* 10393 */ 'S', 'U', 'B', '8', 'r', 'm', 0,
+  /* 10400 */ 'A', 'D', 'C', '8', 'r', 'm', 0,
+  /* 10407 */ 'X', 'A', 'D', 'D', '8', 'r', 'm', 0,
+  /* 10415 */ 'A', 'N', 'D', '8', 'r', 'm', 0,
+  /* 10422 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '8', 'r', 'm', 0,
+  /* 10433 */ 'C', 'M', 'P', '8', 'r', 'm', 0,
+  /* 10440 */ 'X', 'O', 'R', '8', 'r', 'm', 0,
+  /* 10447 */ 'T', 'E', 'S', 'T', '8', 'r', 'm', 0,
+  /* 10455 */ 'A', 'C', 'Q', 'U', 'I', 'R', 'E', '_', 'M', 'O', 'V', '8', 'r', 'm', 0,
+  /* 10470 */ 'M', 'O', 'V', '3', '2', 's', 'm', 0,
+  /* 10478 */ 'M', 'O', 'V', '6', '4', 's', 'm', 0,
+  /* 10486 */ 'M', 'O', 'V', '1', '6', 's', 'm', 0,
+  /* 10494 */ 'E', 'H', '_', 'S', 'j', 'L', 'j', '_', 'S', 'e', 't', 'u', 'p', 0,
+  /* 10508 */ 'L', 'E', 'A', '3', '2', 'r', 0,
+  /* 10515 */ 'D', 'E', 'C', '3', '2', 'r', 0,
+  /* 10522 */ 'I', 'N', 'C', '3', '2', 'r', 0,
+  /* 10529 */ 'M', 'O', 'V', 'P', 'C', '3', '2', 'r', 0,
+  /* 10538 */ 'S', 'E', 'T', 'B', '_', 'C', '3', '2', 'r', 0,
+  /* 10548 */ 'R', 'D', 'S', 'E', 'E', 'D', '3', '2', 'r', 0,
+  /* 10558 */ 'R', 'D', 'R', 'A', 'N', 'D', '3', '2', 'r', 0,
+  /* 10568 */ 'N', 'E', 'G', '3', '2', 'r', 0,
+  /* 10575 */ 'P', 'U', 'S', 'H', '3', '2', 'r', 0,
+  /* 10583 */ 'C', 'A', 'L', 'L', '3', '2', 'r', 0,
+  /* 10591 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 0,
+  /* 10599 */ 'B', 'S', 'W', 'A', 'P', '3', '2', 'r', 0,
+  /* 10608 */ 'J', 'M', 'P', '3', '2', 'r', 0,
+  /* 10615 */ 'P', 'O', 'P', '3', '2', 'r', 0,
+  /* 10622 */ 'S', 'T', 'R', '3', '2', 'r', 0,
+  /* 10629 */ 'S', 'L', 'D', 'T', '3', '2', 'r', 0,
+  /* 10637 */ 'N', 'O', 'T', '3', '2', 'r', 0,
+  /* 10644 */ 'I', 'D', 'I', 'V', '3', '2', 'r', 0,
+  /* 10652 */ 'S', 'M', 'S', 'W', '3', '2', 'r', 0,
+  /* 10660 */ 'D', 'E', 'C', '3', '2', '_', '3', '2', 'r', 0,
+  /* 10670 */ 'I', 'N', 'C', '3', '2', '_', '3', '2', 'r', 0,
+  /* 10680 */ 'L', 'E', 'A', '6', '4', '_', '3', '2', 'r', 0,
+  /* 10690 */ 'D', 'E', 'C', '6', '4', '_', '3', '2', 'r', 0,
+  /* 10700 */ 'I', 'N', 'C', '6', '4', '_', '3', '2', 'r', 0,
+  /* 10710 */ 'L', 'E', 'A', '6', '4', 'r', 0,
+  /* 10717 */ 'D', 'E', 'C', '6', '4', 'r', 0,
+  /* 10724 */ 'I', 'N', 'C', '6', '4', 'r', 0,
+  /* 10731 */ 'S', 'E', 'T', 'B', '_', 'C', '6', '4', 'r', 0,
+  /* 10741 */ 'R', 'D', 'S', 'E', 'E', 'D', '6', '4', 'r', 0,
+  /* 10751 */ 'R', 'D', 'R', 'A', 'N', 'D', '6', '4', 'r', 0,
+  /* 10761 */ 'N', 'E', 'G', '6', '4', 'r', 0,
+  /* 10768 */ 'P', 'U', 'S', 'H', '6', '4', 'r', 0,
+  /* 10776 */ 'C', 'A', 'L', 'L', '6', '4', 'r', 0,
+  /* 10784 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 0,
+  /* 10792 */ 'B', 'S', 'W', 'A', 'P', '6', '4', 'r', 0,
+  /* 10801 */ 'J', 'M', 'P', '6', '4', 'r', 0,
+  /* 10808 */ 'P', 'O', 'P', '6', '4', 'r', 0,
+  /* 10815 */ 'S', 'T', 'R', '6', '4', 'r', 0,
+  /* 10822 */ 'S', 'L', 'D', 'T', '6', '4', 'r', 0,
+  /* 10830 */ 'N', 'O', 'T', '6', '4', 'r', 0,
+  /* 10837 */ 'I', 'D', 'I', 'V', '6', '4', 'r', 0,
+  /* 10845 */ 'S', 'M', 'S', 'W', '6', '4', 'r', 0,
+  /* 10853 */ 'L', 'E', 'A', '1', '6', 'r', 0,
+  /* 10860 */ 'D', 'E', 'C', '1', '6', 'r', 0,
+  /* 10867 */ 'I', 'N', 'C', '1', '6', 'r', 0,
+  /* 10874 */ 'S', 'E', 'T', 'B', '_', 'C', '1', '6', 'r', 0,
+  /* 10884 */ 'R', 'D', 'S', 'E', 'E', 'D', '1', '6', 'r', 0,
+  /* 10894 */ 'R', 'D', 'R', 'A', 'N', 'D', '1', '6', 'r', 0,
+  /* 10904 */ 'N', 'E', 'G', '1', '6', 'r', 0,
+  /* 10911 */ 'P', 'U', 'S', 'H', '1', '6', 'r', 0,
+  /* 10919 */ 'C', 'A', 'L', 'L', '1', '6', 'r', 0,
+  /* 10927 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 0,
+  /* 10935 */ 'J', 'M', 'P', '1', '6', 'r', 0,
+  /* 10942 */ 'P', 'O', 'P', '1', '6', 'r', 0,
+  /* 10949 */ 'S', 'T', 'R', '1', '6', 'r', 0,
+  /* 10956 */ 'L', 'L', 'D', 'T', '1', '6', 'r', 0,
+  /* 10964 */ 'S', 'L', 'D', 'T', '1', '6', 'r', 0,
+  /* 10972 */ 'N', 'O', 'T', '1', '6', 'r', 0,
+  /* 10979 */ 'I', 'D', 'I', 'V', '1', '6', 'r', 0,
+  /* 10987 */ 'L', 'M', 'S', 'W', '1', '6', 'r', 0,
+  /* 10995 */ 'S', 'M', 'S', 'W', '1', '6', 'r', 0,
+  /* 11003 */ 'D', 'E', 'C', '3', '2', '_', '1', '6', 'r', 0,
+  /* 11013 */ 'I', 'N', 'C', '3', '2', '_', '1', '6', 'r', 0,
+  /* 11023 */ 'D', 'E', 'C', '6', '4', '_', '1', '6', 'r', 0,
+  /* 11033 */ 'I', 'N', 'C', '6', '4', '_', '1', '6', 'r', 0,
+  /* 11043 */ 'D', 'E', 'C', '8', 'r', 0,
+  /* 11049 */ 'I', 'N', 'C', '8', 'r', 0,
+  /* 11055 */ 'S', 'E', 'T', 'B', '_', 'C', '8', 'r', 0,
+  /* 11064 */ 'N', 'E', 'G', '8', 'r', 0,
+  /* 11070 */ 'I', 'M', 'U', 'L', '8', 'r', 0,
+  /* 11077 */ 'N', 'O', 'T', '8', 'r', 0,
+  /* 11083 */ 'I', 'D', 'I', 'V', '8', 'r', 0,
+  /* 11090 */ 'S', 'E', 'T', 'A', 'r', 0,
+  /* 11096 */ 'S', 'E', 'T', 'B', 'r', 0,
+  /* 11102 */ 'S', 'E', 'T', 'A', 'E', 'r', 0,
+  /* 11109 */ 'S', 'E', 'T', 'B', 'E', 'r', 0,
+  /* 11116 */ 'S', 'E', 'T', 'G', 'E', 'r', 0,
+  /* 11123 */ 'S', 'E', 'T', 'L', 'E', 'r', 0,
+  /* 11130 */ 'S', 'E', 'T', 'N', 'E', 'r', 0,
+  /* 11137 */ 'S', 'E', 'T', 'E', 'r', 0,
+  /* 11143 */ 'S', 'E', 'T', 'G', 'r', 0,
+  /* 11149 */ 'S', 'E', 'T', 'L', 'r', 0,
+  /* 11155 */ 'S', 'E', 'T', 'N', 'O', 'r', 0,
+  /* 11162 */ 'S', 'E', 'T', 'O', 'r', 0,
+  /* 11168 */ 'T', 'A', 'I', 'L', 'J', 'M', 'P', 'r', 0,
+  /* 11177 */ 'S', 'E', 'T', 'N', 'P', 'r', 0,
+  /* 11184 */ 'S', 'E', 'T', 'P', 'r', 0,
+  /* 11190 */ 'V', 'E', 'R', 'R', 'r', 0,
+  /* 11196 */ 'L', 'T', 'R', 'r', 0,
+  /* 11201 */ 'S', 'E', 'T', 'N', 'S', 'r', 0,
+  /* 11208 */ 'S', 'E', 'T', 'S', 'r', 0,
+  /* 11214 */ 'V', 'E', 'R', 'W', 'r', 0,
+  /* 11220 */ 'X', 'C', 'H', 'G', '3', '2', 'a', 'r', 0,
+  /* 11229 */ 'X', 'C', 'H', 'G', '6', '4', 'a', 'r', 0,
+  /* 11238 */ 'X', 'C', 'H', 'G', '1', '6', 'a', 'r', 0,
+  /* 11247 */ 'M', 'O', 'V', '3', '2', 'c', 'r', 0,
+  /* 11255 */ 'M', 'O', 'V', '6', '4', 'c', 'r', 0,
+  /* 11263 */ 'M', 'O', 'V', '3', '2', 'd', 'r', 0,
+  /* 11271 */ 'M', 'O', 'V', '6', '4', 'd', 'r', 0,
+  /* 11279 */ 'I', 'n', 't', '_', 'M', 'e', 'm', 'B', 'a', 'r', 'r', 'i', 'e', 'r', 0,
+  /* 11294 */ 'O', 'U', 'T', '3', '2', 'i', 'r', 0,
+  /* 11302 */ 'O', 'U', 'T', '1', '6', 'i', 'r', 0,
+  /* 11310 */ 'O', 'U', 'T', '8', 'i', 'r', 0,
+  /* 11317 */ 'S', 'B', 'B', '3', '2', 'm', 'r', 0,
+  /* 11325 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '3', '2', 'm', 'r', 0,
+  /* 11338 */ 'A', 'D', 'C', '3', '2', 'm', 'r', 0,
+  /* 11346 */ 'B', 'T', 'C', '3', '2', 'm', 'r', 0,
+  /* 11354 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '3', '2', 'm', 'r', 0,
+  /* 11367 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '3', '2', 'm', 'r', 0,
+  /* 11380 */ 'M', 'O', 'V', 'B', 'E', '3', '2', 'm', 'r', 0,
+  /* 11390 */ 'C', 'M', 'P', '3', '2', 'm', 'r', 0,
+  /* 11398 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '3', '2', 'm', 'r', 0,
+  /* 11411 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '3', '2', 'm', 'r', 0,
+  /* 11423 */ 'B', 'T', 'R', '3', '2', 'm', 'r', 0,
+  /* 11431 */ 'B', 'T', 'S', '3', '2', 'm', 'r', 0,
+  /* 11439 */ 'B', 'T', '3', '2', 'm', 'r', 0,
+  /* 11446 */ 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', '3', '2', 'm', 'r', 0,
+  /* 11462 */ 'S', 'B', 'B', '6', '4', 'm', 'r', 0,
+  /* 11470 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '6', '4', 'm', 'r', 0,
+  /* 11483 */ 'A', 'D', 'C', '6', '4', 'm', 'r', 0,
+  /* 11491 */ 'B', 'T', 'C', '6', '4', 'm', 'r', 0,
+  /* 11499 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '6', '4', 'm', 'r', 0,
+  /* 11512 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '6', '4', 'm', 'r', 0,
+  /* 11525 */ 'M', 'O', 'V', 'B', 'E', '6', '4', 'm', 'r', 0,
+  /* 11535 */ 'C', 'M', 'P', '6', '4', 'm', 'r', 0,
+  /* 11543 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '6', '4', 'm', 'r', 0,
+  /* 11556 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '6', '4', 'm', 'r', 0,
+  /* 11568 */ 'B', 'T', 'R', '6', '4', 'm', 'r', 0,
+  /* 11576 */ 'B', 'T', 'S', '6', '4', 'm', 'r', 0,
+  /* 11584 */ 'B', 'T', '6', '4', 'm', 'r', 0,
+  /* 11591 */ 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', '6', '4', 'm', 'r', 0,
+  /* 11607 */ 'S', 'B', 'B', '1', '6', 'm', 'r', 0,
+  /* 11615 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '1', '6', 'm', 'r', 0,
+  /* 11628 */ 'A', 'D', 'C', '1', '6', 'm', 'r', 0,
+  /* 11636 */ 'B', 'T', 'C', '1', '6', 'm', 'r', 0,
+  /* 11644 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '1', '6', 'm', 'r', 0,
+  /* 11657 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '1', '6', 'm', 'r', 0,
+  /* 11670 */ 'M', 'O', 'V', 'B', 'E', '1', '6', 'm', 'r', 0,
+  /* 11680 */ 'A', 'R', 'P', 'L', '1', '6', 'm', 'r', 0,
+  /* 11689 */ 'C', 'M', 'P', '1', '6', 'm', 'r', 0,
+  /* 11697 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '1', '6', 'm', 'r', 0,
+  /* 11710 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '1', '6', 'm', 'r', 0,
+  /* 11722 */ 'B', 'T', 'R', '1', '6', 'm', 'r', 0,
+  /* 11730 */ 'B', 'T', 'S', '1', '6', 'm', 'r', 0,
+  /* 11738 */ 'B', 'T', '1', '6', 'm', 'r', 0,
+  /* 11745 */ 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', '1', '6', 'm', 'r', 0,
+  /* 11761 */ 'S', 'B', 'B', '8', 'm', 'r', 0,
+  /* 11768 */ 'L', 'O', 'C', 'K', '_', 'S', 'U', 'B', '8', 'm', 'r', 0,
+  /* 11780 */ 'A', 'D', 'C', '8', 'm', 'r', 0,
+  /* 11787 */ 'L', 'O', 'C', 'K', '_', 'A', 'D', 'D', '8', 'm', 'r', 0,
+  /* 11799 */ 'L', 'O', 'C', 'K', '_', 'A', 'N', 'D', '8', 'm', 'r', 0,
+  /* 11811 */ 'C', 'M', 'P', '8', 'm', 'r', 0,
+  /* 11818 */ 'L', 'O', 'C', 'K', '_', 'X', 'O', 'R', '8', 'm', 'r', 0,
+  /* 11830 */ 'L', 'O', 'C', 'K', '_', 'O', 'R', '8', 'm', 'r', 0,
+  /* 11841 */ 'R', 'E', 'L', 'E', 'A', 'S', 'E', '_', 'M', 'O', 'V', '8', 'm', 'r', 0,
+  /* 11856 */ 'P', 'U', 'S', 'H', '3', '2', 'r', 'm', 'r', 0,
+  /* 11866 */ 'P', 'O', 'P', '3', '2', 'r', 'm', 'r', 0,
+  /* 11875 */ 'P', 'U', 'S', 'H', '6', '4', 'r', 'm', 'r', 0,
+  /* 11885 */ 'P', 'O', 'P', '6', '4', 'r', 'm', 'r', 0,
+  /* 11894 */ 'P', 'U', 'S', 'H', '1', '6', 'r', 'm', 'r', 0,
+  /* 11904 */ 'P', 'O', 'P', '1', '6', 'r', 'm', 'r', 0,
+  /* 11913 */ 'C', 'M', 'O', 'V', 'A', '3', '2', 'r', 'r', 0,
+  /* 11923 */ 'S', 'B', 'B', '3', '2', 'r', 'r', 0,
+  /* 11931 */ 'S', 'U', 'B', '3', '2', 'r', 'r', 0,
+  /* 11939 */ 'C', 'M', 'O', 'V', 'B', '3', '2', 'r', 'r', 0,
+  /* 11949 */ 'A', 'D', 'C', '3', '2', 'r', 'r', 0,
+  /* 11957 */ 'B', 'L', 'C', 'I', 'C', '3', '2', 'r', 'r', 0,
+  /* 11967 */ 'B', 'L', 'S', 'I', 'C', '3', '2', 'r', 'r', 0,
+  /* 11977 */ 'T', '1', 'M', 'S', 'K', 'C', '3', '2', 'r', 'r', 0,
+  /* 11988 */ 'B', 'T', 'C', '3', '2', 'r', 'r', 0,
+  /* 11996 */ 'V', 'M', 'R', 'E', 'A', 'D', '3', '2', 'r', 'r', 0,
+  /* 12007 */ 'X', 'A', 'D', 'D', '3', '2', 'r', 'r', 0,
+  /* 12016 */ 'A', 'N', 'D', '3', '2', 'r', 'r', 0,
+  /* 12024 */ 'C', 'M', 'O', 'V', 'A', 'E', '3', '2', 'r', 'r', 0,
+  /* 12035 */ 'C', 'M', 'O', 'V', 'B', 'E', '3', '2', 'r', 'r', 0,
+  /* 12046 */ 'C', 'M', 'O', 'V', 'G', 'E', '3', '2', 'r', 'r', 0,
+  /* 12057 */ 'C', 'M', 'O', 'V', 'L', 'E', '3', '2', 'r', 'r', 0,
+  /* 12068 */ 'C', 'M', 'O', 'V', 'N', 'E', '3', '2', 'r', 'r', 0,
+  /* 12079 */ 'V', 'M', 'W', 'R', 'I', 'T', 'E', '3', '2', 'r', 'r', 0,
+  /* 12091 */ 'C', 'M', 'O', 'V', 'E', '3', '2', 'r', 'r', 0,
+  /* 12101 */ 'B', 'S', 'F', '3', '2', 'r', 'r', 0,
+  /* 12109 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '3', '2', 'r', 'r', 0,
+  /* 12121 */ 'C', 'M', 'O', 'V', 'G', '3', '2', 'r', 'r', 0,
+  /* 12131 */ 'B', 'L', 'C', 'I', '3', '2', 'r', 'r', 0,
+  /* 12140 */ 'B', 'Z', 'H', 'I', '3', '2', 'r', 'r', 0,
+  /* 12149 */ 'B', 'L', 'S', 'I', '3', '2', 'r', 'r', 0,
+  /* 12158 */ 'B', 'L', 'C', 'M', 'S', 'K', '3', '2', 'r', 'r', 0,
+  /* 12169 */ 'B', 'L', 'S', 'M', 'S', 'K', '3', '2', 'r', 'r', 0,
+  /* 12180 */ 'T', 'Z', 'M', 'S', 'K', '3', '2', 'r', 'r', 0,
+  /* 12190 */ 'B', 'L', 'C', 'F', 'I', 'L', 'L', '3', '2', 'r', 'r', 0,
+  /* 12202 */ 'B', 'L', 'S', 'F', 'I', 'L', 'L', '3', '2', 'r', 'r', 0,
+  /* 12214 */ 'L', 'S', 'L', '3', '2', 'r', 'r', 0,
+  /* 12222 */ 'I', 'M', 'U', 'L', '3', '2', 'r', 'r', 0,
+  /* 12231 */ 'C', 'M', 'O', 'V', 'L', '3', '2', 'r', 'r', 0,
+  /* 12241 */ 'A', 'N', 'D', 'N', '3', '2', 'r', 'r', 0,
+  /* 12250 */ 'I', 'N', '3', '2', 'r', 'r', 0,
+  /* 12257 */ 'C', 'M', 'O', 'V', 'N', 'O', '3', '2', 'r', 'r', 0,
+  /* 12268 */ 'C', 'M', 'O', 'V', 'O', '3', '2', 'r', 'r', 0,
+  /* 12278 */ 'P', 'D', 'E', 'P', '3', '2', 'r', 'r', 0,
+  /* 12287 */ 'C', 'M', 'P', '3', '2', 'r', 'r', 0,
+  /* 12295 */ 'C', 'M', 'O', 'V', 'N', 'P', '3', '2', 'r', 'r', 0,
+  /* 12306 */ 'C', 'M', 'O', 'V', 'P', '3', '2', 'r', 'r', 0,
+  /* 12316 */ 'L', 'A', 'R', '3', '2', 'r', 'r', 0,
+  /* 12324 */ 'X', 'O', 'R', '3', '2', 'r', 'r', 0,
+  /* 12332 */ 'B', 'S', 'R', '3', '2', 'r', 'r', 0,
+  /* 12340 */ 'B', 'L', 'S', 'R', '3', '2', 'r', 'r', 0,
+  /* 12349 */ 'B', 'T', 'R', '3', '2', 'r', 'r', 0,
+  /* 12357 */ 'B', 'E', 'X', 'T', 'R', '3', '2', 'r', 'r', 0,
+  /* 12367 */ 'B', 'L', 'C', 'S', '3', '2', 'r', 'r', 0,
+  /* 12376 */ 'C', 'M', 'O', 'V', 'N', 'S', '3', '2', 'r', 'r', 0,
+  /* 12387 */ 'B', 'T', 'S', '3', '2', 'r', 'r', 0,
+  /* 12395 */ 'C', 'M', 'O', 'V', 'S', '3', '2', 'r', 'r', 0,
+  /* 12405 */ 'B', 'T', '3', '2', 'r', 'r', 0,
+  /* 12412 */ 'L', 'Z', 'C', 'N', 'T', '3', '2', 'r', 'r', 0,
+  /* 12422 */ 'T', 'Z', 'C', 'N', 'T', '3', '2', 'r', 'r', 0,
+  /* 12432 */ 'T', 'E', 'S', 'T', '3', '2', 'r', 'r', 0,
+  /* 12441 */ 'O', 'U', 'T', '3', '2', 'r', 'r', 0,
+  /* 12449 */ 'P', 'E', 'X', 'T', '3', '2', 'r', 'r', 0,
+  /* 12458 */ 'M', 'O', 'V', '3', '2', 'r', 'r', 0,
+  /* 12466 */ 'A', 'D', 'C', 'X', '3', '2', 'r', 'r', 0,
+  /* 12475 */ 'S', 'H', 'L', 'X', '3', '2', 'r', 'r', 0,
+  /* 12484 */ 'M', 'U', 'L', 'X', '3', '2', 'r', 'r', 0,
+  /* 12493 */ 'A', 'D', 'O', 'X', '3', '2', 'r', 'r', 0,
+  /* 12502 */ 'S', 'A', 'R', 'X', '3', '2', 'r', 'r', 0,
+  /* 12511 */ 'S', 'H', 'R', 'X', '3', '2', 'r', 'r', 0,
+  /* 12520 */ 'C', 'M', 'O', 'V', 'A', '6', '4', 'r', 'r', 0,
+  /* 12530 */ 'S', 'B', 'B', '6', '4', 'r', 'r', 0,
+  /* 12538 */ 'S', 'U', 'B', '6', '4', 'r', 'r', 0,
+  /* 12546 */ 'C', 'M', 'O', 'V', 'B', '6', '4', 'r', 'r', 0,
+  /* 12556 */ 'A', 'D', 'C', '6', '4', 'r', 'r', 0,
+  /* 12564 */ 'B', 'L', 'C', 'I', 'C', '6', '4', 'r', 'r', 0,
+  /* 12574 */ 'B', 'L', 'S', 'I', 'C', '6', '4', 'r', 'r', 0,
+  /* 12584 */ 'T', '1', 'M', 'S', 'K', 'C', '6', '4', 'r', 'r', 0,
+  /* 12595 */ 'B', 'T', 'C', '6', '4', 'r', 'r', 0,
+  /* 12603 */ 'V', 'M', 'R', 'E', 'A', 'D', '6', '4', 'r', 'r', 0,
+  /* 12614 */ 'X', 'A', 'D', 'D', '6', '4', 'r', 'r', 0,
+  /* 12623 */ 'A', 'N', 'D', '6', '4', 'r', 'r', 0,
+  /* 12631 */ 'C', 'M', 'O', 'V', 'A', 'E', '6', '4', 'r', 'r', 0,
+  /* 12642 */ 'C', 'M', 'O', 'V', 'B', 'E', '6', '4', 'r', 'r', 0,
+  /* 12653 */ 'C', 'M', 'O', 'V', 'G', 'E', '6', '4', 'r', 'r', 0,
+  /* 12664 */ 'C', 'M', 'O', 'V', 'L', 'E', '6', '4', 'r', 'r', 0,
+  /* 12675 */ 'C', 'M', 'O', 'V', 'N', 'E', '6', '4', 'r', 'r', 0,
+  /* 12686 */ 'V', 'M', 'W', 'R', 'I', 'T', 'E', '6', '4', 'r', 'r', 0,
+  /* 12698 */ 'C', 'M', 'O', 'V', 'E', '6', '4', 'r', 'r', 0,
+  /* 12708 */ 'B', 'S', 'F', '6', '4', 'r', 'r', 0,
+  /* 12716 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '6', '4', 'r', 'r', 0,
+  /* 12728 */ 'C', 'M', 'O', 'V', 'G', '6', '4', 'r', 'r', 0,
+  /* 12738 */ 'B', 'L', 'C', 'I', '6', '4', 'r', 'r', 0,
+  /* 12747 */ 'B', 'Z', 'H', 'I', '6', '4', 'r', 'r', 0,
+  /* 12756 */ 'B', 'L', 'S', 'I', '6', '4', 'r', 'r', 0,
+  /* 12765 */ 'B', 'L', 'C', 'M', 'S', 'K', '6', '4', 'r', 'r', 0,
+  /* 12776 */ 'B', 'L', 'S', 'M', 'S', 'K', '6', '4', 'r', 'r', 0,
+  /* 12787 */ 'T', 'Z', 'M', 'S', 'K', '6', '4', 'r', 'r', 0,
+  /* 12797 */ 'B', 'L', 'C', 'F', 'I', 'L', 'L', '6', '4', 'r', 'r', 0,
+  /* 12809 */ 'B', 'L', 'S', 'F', 'I', 'L', 'L', '6', '4', 'r', 'r', 0,
+  /* 12821 */ 'L', 'S', 'L', '6', '4', 'r', 'r', 0,
+  /* 12829 */ 'I', 'M', 'U', 'L', '6', '4', 'r', 'r', 0,
+  /* 12838 */ 'C', 'M', 'O', 'V', 'L', '6', '4', 'r', 'r', 0,
+  /* 12848 */ 'A', 'N', 'D', 'N', '6', '4', 'r', 'r', 0,
+  /* 12857 */ 'C', 'M', 'O', 'V', 'N', 'O', '6', '4', 'r', 'r', 0,
+  /* 12868 */ 'C', 'M', 'O', 'V', 'O', '6', '4', 'r', 'r', 0,
+  /* 12878 */ 'P', 'D', 'E', 'P', '6', '4', 'r', 'r', 0,
+  /* 12887 */ 'C', 'M', 'P', '6', '4', 'r', 'r', 0,
+  /* 12895 */ 'C', 'M', 'O', 'V', 'N', 'P', '6', '4', 'r', 'r', 0,
+  /* 12906 */ 'C', 'M', 'O', 'V', 'P', '6', '4', 'r', 'r', 0,
+  /* 12916 */ 'L', 'A', 'R', '6', '4', 'r', 'r', 0,
+  /* 12924 */ 'X', 'O', 'R', '6', '4', 'r', 'r', 0,
+  /* 12932 */ 'B', 'S', 'R', '6', '4', 'r', 'r', 0,
+  /* 12940 */ 'B', 'L', 'S', 'R', '6', '4', 'r', 'r', 0,
+  /* 12949 */ 'B', 'T', 'R', '6', '4', 'r', 'r', 0,
+  /* 12957 */ 'B', 'E', 'X', 'T', 'R', '6', '4', 'r', 'r', 0,
+  /* 12967 */ 'B', 'L', 'C', 'S', '6', '4', 'r', 'r', 0,
+  /* 12976 */ 'C', 'M', 'O', 'V', 'N', 'S', '6', '4', 'r', 'r', 0,
+  /* 12987 */ 'B', 'T', 'S', '6', '4', 'r', 'r', 0,
+  /* 12995 */ 'C', 'M', 'O', 'V', 'S', '6', '4', 'r', 'r', 0,
+  /* 13005 */ 'B', 'T', '6', '4', 'r', 'r', 0,
+  /* 13012 */ 'L', 'Z', 'C', 'N', 'T', '6', '4', 'r', 'r', 0,
+  /* 13022 */ 'T', 'Z', 'C', 'N', 'T', '6', '4', 'r', 'r', 0,
+  /* 13032 */ 'T', 'E', 'S', 'T', '6', '4', 'r', 'r', 0,
+  /* 13041 */ 'P', 'E', 'X', 'T', '6', '4', 'r', 'r', 0,
+  /* 13050 */ 'M', 'O', 'V', '6', '4', 'r', 'r', 0,
+  /* 13058 */ 'A', 'D', 'C', 'X', '6', '4', 'r', 'r', 0,
+  /* 13067 */ 'S', 'H', 'L', 'X', '6', '4', 'r', 'r', 0,
+  /* 13076 */ 'M', 'U', 'L', 'X', '6', '4', 'r', 'r', 0,
+  /* 13085 */ 'A', 'D', 'O', 'X', '6', '4', 'r', 'r', 0,
+  /* 13094 */ 'S', 'A', 'R', 'X', '6', '4', 'r', 'r', 0,
+  /* 13103 */ 'S', 'H', 'R', 'X', '6', '4', 'r', 'r', 0,
+  /* 13112 */ 'C', 'M', 'O', 'V', 'A', '1', '6', 'r', 'r', 0,
+  /* 13122 */ 'S', 'B', 'B', '1', '6', 'r', 'r', 0,
+  /* 13130 */ 'S', 'U', 'B', '1', '6', 'r', 'r', 0,
+  /* 13138 */ 'C', 'M', 'O', 'V', 'B', '1', '6', 'r', 'r', 0,
+  /* 13148 */ 'A', 'D', 'C', '1', '6', 'r', 'r', 0,
+  /* 13156 */ 'B', 'T', 'C', '1', '6', 'r', 'r', 0,
+  /* 13164 */ 'X', 'A', 'D', 'D', '1', '6', 'r', 'r', 0,
+  /* 13173 */ 'A', 'N', 'D', '1', '6', 'r', 'r', 0,
+  /* 13181 */ 'C', 'M', 'O', 'V', 'A', 'E', '1', '6', 'r', 'r', 0,
+  /* 13192 */ 'C', 'M', 'O', 'V', 'B', 'E', '1', '6', 'r', 'r', 0,
+  /* 13203 */ 'C', 'M', 'O', 'V', 'G', 'E', '1', '6', 'r', 'r', 0,
+  /* 13214 */ 'C', 'M', 'O', 'V', 'L', 'E', '1', '6', 'r', 'r', 0,
+  /* 13225 */ 'C', 'M', 'O', 'V', 'N', 'E', '1', '6', 'r', 'r', 0,
+  /* 13236 */ 'C', 'M', 'O', 'V', 'E', '1', '6', 'r', 'r', 0,
+  /* 13246 */ 'B', 'S', 'F', '1', '6', 'r', 'r', 0,
+  /* 13254 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '1', '6', 'r', 'r', 0,
+  /* 13266 */ 'C', 'M', 'O', 'V', 'G', '1', '6', 'r', 'r', 0,
+  /* 13276 */ 'A', 'R', 'P', 'L', '1', '6', 'r', 'r', 0,
+  /* 13285 */ 'L', 'S', 'L', '1', '6', 'r', 'r', 0,
+  /* 13293 */ 'I', 'M', 'U', 'L', '1', '6', 'r', 'r', 0,
+  /* 13302 */ 'C', 'M', 'O', 'V', 'L', '1', '6', 'r', 'r', 0,
+  /* 13312 */ 'I', 'N', '1', '6', 'r', 'r', 0,
+  /* 13319 */ 'C', 'M', 'O', 'V', 'N', 'O', '1', '6', 'r', 'r', 0,
+  /* 13330 */ 'C', 'M', 'O', 'V', 'O', '1', '6', 'r', 'r', 0,
+  /* 13340 */ 'C', 'M', 'P', '1', '6', 'r', 'r', 0,
+  /* 13348 */ 'C', 'M', 'O', 'V', 'N', 'P', '1', '6', 'r', 'r', 0,
+  /* 13359 */ 'C', 'M', 'O', 'V', 'P', '1', '6', 'r', 'r', 0,
+  /* 13369 */ 'L', 'A', 'R', '1', '6', 'r', 'r', 0,
+  /* 13377 */ 'X', 'O', 'R', '1', '6', 'r', 'r', 0,
+  /* 13385 */ 'B', 'S', 'R', '1', '6', 'r', 'r', 0,
+  /* 13393 */ 'B', 'T', 'R', '1', '6', 'r', 'r', 0,
+  /* 13401 */ 'C', 'M', 'O', 'V', 'N', 'S', '1', '6', 'r', 'r', 0,
+  /* 13412 */ 'B', 'T', 'S', '1', '6', 'r', 'r', 0,
+  /* 13420 */ 'C', 'M', 'O', 'V', 'S', '1', '6', 'r', 'r', 0,
+  /* 13430 */ 'B', 'T', '1', '6', 'r', 'r', 0,
+  /* 13437 */ 'L', 'Z', 'C', 'N', 'T', '1', '6', 'r', 'r', 0,
+  /* 13447 */ 'T', 'Z', 'C', 'N', 'T', '1', '6', 'r', 'r', 0,
+  /* 13457 */ 'T', 'E', 'S', 'T', '1', '6', 'r', 'r', 0,
+  /* 13466 */ 'O', 'U', 'T', '1', '6', 'r', 'r', 0,
+  /* 13474 */ 'M', 'O', 'V', '1', '6', 'r', 'r', 0,
+  /* 13482 */ 'S', 'B', 'B', '8', 'r', 'r', 0,
+  /* 13489 */ 'S', 'U', 'B', '8', 'r', 'r', 0,
+  /* 13496 */ 'A', 'D', 'C', '8', 'r', 'r', 0,
+  /* 13503 */ 'X', 'A', 'D', 'D', '8', 'r', 'r', 0,
+  /* 13511 */ 'A', 'N', 'D', '8', 'r', 'r', 0,
+  /* 13518 */ 'C', 'M', 'P', 'X', 'C', 'H', 'G', '8', 'r', 'r', 0,
+  /* 13529 */ 'I', 'N', '8', 'r', 'r', 0,
+  /* 13535 */ 'C', 'M', 'P', '8', 'r', 'r', 0,
+  /* 13542 */ 'X', 'O', 'R', '8', 'r', 'r', 0,
+  /* 13549 */ 'T', 'E', 'S', 'T', '8', 'r', 'r', 0,
+  /* 13557 */ 'O', 'U', 'T', '8', 'r', 'r', 0,
+  /* 13564 */ 'M', 'O', 'V', '8', 'r', 'r', 0,
+  /* 13571 */ 'M', 'O', 'V', '3', '2', 's', 'r', 0,
+  /* 13579 */ 'M', 'O', 'V', '6', '4', 's', 'r', 0,
+  /* 13587 */ 'M', 'O', 'V', '1', '6', 's', 'r', 0,
+  /* 13595 */ 'M', 'O', 'V', '3', '2', 'm', 's', 0,
+  /* 13603 */ 'M', 'O', 'V', '6', '4', 'm', 's', 0,
+  /* 13611 */ 'M', 'O', 'V', '1', '6', 'm', 's', 0,
+  /* 13619 */ 'M', 'O', 'V', '3', '2', 'r', 's', 0,
+  /* 13627 */ 'M', 'O', 'V', '6', '4', 'r', 's', 0,
+  /* 13635 */ 'M', 'O', 'V', '1', '6', 'r', 's', 0,
+  /* 13643 */ 'M', 'O', 'V', '3', '2', 'r', 'i', '_', 'a', 'l', 't', 0,
+  /* 13655 */ 'M', 'O', 'V', '1', '6', 'r', 'i', '_', 'a', 'l', 't', 0,
+  /* 13667 */ 'M', 'O', 'V', '8', 'r', 'i', '_', 'a', 'l', 't', 0,
+};
+
+static const unsigned X86InstrNameIndices[] = {
+    5128U, 5879U, 5771U, 5784U, 5762U, 5823U, 5059U, 5074U, 
+    5029U, 5088U, 6113U, 5007U, 4912U, 6828U, 4930U, 6200U, 
+    4884U, 5918U, 6180U, 4602U, 3506U, 3527U, 6076U, 10370U, 
+    9349U, 9942U, 10455U, 3171U, 7296U, 3841U, 11628U, 7867U, 
+    4196U, 10048U, 13148U, 6445U, 1281U, 7039U, 3579U, 11338U, 
+    7627U, 4000U, 8835U, 11949U, 6253U, 1354U, 1452U, 3710U, 
+    11483U, 1584U, 4098U, 9455U, 12556U, 6349U, 3499U, 7455U, 
+    11780U, 8001U, 10400U, 13496U, 6539U, 9365U, 12466U, 9958U, 
+    13058U, 3180U, 7309U, 3864U, 11649U, 7875U, 4214U, 4706U, 
+    4729U, 10057U, 13165U, 4762U, 6457U, 1290U, 7052U, 3602U, 
+    11359U, 7635U, 4018U, 4682U, 4718U, 8886U, 12008U, 4740U, 
+    6265U, 1363U, 1467U, 3733U, 11504U, 1594U, 4669U, 4116U, 
+    4694U, 9506U, 12615U, 4751U, 6361U, 3513U, 7467U, 11792U, 
+    8008U, 10408U, 13504U, 6550U, 908U, 2186U, 938U, 2225U, 
+    9392U, 12493U, 9985U, 13085U, 3189U, 7322U, 3878U, 11662U, 
+    7883U, 4223U, 10065U, 13173U, 6469U, 1299U, 7065U, 3616U, 
+    11372U, 7643U, 4027U, 8894U, 12016U, 6277U, 1372U, 1482U, 
+    3747U, 11517U, 1604U, 4125U, 9514U, 12623U, 6373U, 3520U, 
+    7479U, 11804U, 8015U, 10415U, 13511U, 6561U, 9119U, 12241U, 
+    9739U, 12848U, 11680U, 13276U, 596U, 2836U, 789U, 1953U, 
+    608U, 3353U, 3048U, 1118U, 2374U, 694U, 3439U, 2883U, 
+    879U, 2145U, 633U, 3382U, 2846U, 799U, 1963U, 620U, 
+    3362U, 2914U, 975U, 2252U, 671U, 3410U, 584U, 658U, 
+    3058U, 1128U, 2384U, 706U, 3448U, 2893U, 889U, 2155U, 
+    645U, 3391U, 2923U, 984U, 2270U, 682U, 3418U, 9220U, 
+    12357U, 9840U, 12957U, 7073U, 7651U, 7199U, 7767U, 9068U, 
+    12190U, 9688U, 12797U, 9009U, 12131U, 9629U, 12738U, 8843U, 
+    11957U, 9463U, 12564U, 9036U, 12158U, 9656U, 12765U, 9230U, 
+    12367U, 9850U, 12967U, 9080U, 12202U, 9700U, 12809U, 9027U, 
+    12149U, 9647U, 12756U, 8853U, 11967U, 9473U, 12574U, 9047U, 
+    12169U, 9667U, 12776U, 9211U, 12340U, 9831U, 12940U, 10277U, 
+    9247U, 10138U, 13246U, 8979U, 12101U, 9599U, 12708U, 10261U, 
+    13385U, 9203U, 12332U, 9823U, 12932U, 10599U, 10792U, 3941U, 
+    11738U, 4268U, 13430U, 3679U, 11439U, 4072U, 12405U, 3810U, 
+    11584U, 4170U, 13005U, 3850U, 11636U, 4205U, 13156U, 3588U, 
+    11346U, 4009U, 11988U, 3719U, 11491U, 4107U, 12595U, 3923U, 
+    11722U, 4250U, 13393U, 3661U, 11423U, 4054U, 12349U, 3792U, 
+    11568U, 4152U, 12949U, 3932U, 11730U, 4259U, 13412U, 3670U, 
+    11431U, 4063U, 12387U, 3801U, 11576U, 4161U, 12987U, 9018U, 
+    12140U, 9638U, 12747U, 8407U, 10919U, 8171U, 10583U, 8295U, 
+    1667U, 10776U, 3234U, 1681U, 6605U, 5949U, 4959U, 4817U, 
+    4849U, 4880U, 5118U, 5132U, 6130U, 4853U, 10012U, 13112U, 
+    8799U, 11913U, 9419U, 12520U, 10073U, 13181U, 8902U, 12024U, 
+    9522U, 12631U, 10038U, 13138U, 8825U, 11939U, 9445U, 12546U, 
+    10084U, 13192U, 8913U, 12035U, 9533U, 12642U, 10128U, 13236U, 
+    8969U, 12091U, 9589U, 12698U, 10158U, 13266U, 8999U, 12121U, 
+    9619U, 12728U, 10095U, 13203U, 8924U, 12046U, 9544U, 12653U, 
+    10185U, 13302U, 9109U, 12231U, 9729U, 12838U, 10106U, 13214U, 
+    8935U, 12057U, 9555U, 12664U, 10117U, 13225U, 8946U, 12068U, 
+    9566U, 12675U, 10195U, 13319U, 9128U, 12257U, 9748U, 12857U, 
+    10224U, 13348U, 9166U, 12295U, 9786U, 12895U, 10312U, 13401U, 
+    9282U, 12376U, 9875U, 12976U, 10206U, 13330U, 9139U, 12268U, 
+    9759U, 12868U, 10235U, 13359U, 9177U, 12306U, 9797U, 12906U, 
+    10331U, 13420U, 9301U, 12395U, 9894U, 12995U, 955U, 2242U, 
+    2904U, 965U, 3401U, 927U, 2205U, 26U, 830U, 2043U, 
+    2102U, 819U, 2054U, 2113U, 842U, 2065U, 2124U, 3198U, 
+    7354U, 3887U, 11689U, 7922U, 4232U, 10216U, 13340U, 6481U, 
+    1308U, 7108U, 3625U, 11390U, 7693U, 4036U, 9158U, 12287U, 
+    6289U, 1391U, 1492U, 3756U, 11535U, 1614U, 4134U, 9778U, 
+    12887U, 6385U, 3534U, 7507U, 11811U, 8049U, 10433U, 13535U, 
+    6572U, 3017U, 1078U, 2321U, 3433U, 4637U, 10146U, 13254U, 
+    8987U, 12109U, 9607U, 12716U, 4649U, 10422U, 13518U, 781U, 
+    1945U, 5909U, 6768U, 4908U, 4925U, 4606U, 6080U, 6718U, 
+    8378U, 10860U, 11003U, 10660U, 8142U, 10515U, 8512U, 11023U, 
+    8244U, 10690U, 8269U, 10717U, 8537U, 11043U, 8489U, 10980U, 
+    8237U, 10645U, 8366U, 10838U, 8574U, 11084U, 6778U, 5899U, 
+    2166U, 1725U, 2635U, 1743U, 2653U, 10494U, 6041U, 6788U, 
+    6986U, 8404U, 6965U, 8168U, 2135U, 6997U, 8423U, 6976U, 
+    8187U, 2216U, 5872U, 6798U, 4837U, 6808U, 6176U, 8488U, 
+    10979U, 8236U, 10644U, 8365U, 10837U, 8573U, 11083U, 8415U, 
+    10927U, 10176U, 7601U, 3971U, 13293U, 8127U, 4430U, 8179U, 
+    10591U, 9100U, 7591U, 3949U, 12222U, 8117U, 4364U, 8303U, 
+    10784U, 9720U, 1552U, 3960U, 12829U, 1655U, 4397U, 8560U, 
+    11070U, 2888U, 7915U, 13312U, 884U, 7686U, 12250U, 3387U, 
+    8043U, 13529U, 8390U, 10867U, 11013U, 10670U, 8154U, 10522U, 
+    8522U, 11033U, 8254U, 10700U, 8281U, 10724U, 8548U, 11049U, 
+    6187U, 51U, 1893U, 5913U, 4903U, 1109U, 2354U, 5102U, 
+    719U, 1898U, 761U, 1925U, 771U, 1935U, 3041U, 1102U, 
+    2328U, 11279U, 66U, 1809U, 2729U, 56U, 1799U, 2719U, 
+    72U, 1815U, 2735U, 61U, 1804U, 2724U, 6833U, 1243U, 
+    2534U, 84U, 1827U, 2747U, 78U, 1821U, 2741U, 101U, 
+    1844U, 2764U, 89U, 1832U, 2752U, 106U, 1849U, 2769U, 
+    8426U, 10935U, 8190U, 10608U, 8311U, 10801U, 127U, 1870U, 
+    2790U, 95U, 1838U, 2758U, 116U, 1859U, 2779U, 133U, 
+    1876U, 2796U, 144U, 1887U, 2807U, 111U, 1854U, 2774U, 
+    122U, 1865U, 2785U, 6838U, 139U, 1882U, 2802U, 5049U, 
+    10245U, 13369U, 9187U, 12316U, 9807U, 12916U, 2872U, 4636U, 
+    868U, 2091U, 3372U, 4648U, 10269U, 9239U, 10853U, 10508U, 
+    10680U, 10710U, 5017U, 2018U, 10288U, 9258U, 10296U, 9266U, 
+    9859U, 8433U, 8197U, 8318U, 10304U, 9274U, 9867U, 8449U, 
+    8213U, 8334U, 8465U, 10956U, 8496U, 10987U, 7304U, 3859U, 
+    11644U, 7047U, 3597U, 11354U, 1462U, 3728U, 11499U, 7462U, 
+    11787U, 7317U, 3873U, 11657U, 7060U, 3611U, 11367U, 1477U, 
+    3742U, 11512U, 7474U, 11799U, 8373U, 8137U, 8264U, 8532U, 
+    8385U, 8149U, 8276U, 8543U, 7407U, 3910U, 11710U, 7161U, 
+    3648U, 11411U, 1517U, 3779U, 11556U, 7554U, 11830U, 6745U, 
+    7283U, 3827U, 11615U, 7026U, 3565U, 11325U, 1437U, 3696U, 
+    11470U, 7443U, 11768U, 7394U, 3896U, 11697U, 7148U, 3634U, 
+    11398U, 1502U, 3765U, 11543U, 7542U, 11818U, 4793U, 5834U, 
+    5960U, 6622U, 5939U, 4953U, 4946U, 5793U, 5953U, 6609U, 
+    5858U, 5978U, 6646U, 10168U, 13285U, 9092U, 12214U, 9712U, 
+    12821U, 10323U, 9293U, 9886U, 8704U, 11196U, 2828U, 753U, 
+    1917U, 3346U, 10341U, 13437U, 9311U, 12412U, 9904U, 13012U, 
+    5864U, 6147U, 0U, 3292U, 3082U, 7428U, 11753U, 13611U, 
+    6884U, 3119U, 7979U, 13655U, 10378U, 13474U, 6505U, 13635U, 
+    10486U, 13587U, 1705U, 3069U, 11247U, 11263U, 7182U, 11454U, 
+    13595U, 6844U, 3106U, 37U, 6911U, 6949U, 7750U, 2591U, 
+    13643U, 9357U, 12458U, 6313U, 13619U, 10470U, 13571U, 3282U, 
+    1715U, 2625U, 4513U, 11255U, 11271U, 1542U, 11599U, 13603U, 
+    6874U, 6854U, 6864U, 6894U, 6919U, 6957U, 7834U, 1645U, 
+    9950U, 13050U, 6409U, 13627U, 10478U, 13579U, 4522U, 3095U, 
+    7573U, 11849U, 6679U, 6903U, 3132U, 8099U, 13667U, 10463U, 
+    6666U, 13564U, 6692U, 6594U, 11670U, 10085U, 11380U, 8914U, 
+    11525U, 9534U, 10529U, 4811U, 5852U, 5972U, 6640U, 4474U, 
+    4563U, 3246U, 4441U, 3302U, 4530U, 3270U, 1693U, 4463U, 
+    3326U, 1787U, 4552U, 4485U, 4574U, 4496U, 4585U, 3258U, 
+    4452U, 3314U, 4541U, 5984U, 6012U, 5998U, 6025U, 8416U, 
+    10928U, 8180U, 10592U, 8304U, 10785U, 8561U, 11071U, 9383U, 
+    12484U, 9976U, 13076U, 8397U, 10904U, 8161U, 10568U, 8288U, 
+    10761U, 8554U, 11064U, 5944U, 5828U, 6616U, 8481U, 10972U, 
+    8229U, 10637U, 8358U, 10830U, 8567U, 11077U, 3208U, 7387U, 
+    3902U, 11703U, 7955U, 4242U, 10254U, 13378U, 6494U, 1318U, 
+    7141U, 3640U, 11404U, 6936U, 7726U, 4046U, 9196U, 12325U, 
+    6302U, 1401U, 1508U, 3771U, 11549U, 1625U, 4144U, 9816U, 
+    12925U, 6398U, 3542U, 7536U, 11824U, 8078U, 10441U, 13543U, 
+    6584U, 11302U, 13466U, 11294U, 12441U, 11310U, 13557U, 4805U, 
+    5846U, 6634U, 9149U, 12278U, 9769U, 12878U, 9340U, 12449U, 
+    9933U, 13041U, 10942U, 8790U, 11904U, 10615U, 8752U, 11866U, 
+    10808U, 8771U, 11885U, 2821U, 737U, 2958U, 1019U, 2975U, 
+    1036U, 2865U, 861U, 2084U, 2992U, 1053U, 2296U, 3009U, 
+    1070U, 2313U, 3033U, 1094U, 3476U, 10911U, 8780U, 11894U, 
+    3458U, 10575U, 8742U, 11856U, 3143U, 1381U, 3467U, 10768U, 
+    8761U, 11875U, 2813U, 729U, 2940U, 1001U, 2949U, 1010U, 
+    2966U, 1027U, 2857U, 853U, 2076U, 2983U, 1044U, 2287U, 
+    3000U, 1061U, 2304U, 3024U, 1085U, 3226U, 1419U, 262U, 
+    5266U, 7330U, 479U, 5511U, 7891U, 150U, 5140U, 7084U, 
+    367U, 5385U, 7662U, 206U, 5203U, 7210U, 423U, 5448U, 
+    7778U, 318U, 5329U, 7486U, 535U, 5574U, 8022U, 294U, 
+    5302U, 7370U, 511U, 5547U, 7938U, 182U, 5176U, 7124U, 
+    399U, 5421U, 7709U, 238U, 5239U, 7242U, 455U, 5484U, 
+    7810U, 346U, 5361U, 7521U, 563U, 5606U, 8063U, 4971U, 
+    1974U, 4989U, 1996U, 6054U, 4857U, 10894U, 10558U, 10751U, 
+    10884U, 10548U, 10741U, 4870U, 5932U, 11745U, 11446U, 11591U, 
+    11841U, 6732U, 1166U, 2422U, 1192U, 2448U, 2495U, 1230U, 
+    2521U, 6757U, 1153U, 2409U, 1179U, 2435U, 2482U, 1217U, 
+    2508U, 5794U, 5954U, 6610U, 5859U, 5979U, 6647U, 6705U, 
+    278U, 5284U, 7346U, 495U, 5529U, 7907U, 166U, 5158U, 
+    7100U, 383U, 5403U, 7678U, 222U, 5221U, 7226U, 439U, 
+    5466U, 7794U, 332U, 5345U, 7500U, 549U, 5590U, 8036U, 
+    310U, 5320U, 7386U, 527U, 5565U, 7954U, 198U, 5194U, 
+    7140U, 415U, 5439U, 7725U, 254U, 5257U, 7258U, 471U, 
+    5502U, 7826U, 360U, 5377U, 7535U, 577U, 5622U, 8077U, 
+    7190U, 7758U, 7266U, 7842U, 5889U, 5054U, 4844U, 286U, 
+    5293U, 7362U, 503U, 5538U, 7930U, 174U, 5167U, 7116U, 
+    391U, 5412U, 7701U, 230U, 5230U, 7234U, 447U, 5475U, 
+    7802U, 339U, 5353U, 7514U, 556U, 5598U, 8056U, 9401U, 
+    12502U, 9994U, 13094U, 3153U, 7275U, 3818U, 11607U, 7851U, 
+    4178U, 10022U, 13122U, 6421U, 1263U, 7018U, 3556U, 11317U, 
+    7611U, 3982U, 8809U, 11923U, 6229U, 1336U, 1427U, 3687U, 
+    11462U, 1564U, 4080U, 9429U, 12530U, 6325U, 3485U, 7436U, 
+    11761U, 7987U, 10386U, 13482U, 6517U, 2933U, 994U, 2280U, 
+    3427U, 1139U, 2395U, 8601U, 11102U, 8580U, 11090U, 8608U, 
+    11109U, 10874U, 10538U, 10731U, 11055U, 8586U, 11096U, 8636U, 
+    11137U, 8615U, 11116U, 8642U, 11143U, 8622U, 11123U, 8648U, 
+    11149U, 8629U, 11130U, 8654U, 11155U, 8676U, 11177U, 8714U, 
+    11201U, 8661U, 11162U, 8683U, 11184U, 8721U, 11208U, 8441U, 
+    8205U, 8326U, 270U, 5275U, 7338U, 487U, 5520U, 7899U, 
+    158U, 5149U, 7092U, 375U, 5394U, 7670U, 214U, 5212U, 
+    7218U, 431U, 5457U, 7786U, 325U, 5337U, 7493U, 542U, 
+    5582U, 8029U, 5674U, 4320U, 5740U, 4408U, 5630U, 4276U, 
+    5696U, 4342U, 5652U, 4298U, 5718U, 4375U, 9374U, 12475U, 
+    9967U, 13067U, 302U, 5311U, 7378U, 519U, 5556U, 7946U, 
+    190U, 5185U, 7132U, 407U, 5430U, 7717U, 246U, 5248U, 
+    7250U, 463U, 5493U, 7818U, 353U, 5369U, 7528U, 570U, 
+    5614U, 8070U, 5685U, 4331U, 5751U, 4419U, 5641U, 4287U, 
+    5707U, 4353U, 5663U, 4309U, 5729U, 4386U, 9410U, 12511U, 
+    10003U, 13103U, 8457U, 8221U, 8342U, 6161U, 8473U, 10964U, 
+    10629U, 8350U, 10822U, 8504U, 10995U, 10652U, 10845U, 6818U, 
+    4822U, 4876U, 4897U, 5123U, 5136U, 4799U, 5840U, 5966U, 
+    6628U, 10949U, 10622U, 10815U, 8709U, 3162U, 7288U, 3832U, 
+    11620U, 7859U, 4187U, 10030U, 13130U, 6433U, 1272U, 7031U, 
+    3570U, 11330U, 7619U, 3991U, 8817U, 11931U, 6241U, 1345U, 
+    1442U, 3701U, 11475U, 1574U, 4089U, 9437U, 12538U, 6337U, 
+    3492U, 7448U, 11773U, 7994U, 10393U, 13489U, 6528U, 6106U, 
+    5815U, 6038U, 6168U, 2344U, 6140U, 2335U, 8863U, 11977U, 
+    9483U, 12584U, 6927U, 2554U, 8667U, 2614U, 11168U, 2670U, 
+    7007U, 2565U, 7580U, 2578U, 8106U, 2601U, 3216U, 7419U, 
+    7970U, 10361U, 13457U, 1326U, 7173U, 7741U, 9331U, 12432U, 
+    1409U, 1531U, 1634U, 9924U, 13032U, 3548U, 7565U, 8091U, 
+    6652U, 10447U, 13549U, 1252U, 2543U, 1760U, 2692U, 1771U, 
+    2703U, 5927U, 10351U, 13447U, 9321U, 12422U, 9914U, 13022U, 
+    9058U, 12180U, 9678U, 12787U, 4631U, 2461U, 6084U, 8698U, 
+    11190U, 8736U, 11214U, 5808U, 8689U, 4863U, 5109U, 744U, 
+    1908U, 5800U, 8592U, 8727U, 8874U, 11996U, 9494U, 12603U, 
+    4937U, 900U, 2178U, 810U, 2026U, 8957U, 12079U, 9577U, 
+    12686U, 5042U, 5893U, 4610U, 4901U, 4620U, 1205U, 2470U, 
+    4980U, 1985U, 4998U, 2007U, 6060U, 10056U, 13164U, 8885U, 
+    12007U, 9505U, 12614U, 10407U, 13503U, 11238U, 10149U, 13257U, 
+    11220U, 2681U, 8990U, 12112U, 11229U, 9610U, 12719U, 10425U, 
+    13521U, 4827U, 4773U, 6066U, 4659U, 4783U, 6215U, 6135U, 
+    3207U, 7399U, 3901U, 11702U, 7962U, 4241U, 10253U, 13377U, 
+    6493U, 1317U, 7153U, 3639U, 11403U, 7733U, 4045U, 9195U, 
+    12324U, 6301U, 1400U, 1507U, 3770U, 11548U, 1624U, 4143U, 
+    9815U, 12924U, 6397U, 3541U, 7547U, 11823U, 8084U, 10440U, 
+    13542U, 6583U, 6047U, 2261U, 5023U, 2035U, 6191U, 2363U, 
+    6222U, 45U, 3338U, 4964U, 
+};
+
+#endif // GET_INSTRINFO_MC_DESC
+
diff --git a/arch/X86/X86IntelInstPrinter.c b/arch/X86/X86IntelInstPrinter.c
index b4bf964..2e13857 100644
--- a/arch/X86/X86IntelInstPrinter.c
+++ b/arch/X86/X86IntelInstPrinter.c
@@ -67,6 +67,7 @@
 	printMemReference(MI, OpNo, O);
 }
 
+#ifndef CAPSTONE_X86_REDUCE
 static void printi256mem(MCInst *MI, unsigned OpNo, SStream *O)
 {
 	SStream_concat(O, "ymmword ptr ");
@@ -115,6 +116,84 @@
 	printMemReference(MI, OpNo, O);
 }
 
+static void printSSECC(MCInst *MI, unsigned Op, SStream *OS)
+{
+	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0xf;
+	switch (Imm) {
+		default: break;	// never reach
+		case    0: SStream_concat(OS, "eq"); break;
+		case    1: SStream_concat(OS, "lt"); break;
+		case    2: SStream_concat(OS, "le"); break;
+		case    3: SStream_concat(OS, "unord"); break;
+		case    4: SStream_concat(OS, "neq"); break;
+		case    5: SStream_concat(OS, "nlt"); break;
+		case    6: SStream_concat(OS, "nle"); break;
+		case    7: SStream_concat(OS, "ord"); break;
+		case    8: SStream_concat(OS, "eq_uq"); break;
+		case    9: SStream_concat(OS, "nge"); break;
+		case  0xa: SStream_concat(OS, "ngt"); break;
+		case  0xb: SStream_concat(OS, "false"); break;
+		case  0xc: SStream_concat(OS, "neq_oq"); break;
+		case  0xd: SStream_concat(OS, "ge"); break;
+		case  0xe: SStream_concat(OS, "gt"); break;
+		case  0xf: SStream_concat(OS, "true"); break;
+	}
+}
+
+static void printAVXCC(MCInst *MI, unsigned Op, SStream *O)
+{
+	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x1f;
+	switch (Imm) {
+		default: break;//printf("Invalid avxcc argument!\n"); break;
+		case    0: SStream_concat(O, "eq"); break;
+		case    1: SStream_concat(O, "lt"); break;
+		case    2: SStream_concat(O, "le"); break;
+		case    3: SStream_concat(O, "unord"); break;
+		case    4: SStream_concat(O, "neq"); break;
+		case    5: SStream_concat(O, "nlt"); break;
+		case    6: SStream_concat(O, "nle"); break;
+		case    7: SStream_concat(O, "ord"); break;
+		case    8: SStream_concat(O, "eq_uq"); break;
+		case    9: SStream_concat(O, "nge"); break;
+		case  0xa: SStream_concat(O, "ngt"); break;
+		case  0xb: SStream_concat(O, "false"); break;
+		case  0xc: SStream_concat(O, "neq_oq"); break;
+		case  0xd: SStream_concat(O, "ge"); break;
+		case  0xe: SStream_concat(O, "gt"); break;
+		case  0xf: SStream_concat(O, "true"); break;
+		case 0x10: SStream_concat(O, "eq_os"); break;
+		case 0x11: SStream_concat(O, "lt_oq"); break;
+		case 0x12: SStream_concat(O, "le_oq"); break;
+		case 0x13: SStream_concat(O, "unord_s"); break;
+		case 0x14: SStream_concat(O, "neq_us"); break;
+		case 0x15: SStream_concat(O, "nlt_uq"); break;
+		case 0x16: SStream_concat(O, "nle_uq"); break;
+		case 0x17: SStream_concat(O, "ord_s"); break;
+		case 0x18: SStream_concat(O, "eq_us"); break;
+		case 0x19: SStream_concat(O, "nge_uq"); break;
+		case 0x1a: SStream_concat(O, "ngt_uq"); break;
+		case 0x1b: SStream_concat(O, "false_os"); break;
+		case 0x1c: SStream_concat(O, "neq_os"); break;
+		case 0x1d: SStream_concat(O, "ge_oq"); break;
+		case 0x1e: SStream_concat(O, "gt_oq"); break;
+		case 0x1f: SStream_concat(O, "true_us"); break;
+	}
+}
+
+static void printRoundingControl(MCInst *MI, unsigned Op, SStream *O)
+{
+	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x3;
+	switch (Imm) {
+		case 0: SStream_concat(O, "{rn-sae}"); break;
+		case 1: SStream_concat(O, "{rd-sae}"); break;
+		case 2: SStream_concat(O, "{ru-sae}"); break;
+		case 3: SStream_concat(O, "{rz-sae}"); break;
+		default: break;	// never reach
+	}
+}
+
+#endif
+
 static void printSrcIdx(MCInst *MI, unsigned Op, SStream *O)
 {
 	MCOperand *SegReg;
@@ -287,82 +366,6 @@
 	}
 }
 
-static void printSSECC(MCInst *MI, unsigned Op, SStream *OS)
-{
-	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0xf;
-	switch (Imm) {
-		default: break;	// never reach
-		case    0: SStream_concat(OS, "eq"); break;
-		case    1: SStream_concat(OS, "lt"); break;
-		case    2: SStream_concat(OS, "le"); break;
-		case    3: SStream_concat(OS, "unord"); break;
-		case    4: SStream_concat(OS, "neq"); break;
-		case    5: SStream_concat(OS, "nlt"); break;
-		case    6: SStream_concat(OS, "nle"); break;
-		case    7: SStream_concat(OS, "ord"); break;
-		case    8: SStream_concat(OS, "eq_uq"); break;
-		case    9: SStream_concat(OS, "nge"); break;
-		case  0xa: SStream_concat(OS, "ngt"); break;
-		case  0xb: SStream_concat(OS, "false"); break;
-		case  0xc: SStream_concat(OS, "neq_oq"); break;
-		case  0xd: SStream_concat(OS, "ge"); break;
-		case  0xe: SStream_concat(OS, "gt"); break;
-		case  0xf: SStream_concat(OS, "true"); break;
-	}
-}
-
-static void printAVXCC(MCInst *MI, unsigned Op, SStream *O)
-{
-	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x1f;
-	switch (Imm) {
-		default: break;//printf("Invalid avxcc argument!\n"); break;
-		case    0: SStream_concat(O, "eq"); break;
-		case    1: SStream_concat(O, "lt"); break;
-		case    2: SStream_concat(O, "le"); break;
-		case    3: SStream_concat(O, "unord"); break;
-		case    4: SStream_concat(O, "neq"); break;
-		case    5: SStream_concat(O, "nlt"); break;
-		case    6: SStream_concat(O, "nle"); break;
-		case    7: SStream_concat(O, "ord"); break;
-		case    8: SStream_concat(O, "eq_uq"); break;
-		case    9: SStream_concat(O, "nge"); break;
-		case  0xa: SStream_concat(O, "ngt"); break;
-		case  0xb: SStream_concat(O, "false"); break;
-		case  0xc: SStream_concat(O, "neq_oq"); break;
-		case  0xd: SStream_concat(O, "ge"); break;
-		case  0xe: SStream_concat(O, "gt"); break;
-		case  0xf: SStream_concat(O, "true"); break;
-		case 0x10: SStream_concat(O, "eq_os"); break;
-		case 0x11: SStream_concat(O, "lt_oq"); break;
-		case 0x12: SStream_concat(O, "le_oq"); break;
-		case 0x13: SStream_concat(O, "unord_s"); break;
-		case 0x14: SStream_concat(O, "neq_us"); break;
-		case 0x15: SStream_concat(O, "nlt_uq"); break;
-		case 0x16: SStream_concat(O, "nle_uq"); break;
-		case 0x17: SStream_concat(O, "ord_s"); break;
-		case 0x18: SStream_concat(O, "eq_us"); break;
-		case 0x19: SStream_concat(O, "nge_uq"); break;
-		case 0x1a: SStream_concat(O, "ngt_uq"); break;
-		case 0x1b: SStream_concat(O, "false_os"); break;
-		case 0x1c: SStream_concat(O, "neq_os"); break;
-		case 0x1d: SStream_concat(O, "ge_oq"); break;
-		case 0x1e: SStream_concat(O, "gt_oq"); break;
-		case 0x1f: SStream_concat(O, "true_us"); break;
-	}
-}
-
-static void printRoundingControl(MCInst *MI, unsigned Op, SStream *O)
-{
-	int64_t Imm = MCOperand_getImm(MCInst_getOperand(MI, Op)) & 0x3;
-	switch (Imm) {
-		case 0: SStream_concat(O, "{rn-sae}"); break;
-		case 1: SStream_concat(O, "{rd-sae}"); break;
-		case 2: SStream_concat(O, "{ru-sae}"); break;
-		case 3: SStream_concat(O, "{rz-sae}"); break;
-		default: break;	// never reach
-	}
-}
-
 /// printPCRelImm - This is used to print an immediate value that ends up
 /// being encoded as a pc-relative value.
 static void printPCRelImm(MCInst *MI, unsigned OpNo, SStream *O)
@@ -518,8 +521,16 @@
 }
 
 #define GET_INSTRINFO_ENUM
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenInstrInfo_reduce.inc"
+#else
 #include "X86GenInstrInfo.inc"
+#endif
 
 #define PRINT_ALIAS_INSTR
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenAsmWriter1_reduce.inc"
+#else
 #include "X86GenAsmWriter1.inc"
+#endif
 
diff --git a/arch/X86/X86Mapping.c b/arch/X86/X86Mapping.c
index 470a738..84beb9a 100644
--- a/arch/X86/X86Mapping.c
+++ b/arch/X86/X86Mapping.c
@@ -1626,8 +1626,13 @@
 }
 
 #define GET_INSTRINFO_ENUM
+#ifdef CAPSTONE_X86_REDUCE
+#include "X86GenInstrInfo_reduce.inc"
+#else
 #include "X86GenInstrInfo.inc"
+#endif
 
+#ifndef CAPSTONE_X86_REDUCE
 static insn_map insns[] = {
 	// dummy item
 	{
@@ -31770,6 +31775,9006 @@
 #endif
 	},
 };
+#else	// X86 reduce
+static insn_map insns[] = {
+	// dummy item
+	{
+		0, 0,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+
+	{
+		X86_AAA, X86_INS_AAA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AAD8i8, X86_INS_AAD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AAM8i8, X86_INS_AAM,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AAS, X86_INS_AAS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16i16, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16mi, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16mi8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16mr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16ri, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16ri8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16rm, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16rr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC16rr_REV, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32i32, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32mi, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32mi8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32mr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32ri, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32ri8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32rm, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32rr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC32rr_REV, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64i32, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64mi32, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64mi8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64mr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64ri32, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64ri8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64rm, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64rr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC64rr_REV, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8i8, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8mi, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8mr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8ri, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8rm, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8rr, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADC8rr_REV, X86_INS_ADC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADCX32rm, X86_INS_ADCX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADCX32rr, X86_INS_ADCX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADCX64rm, X86_INS_ADCX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADCX64rr, X86_INS_ADCX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16i16, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16mi, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16mi8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16ri, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16ri8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16rm, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16rr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD16rr_REV, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32i32, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32mi, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32mi8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32ri, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32ri8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32rm, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32rr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD32rr_REV, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64i32, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64mi32, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64mi8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64ri32, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64ri8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64rm, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64rr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD64rr_REV, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8i8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8mi, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8ri, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8rm, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8rr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADD8rr_REV, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADOX32rm, X86_INS_ADOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADOX32rr, X86_INS_ADOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADOX64rm, X86_INS_ADOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ADOX64rr, X86_INS_ADOX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_ADX, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16i16, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16mi, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16mi8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16ri, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16ri8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16rm, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16rr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND16rr_REV, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32i32, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32mi, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32mi8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32ri, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32ri8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32rm, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32rr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND32rr_REV, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64i32, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64mi32, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64mi8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64ri32, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64ri8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64rm, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64rr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND64rr_REV, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8i8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8mi, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8ri, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8rm, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8rr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_AND8rr_REV, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ANDN32rm, X86_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ANDN32rr, X86_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ANDN64rm, X86_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ANDN64rr, X86_INS_ANDN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ARPL16mr, X86_INS_ARPL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ARPL16rr, X86_INS_ARPL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTR32rm, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTR32rr, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTR64rm, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTR64rr, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTRI32mi, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTRI32ri, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTRI64mi, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BEXTRI64ri, X86_INS_BEXTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCFILL32rm, X86_INS_BLCFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCFILL32rr, X86_INS_BLCFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCFILL64rm, X86_INS_BLCFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCFILL64rr, X86_INS_BLCFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCI32rm, X86_INS_BLCI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCI32rr, X86_INS_BLCI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCI64rm, X86_INS_BLCI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCI64rr, X86_INS_BLCI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCIC32rm, X86_INS_BLCIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCIC32rr, X86_INS_BLCIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCIC64rm, X86_INS_BLCIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCIC64rr, X86_INS_BLCIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCMSK32rm, X86_INS_BLCMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCMSK32rr, X86_INS_BLCMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCMSK64rm, X86_INS_BLCMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCMSK64rr, X86_INS_BLCMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCS32rm, X86_INS_BLCS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCS32rr, X86_INS_BLCS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCS64rm, X86_INS_BLCS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLCS64rr, X86_INS_BLCS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSFILL32rm, X86_INS_BLSFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSFILL32rr, X86_INS_BLSFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSFILL64rm, X86_INS_BLSFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSFILL64rr, X86_INS_BLSFILL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSI32rm, X86_INS_BLSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSI32rr, X86_INS_BLSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSI64rm, X86_INS_BLSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSI64rr, X86_INS_BLSI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSIC32rm, X86_INS_BLSIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSIC32rr, X86_INS_BLSIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSIC64rm, X86_INS_BLSIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSIC64rr, X86_INS_BLSIC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSMSK32rm, X86_INS_BLSMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSMSK32rr, X86_INS_BLSMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSMSK64rm, X86_INS_BLSMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSMSK64rr, X86_INS_BLSMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSR32rm, X86_INS_BLSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSR32rr, X86_INS_BLSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSR64rm, X86_INS_BLSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BLSR64rr, X86_INS_BLSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BOUNDS16rm, X86_INS_BOUND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BOUNDS32rm, X86_INS_BOUND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSF16rm, X86_INS_BSF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSF16rr, X86_INS_BSF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSF32rm, X86_INS_BSF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSF32rr, X86_INS_BSF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSF64rm, X86_INS_BSF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSF64rr, X86_INS_BSF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSR16rm, X86_INS_BSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSR16rr, X86_INS_BSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSR32rm, X86_INS_BSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSR32rr, X86_INS_BSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSR64rm, X86_INS_BSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSR64rr, X86_INS_BSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSWAP32r, X86_INS_BSWAP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BSWAP64r, X86_INS_BSWAP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT16mi8, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT16mr, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT16ri8, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT16rr, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT32mi8, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT32mr, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT32ri8, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT32rr, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT64mi8, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT64mr, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT64ri8, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BT64rr, X86_INS_BT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC16mi8, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC16mr, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC16ri8, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC16rr, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC32mi8, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC32mr, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC32ri8, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC32rr, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC64mi8, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC64mr, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC64ri8, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTC64rr, X86_INS_BTC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR16mi8, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR16mr, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR16ri8, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR16rr, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR32mi8, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR32mr, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR32ri8, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR32rr, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR64mi8, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR64mr, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR64ri8, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTR64rr, X86_INS_BTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS16mi8, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS16mr, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS16ri8, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS16rr, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS32mi8, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS32mr, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS32ri8, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS32rr, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS64mi8, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS64mr, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS64ri8, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BTS64rr, X86_INS_BTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BZHI32rm, X86_INS_BZHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BZHI32rr, X86_INS_BZHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BZHI64rm, X86_INS_BZHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_BZHI64rr, X86_INS_BZHI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL16m, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL16r, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL32m, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL32r, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL64m, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL64pcrel32, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALL64r, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALLpcrel16, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CALLpcrel32, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CBW, X86_INS_CBW,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CDQ, X86_INS_CDQ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_EAX, X86_REG_EDX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CDQE, X86_INS_CDQE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_RAX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CLAC, X86_INS_CLAC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CLC, X86_INS_CLC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CLD, X86_INS_CLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CLGI, X86_INS_CLGI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CLI, X86_INS_CLI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CLTS, X86_INS_CLTS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMC, X86_INS_CMC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVA16rm, X86_INS_CMOVA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVA16rr, X86_INS_CMOVA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVA32rm, X86_INS_CMOVA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVA32rr, X86_INS_CMOVA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVA64rm, X86_INS_CMOVA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVA64rr, X86_INS_CMOVA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVAE16rm, X86_INS_CMOVAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVAE16rr, X86_INS_CMOVAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVAE32rm, X86_INS_CMOVAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVAE32rr, X86_INS_CMOVAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVAE64rm, X86_INS_CMOVAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVAE64rr, X86_INS_CMOVAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVB16rm, X86_INS_CMOVB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVB16rr, X86_INS_CMOVB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVB32rm, X86_INS_CMOVB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVB32rr, X86_INS_CMOVB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVB64rm, X86_INS_CMOVB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVB64rr, X86_INS_CMOVB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVBE16rm, X86_INS_CMOVBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVBE16rr, X86_INS_CMOVBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVBE32rm, X86_INS_CMOVBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVBE32rr, X86_INS_CMOVBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVBE64rm, X86_INS_CMOVBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVBE64rr, X86_INS_CMOVBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVE16rm, X86_INS_CMOVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVE16rr, X86_INS_CMOVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVE32rm, X86_INS_CMOVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVE32rr, X86_INS_CMOVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVE64rm, X86_INS_CMOVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVE64rr, X86_INS_CMOVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVG16rm, X86_INS_CMOVG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVG16rr, X86_INS_CMOVG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVG32rm, X86_INS_CMOVG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVG32rr, X86_INS_CMOVG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVG64rm, X86_INS_CMOVG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVG64rr, X86_INS_CMOVG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVGE16rm, X86_INS_CMOVGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVGE16rr, X86_INS_CMOVGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVGE32rm, X86_INS_CMOVGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVGE32rr, X86_INS_CMOVGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVGE64rm, X86_INS_CMOVGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVGE64rr, X86_INS_CMOVGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVL16rm, X86_INS_CMOVL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVL16rr, X86_INS_CMOVL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVL32rm, X86_INS_CMOVL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVL32rr, X86_INS_CMOVL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVL64rm, X86_INS_CMOVL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVL64rr, X86_INS_CMOVL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVLE16rm, X86_INS_CMOVLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVLE16rr, X86_INS_CMOVLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVLE32rm, X86_INS_CMOVLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVLE32rr, X86_INS_CMOVLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVLE64rm, X86_INS_CMOVLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVLE64rr, X86_INS_CMOVLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNE16rm, X86_INS_CMOVNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNE16rr, X86_INS_CMOVNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNE32rm, X86_INS_CMOVNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNE32rr, X86_INS_CMOVNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNE64rm, X86_INS_CMOVNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNE64rr, X86_INS_CMOVNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNO16rm, X86_INS_CMOVNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNO16rr, X86_INS_CMOVNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNO32rm, X86_INS_CMOVNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNO32rr, X86_INS_CMOVNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNO64rm, X86_INS_CMOVNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNO64rr, X86_INS_CMOVNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNP16rm, X86_INS_CMOVNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNP16rr, X86_INS_CMOVNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNP32rm, X86_INS_CMOVNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNP32rr, X86_INS_CMOVNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNP64rm, X86_INS_CMOVNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNP64rr, X86_INS_CMOVNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNS16rm, X86_INS_CMOVNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNS16rr, X86_INS_CMOVNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNS32rm, X86_INS_CMOVNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNS32rr, X86_INS_CMOVNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNS64rm, X86_INS_CMOVNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVNS64rr, X86_INS_CMOVNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVO16rm, X86_INS_CMOVO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVO16rr, X86_INS_CMOVO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVO32rm, X86_INS_CMOVO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVO32rr, X86_INS_CMOVO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVO64rm, X86_INS_CMOVO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVO64rr, X86_INS_CMOVO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVP16rm, X86_INS_CMOVP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVP16rr, X86_INS_CMOVP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVP32rm, X86_INS_CMOVP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVP32rr, X86_INS_CMOVP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVP64rm, X86_INS_CMOVP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVP64rr, X86_INS_CMOVP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVS16rm, X86_INS_CMOVS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVS16rr, X86_INS_CMOVS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVS32rm, X86_INS_CMOVS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVS32rr, X86_INS_CMOVS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVS64rm, X86_INS_CMOVS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMOVS64rr, X86_INS_CMOVS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_CMOV, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16i16, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16mi, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16mi8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16mr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16ri, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16ri8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16rm, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16rr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP16rr_REV, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32i32, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32mi, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32mi8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32mr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32ri, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32ri8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32rm, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32rr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP32rr_REV, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64i32, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64mi32, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64mi8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64mr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64ri32, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64ri8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64rm, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64rr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP64rr_REV, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8i8, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8mi, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8mr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8ri, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8rm, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8rr, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMP8rr_REV, X86_INS_CMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPS16, X86_INS_CMPSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPS32, X86_INS_CMPSD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPS64, X86_INS_CMPSQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPS8, X86_INS_CMPSB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG16B, X86_INS_CMPXCHG16B,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RBX, X86_REG_RCX, X86_REG_RDX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG16rm, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG16rr, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG32rm, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG32rr, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG64rm, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG64rr, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG8B, X86_INS_CMPXCHG8B,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EBX, X86_REG_ECX, X86_REG_EDX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG8rm, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CMPXCHG8rr, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CPUID32, X86_INS_CPUID,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_ECX, 0 }, { X86_REG_EAX, X86_REG_EBX, X86_REG_ECX, X86_REG_EDX, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CPUID64, X86_INS_CPUID,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RCX, 0 }, { X86_REG_RAX, X86_REG_RBX, X86_REG_RCX, X86_REG_RDX, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CQO, X86_INS_CQO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { X86_REG_RAX, X86_REG_RDX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CS_PREFIX, X86_INS_CS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CWD, X86_INS_CWD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AX, X86_REG_DX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_CWDE, X86_INS_CWDE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_EAX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DAA, X86_INS_DAA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DAS, X86_INS_DAS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DATA16_PREFIX, X86_INS_DATA16,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC16m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC16r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC32_16r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC32_32r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC32m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC32r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC64_16m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC64_16r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC64_32m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC64_32r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC64m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC64r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC8m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DEC8r, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV16m, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_DX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV16r, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_DX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV32m, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EDX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV32r, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EDX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV64m, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RDX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV64r, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RDX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV8m, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AL, X86_REG_AH, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DIV8r, X86_INS_DIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AL, X86_REG_AH, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_DS_PREFIX, X86_INS_DS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ENTER, X86_INS_ENTER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ES_PREFIX, X86_INS_ES,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FARCALL16i, X86_INS_LCALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FARCALL16m, X86_INS_LCALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FARCALL32i, X86_INS_LCALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FARCALL32m, X86_INS_LCALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FARCALL64, X86_INS_LCALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FARJMP16i, X86_INS_LJMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		X86_FARJMP16m, X86_INS_LJMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		X86_FARJMP32i, X86_INS_LJMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		X86_FARJMP32m, X86_INS_LJMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		X86_FARJMP64, X86_INS_LJMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 1
+#endif
+	},
+	{
+		X86_FSETPM, X86_INS_FSETPM,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_FS_PREFIX, X86_INS_FS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_GETSEC, X86_INS_GETSEC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_GS_PREFIX, X86_INS_GS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_HLT, X86_INS_HLT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV16m, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_DX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV16r, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_DX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV32m, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EDX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV32r, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EDX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV64m, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RDX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV64r, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RDX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV8m, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AL, X86_REG_AH, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IDIV8r, X86_INS_IDIV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AL, X86_REG_AH, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16m, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16r, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16rm, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16rmi, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16rmi8, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16rr, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16rri, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL16rri8, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32m, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32r, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32rm, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32rmi, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32rmi8, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32rr, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32rri, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL32rri8, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64m, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64r, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64rm, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64rmi32, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64rmi8, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64rr, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64rri32, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL64rri8, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL8m, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { X86_REG_AL, X86_REG_EFLAGS, X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IMUL8r, X86_INS_IMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { X86_REG_AL, X86_REG_EFLAGS, X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN16, X86_INS_INSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN16ri, X86_INS_IN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN16rr, X86_INS_IN,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_DX, 0 }, { X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN32, X86_INS_INSD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN32ri, X86_INS_IN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EAX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN32rr, X86_INS_IN,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_DX, 0 }, { X86_REG_EAX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN8, X86_INS_INSB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN8ri, X86_INS_IN,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_AL, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IN8rr, X86_INS_IN,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_DX, 0 }, { X86_REG_AL, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC16m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC16r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC32_16r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC32_32r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC32m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC32r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC64_16m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC64_16r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC64_32m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC64_32r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC64m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC64r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC8m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INC8r, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INT, X86_INS_INT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INT1, X86_INS_INT1,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INT3, X86_INS_INT3,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INTO, X86_INS_INTO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVD, X86_INS_INVD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVEPT32, X86_INS_INVEPT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVEPT64, X86_INS_INVEPT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVLPG, X86_INS_INVLPG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVLPGA32, X86_INS_INVLPGA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_ECX, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVLPGA64, X86_INS_INVLPGA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_ECX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVPCID32, X86_INS_INVPCID,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVPCID64, X86_INS_INVPCID,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVVPID32, X86_INS_INVVPID,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_INVVPID64, X86_INS_INVVPID,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IRET16, X86_INS_IRET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IRET32, X86_INS_IRETD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_IRET64, X86_INS_IRETQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_JAE_1, X86_INS_JAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JAE_2, X86_INS_JAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JAE_4, X86_INS_JAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JA_1, X86_INS_JA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JA_2, X86_INS_JA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JA_4, X86_INS_JA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JBE_1, X86_INS_JBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JBE_2, X86_INS_JBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JBE_4, X86_INS_JBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JB_1, X86_INS_JB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JB_2, X86_INS_JB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JB_4, X86_INS_JB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JCXZ, X86_INS_JCXZ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CX, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JECXZ_32, X86_INS_JECXZ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JECXZ_64, X86_INS_JECXZ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JE_1, X86_INS_JE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JE_2, X86_INS_JE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JE_4, X86_INS_JE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JGE_1, X86_INS_JGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JGE_2, X86_INS_JGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JGE_4, X86_INS_JGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JG_1, X86_INS_JG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JG_2, X86_INS_JG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JG_4, X86_INS_JG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JLE_1, X86_INS_JLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JLE_2, X86_INS_JLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JLE_4, X86_INS_JLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JL_1, X86_INS_JL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JL_2, X86_INS_JL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JL_4, X86_INS_JL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JMP16m, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 1, 1
+#endif
+	},
+	{
+		X86_JMP16r, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 1, 1
+#endif
+	},
+	{
+		X86_JMP32m, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 1, 1
+#endif
+	},
+	{
+		X86_JMP32r, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 1, 1
+#endif
+	},
+	{
+		X86_JMP64m, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 1, 1
+#endif
+	},
+	{
+		X86_JMP64r, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 1, 1
+#endif
+	},
+	{
+		X86_JMP_1, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JMP_2, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JMP_4, X86_INS_JMP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNE_1, X86_INS_JNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNE_2, X86_INS_JNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNE_4, X86_INS_JNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNO_1, X86_INS_JNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNO_2, X86_INS_JNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNO_4, X86_INS_JNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNP_1, X86_INS_JNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNP_2, X86_INS_JNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNP_4, X86_INS_JNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNS_1, X86_INS_JNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNS_2, X86_INS_JNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JNS_4, X86_INS_JNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JO_1, X86_INS_JO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JO_2, X86_INS_JO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JO_4, X86_INS_JO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JP_1, X86_INS_JP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JP_2, X86_INS_JP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JP_4, X86_INS_JP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JRCXZ, X86_INS_JRCXZ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RCX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JS_1, X86_INS_JS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JS_2, X86_INS_JS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 1, 0
+#endif
+	},
+	{
+		X86_JS_4, X86_INS_JS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 1, 0
+#endif
+	},
+	{
+		X86_LAHF, X86_INS_LAHF,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_AH, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LAR16rm, X86_INS_LAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LAR16rr, X86_INS_LAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LAR32rm, X86_INS_LAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LAR32rr, X86_INS_LAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LAR64rm, X86_INS_LAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LAR64rr, X86_INS_LAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LCMPXCHG16, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LCMPXCHG16B, X86_INS_CMPXCHG16B,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RBX, X86_REG_RCX, X86_REG_RDX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LCMPXCHG32, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_EAX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LCMPXCHG64, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { X86_REG_RAX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LCMPXCHG8, X86_INS_CMPXCHG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { X86_REG_AL, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LCMPXCHG8B, X86_INS_CMPXCHG8B,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EBX, X86_REG_ECX, X86_REG_EDX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LDS16rm, X86_INS_LDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LDS32rm, X86_INS_LDS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LEA16r, X86_INS_LEA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LEA32r, X86_INS_LEA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LEA64_32r, X86_INS_LEA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LEA64r, X86_INS_LEA,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LEAVE, X86_INS_LEAVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EBP, X86_REG_ESP, 0 }, { X86_REG_EBP, X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LEAVE64, X86_INS_LEAVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RBP, X86_REG_RSP, 0 }, { X86_REG_RBP, X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LES16rm, X86_INS_LES,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LES32rm, X86_INS_LES,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LFS16rm, X86_INS_LFS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LFS32rm, X86_INS_LFS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LFS64rm, X86_INS_LFS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LGDT16m, X86_INS_LGDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LGDT32m, X86_INS_LGDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LGDT64m, X86_INS_LGDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LGS16rm, X86_INS_LGS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LGS32rm, X86_INS_LGS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LGS64rm, X86_INS_LGS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LIDT16m, X86_INS_LIDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LIDT32m, X86_INS_LIDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LIDT64m, X86_INS_LIDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LLDT16m, X86_INS_LLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LLDT16r, X86_INS_LLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LMSW16m, X86_INS_LMSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LMSW16r, X86_INS_LMSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD16mi, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD16mi8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD16mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD32mi, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD32mi8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD32mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD64mi32, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD64mi8, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD64mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD8mi, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_ADD8mr, X86_INS_ADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND16mi, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND16mi8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND16mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND32mi, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND32mi8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND32mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND64mi32, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND64mi8, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND64mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND8mi, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_AND8mr, X86_INS_AND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_DEC16m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_DEC32m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_DEC64m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_DEC8m, X86_INS_DEC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_INC16m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_INC32m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_INC64m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_INC8m, X86_INS_INC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR16mi, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR16mi8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR16mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR32mi, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR32mi8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR32mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR64mi32, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR64mi8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR64mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR8mi, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_OR8mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_PREFIX, X86_INS_LOCK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB16mi, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB16mi8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB16mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB32mi, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB32mi8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB32mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB64mi32, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB64mi8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB64mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB8mi, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_SUB8mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR16mi, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR16mi8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR16mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR32mi, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR32mi8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR32mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR64mi32, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR64mi8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR64mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR8mi, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOCK_XOR8mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LODSB, X86_INS_LODSB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LODSL, X86_INS_LODSD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LODSQ, X86_INS_LODSQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LODSW, X86_INS_LODSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOOP, X86_INS_LOOP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOOPE, X86_INS_LOOPE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LOOPNE, X86_INS_LOOPNE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LRETIL, X86_INS_RETF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LRETIQ, X86_INS_RETFQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LRETIW, X86_INS_RETF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LRETL, X86_INS_RETF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LRETQ, X86_INS_RETFQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LRETW, X86_INS_RETF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSL16rm, X86_INS_LSL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSL16rr, X86_INS_LSL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSL32rm, X86_INS_LSL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSL32rr, X86_INS_LSL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSL64rm, X86_INS_LSL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSL64rr, X86_INS_LSL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSS16rm, X86_INS_LSS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSS32rm, X86_INS_LSS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LSS64rm, X86_INS_LSS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LTRm, X86_INS_LTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LTRr, X86_INS_LTR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LXADD16, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LXADD32, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LXADD64, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LXADD8, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LZCNT16rm, X86_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LZCNT16rr, X86_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LZCNT32rm, X86_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LZCNT32rr, X86_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LZCNT64rm, X86_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_LZCNT64rr, X86_INS_LZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MONTMUL, X86_INS_MONTMUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RSI, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_RSI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16ao16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE32, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16ao16_16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16mi, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16mr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16ms, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16o16a, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE32, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16o16a_16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16ri, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16ri_alt, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16rm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16rr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16rr_REV, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16rs, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16sm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV16sr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32ao32, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE32, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32ao32_16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32cr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32dr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32mi, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32mr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32ms, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32o32a, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE32, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32o32a_16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32rc, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32rd, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32ri, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32ri_alt, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32rm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32rr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32rr_REV, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32rs, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32sm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV32sr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ao16, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ao32, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ao64, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ao8, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64cr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64dr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64mi32, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64mr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ms, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64o16a, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64o32a, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64o64a, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64o8a, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64rc, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64rd, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ri, X86_INS_MOVABS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64ri32, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64rm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64rr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64rr_REV, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64rs, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64sm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV64sr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8ao8, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE32, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8ao8_16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8mi, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8mr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8o8a, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE32, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8o8a_16, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_16BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8ri, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8ri_alt, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8rm, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8rr, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOV8rr_REV, X86_INS_MOV,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVBE16mr, X86_INS_MOVBE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVBE16rm, X86_INS_MOVBE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVBE32mr, X86_INS_MOVBE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVBE32rm, X86_INS_MOVBE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVBE64mr, X86_INS_MOVBE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVBE64rm, X86_INS_MOVBE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSB, X86_INS_MOVSB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDI, X86_REG_ESI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, X86_REG_ESI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSL, X86_INS_MOVSD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDI, X86_REG_ESI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, X86_REG_ESI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSQ, X86_INS_MOVSQ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDI, X86_REG_ESI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, X86_REG_ESI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSW, X86_INS_MOVSW,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDI, X86_REG_ESI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, X86_REG_ESI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX16rm8, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX16rr8, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX32rm16, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX32rm8, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX32rr16, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX32rr8, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX64rm16, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX64rm32, X86_INS_MOVSXD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX64rm8, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX64rr16, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX64rr32, X86_INS_MOVSXD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVSX64rr8, X86_INS_MOVSX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX16rm8, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX16rr8, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX32_NOREXrm8, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX32_NOREXrr8, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX32rm16, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX32rm8, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX32rr16, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX32rr8, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX64rm16_Q, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX64rm8_Q, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX64rr16_Q, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MOVZX64rr8_Q, X86_INS_MOVZX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL16m, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL16r, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { X86_REG_AX, X86_REG_DX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL32m, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL32r, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { X86_REG_EAX, X86_REG_EDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL64m, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL64r, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { X86_REG_RAX, X86_REG_RDX, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL8m, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { X86_REG_AL, X86_REG_EFLAGS, X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MUL8r, X86_INS_MUL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { X86_REG_AL, X86_REG_EFLAGS, X86_REG_AX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MULX32rm, X86_INS_MULX,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDX, 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MULX32rr, X86_INS_MULX,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDX, 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MULX64rm, X86_INS_MULX,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_MULX64rr, X86_INS_MULX,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG16m, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG16r, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG32m, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG32r, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG64m, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG64r, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG8m, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NEG8r, X86_INS_NEG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOOP, X86_INS_NOP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOOPL, X86_INS_NOP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOOPW, X86_INS_NOP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT16m, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT16r, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT32m, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT32r, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT64m, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT64r, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT8m, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_NOT8r, X86_INS_NOT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16i16, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16mi, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16mi8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16ri, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16ri8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16rm, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16rr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR16rr_REV, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32i32, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32mi, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32mi8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32mrLocked, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32ri, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32ri8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32rm, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32rr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR32rr_REV, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64i32, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64mi32, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64mi8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64ri32, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64ri8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64rm, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64rr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR64rr_REV, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8i8, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8mi, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8mr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8ri, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8rm, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8rr, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OR8rr_REV, X86_INS_OR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUT16ir, X86_INS_OUT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUT16rr, X86_INS_OUT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_DX, X86_REG_AX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUT32ir, X86_INS_OUT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUT32rr, X86_INS_OUT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_DX, X86_REG_EAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUT8ir, X86_INS_OUT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUT8rr, X86_INS_OUT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_DX, X86_REG_AL, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUTSB, X86_INS_OUTSB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUTSL, X86_INS_OUTSD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_OUTSW, X86_INS_OUTSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PDEP32rm, X86_INS_PDEP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PDEP32rr, X86_INS_PDEP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PDEP64rm, X86_INS_PDEP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PDEP64rr, X86_INS_PDEP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PEXT32rm, X86_INS_PEXT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PEXT32rr, X86_INS_PEXT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PEXT64rm, X86_INS_PEXT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PEXT64rr, X86_INS_PEXT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP16r, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP16rmm, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP16rmr, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP32r, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP32rmm, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP32rmr, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP64r, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP64rmm, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POP64rmr, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPA16, X86_INS_POPAW,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_EDI, X86_REG_ESI, X86_REG_EBP, X86_REG_EBX, X86_REG_EDX, X86_REG_ECX, X86_REG_EAX, X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPA32, X86_INS_POPAL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_EDI, X86_REG_ESI, X86_REG_EBP, X86_REG_EBX, X86_REG_EDX, X86_REG_ECX, X86_REG_EAX, X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPDS16, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPDS32, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPES16, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPES32, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPF16, X86_INS_POPF,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPF32, X86_INS_POPFD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPF64, X86_INS_POPFQ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, X86_REG_EFLAGS, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPFS16, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPFS32, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPFS64, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPGS16, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPGS32, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPGS64, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPSS16, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_POPSS32, X86_INS_POP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH16i8, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH16r, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH16rmm, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH16rmr, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH32i8, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH32r, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH32rmm, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH32rmr, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH64i16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH64i32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH64i8, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH64r, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH64rmm, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSH64rmr, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHA16, X86_INS_PUSHAW,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDI, X86_REG_ESI, X86_REG_EBP, X86_REG_EBX, X86_REG_EDX, X86_REG_ECX, X86_REG_EAX, X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHA32, X86_INS_PUSHAL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EDI, X86_REG_ESI, X86_REG_EBP, X86_REG_EBX, X86_REG_EDX, X86_REG_ECX, X86_REG_EAX, X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHCS16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHCS32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHDS16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHDS32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHES16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHES32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHF16, X86_INS_PUSHF,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHF32, X86_INS_PUSHFD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHF64, X86_INS_PUSHFQ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, X86_REG_EFLAGS, 0 }, { X86_REG_RSP, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHFS16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHFS32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHFS64, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHGS16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHGS32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHGS64, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHSS16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHSS32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHi16, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_PUSHi32, X86_INS_PUSH,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ESP, 0 }, { X86_REG_ESP, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL16m1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL16mCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL16mi, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL16r1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL16rCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL16ri, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL32m1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL32mCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL32mi, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL32r1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL32rCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL32ri, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL64m1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL64mCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL64mi, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL64r1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL64rCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL64ri, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL8m1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL8mCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL8mi, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL8r1, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL8rCL, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCL8ri, X86_INS_RCL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR16m1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR16mCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR16mi, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR16r1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR16rCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR16ri, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR32m1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR32mCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR32mi, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR32r1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR32rCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR32ri, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR64m1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR64mCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR64mi, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR64r1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR64rCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR64ri, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR8m1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR8mCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR8mi, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR8r1, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR8rCL, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RCR8ri, X86_INS_RCR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDFSBASE, X86_INS_RDFSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDFSBASE64, X86_INS_RDFSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDGSBASE, X86_INS_RDGSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDGSBASE64, X86_INS_RDGSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDMSR, X86_INS_RDMSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDPMC, X86_INS_RDPMC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDRAND16r, X86_INS_RDRAND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDRAND32r, X86_INS_RDRAND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDRAND64r, X86_INS_RDRAND,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDSEED16r, X86_INS_RDSEED,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDSEED32r, X86_INS_RDSEED,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDSEED64r, X86_INS_RDSEED,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDTSC, X86_INS_RDTSC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_RAX, X86_REG_RDX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RDTSCP, X86_INS_RDTSCP,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_RAX, X86_REG_RCX, X86_REG_RDX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REPNE_PREFIX, X86_INS_REPNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, X86_REG_EFLAGS, 0 }, { X86_REG_ECX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSB_32, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, X86_REG_EDI, X86_REG_ESI, 0 }, { X86_REG_ECX, X86_REG_EDI, X86_REG_ESI, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSB_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSD_32, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, X86_REG_EDI, X86_REG_ESI, 0 }, { X86_REG_ECX, X86_REG_EDI, X86_REG_ESI, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSD_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSQ_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSW_32, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, X86_REG_EDI, X86_REG_ESI, 0 }, { X86_REG_ECX, X86_REG_EDI, X86_REG_ESI, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_MOVSW_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_REG_RCX, X86_REG_RDI, X86_REG_RSI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_PREFIX, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_ECX, X86_REG_EFLAGS, 0 }, { X86_REG_ECX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSB_32, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, X86_REG_ECX, X86_REG_EDI, 0 }, { X86_REG_ECX, X86_REG_EDI, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSB_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, X86_REG_RCX, X86_REG_RDI, 0 }, { X86_REG_RCX, X86_REG_RDI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSD_32, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_ECX, X86_REG_EDI, 0 }, { X86_REG_ECX, X86_REG_EDI, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSD_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RCX, X86_REG_RDI, 0 }, { X86_REG_RCX, X86_REG_RDI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSQ_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RCX, X86_REG_RDI, 0 }, { X86_REG_RCX, X86_REG_RDI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSW_32, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_ECX, X86_REG_EDI, 0 }, { X86_REG_ECX, X86_REG_EDI, 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REP_STOSW_64, X86_INS_REP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_RCX, X86_REG_RDI, 0 }, { X86_REG_RCX, X86_REG_RDI, 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RETIL, X86_INS_RET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RETIQ, X86_INS_RET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RETIW, X86_INS_RET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RETL, X86_INS_RET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RETQ, X86_INS_RET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RETW, X86_INS_RET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_REX64_PREFIX, X86_INS_REX64,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL16m1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL16mCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL16mi, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL16r1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL16rCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL16ri, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL32m1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL32mCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL32mi, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL32r1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL32rCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL32ri, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL64m1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL64mCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL64mi, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL64r1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL64rCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL64ri, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL8m1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL8mCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL8mi, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL8r1, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL8rCL, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROL8ri, X86_INS_ROL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR16m1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR16mCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR16mi, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR16r1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR16rCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR16ri, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR32m1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR32mCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR32mi, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR32r1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR32rCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR32ri, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR64m1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR64mCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR64mi, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR64r1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR64rCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR64ri, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR8m1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR8mCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR8mi, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR8r1, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR8rCL, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_ROR8ri, X86_INS_ROR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RORX32mi, X86_INS_RORX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RORX32ri, X86_INS_RORX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RORX64mi, X86_INS_RORX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RORX64ri, X86_INS_RORX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_RSM, X86_INS_RSM,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAHF, X86_INS_SAHF,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AH, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SALC, X86_INS_SALC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_AL, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR16m1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR16mCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR16mi, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR16r1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR16rCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR16ri, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR32m1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR32mCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR32mi, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR32r1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR32rCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR32ri, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR64m1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR64mCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR64mi, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR64r1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR64rCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR64ri, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR8m1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR8mCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR8mi, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR8r1, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR8rCL, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SAR8ri, X86_INS_SAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SARX32rm, X86_INS_SARX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SARX32rr, X86_INS_SARX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SARX64rm, X86_INS_SARX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SARX64rr, X86_INS_SARX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16i16, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16mi, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16mi8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16mr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16ri, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16ri8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16rm, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16rr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB16rr_REV, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32i32, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32mi, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32mi8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32mr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32ri, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32ri8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32rm, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32rr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB32rr_REV, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64i32, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64mi32, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64mi8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64mr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64ri32, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64ri8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64rm, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64rr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB64rr_REV, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8i8, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8mi, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8mr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8ri, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8rm, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8rr, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SBB8rr_REV, X86_INS_SBB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SCAS16, X86_INS_SCASW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SCAS32, X86_INS_SCASD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SCAS64, X86_INS_SCASQ,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SCAS8, X86_INS_SCASB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETAEm, X86_INS_SETAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETAEr, X86_INS_SETAE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETAm, X86_INS_SETA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETAr, X86_INS_SETA,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETBEm, X86_INS_SETBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETBEr, X86_INS_SETBE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETBm, X86_INS_SETB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETBr, X86_INS_SETB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETEm, X86_INS_SETE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETEr, X86_INS_SETE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETGEm, X86_INS_SETGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETGEr, X86_INS_SETGE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETGm, X86_INS_SETG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETGr, X86_INS_SETG,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETLEm, X86_INS_SETLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETLEr, X86_INS_SETLE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETLm, X86_INS_SETL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETLr, X86_INS_SETL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNEm, X86_INS_SETNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNEr, X86_INS_SETNE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNOm, X86_INS_SETNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNOr, X86_INS_SETNO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNPm, X86_INS_SETNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNPr, X86_INS_SETNP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNSm, X86_INS_SETNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETNSr, X86_INS_SETNS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETOm, X86_INS_SETO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETOr, X86_INS_SETO,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETPm, X86_INS_SETP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETPr, X86_INS_SETP,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETSm, X86_INS_SETS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SETSr, X86_INS_SETS,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SGDT16m, X86_INS_SGDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SGDT32m, X86_INS_SGDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SGDT64m, X86_INS_SGDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL16m1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL16mCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL16mi, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL16r1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL16rCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL16ri, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL32m1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL32mCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL32mi, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL32r1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL32rCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL32ri, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL64m1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL64mCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL64mi, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL64r1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL64rCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL64ri, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL8m1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL8mCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL8mi, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL8r1, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL8rCL, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHL8ri, X86_INS_SHL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD16mrCL, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD16mri8, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD16rrCL, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD16rri8, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD32mrCL, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD32mri8, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD32rrCL, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD32rri8, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD64mrCL, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD64mri8, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD64rrCL, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLD64rri8, X86_INS_SHLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLX32rm, X86_INS_SHLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLX32rr, X86_INS_SHLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLX64rm, X86_INS_SHLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHLX64rr, X86_INS_SHLX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR16m1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR16mCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR16mi, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR16r1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR16rCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR16ri, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR32m1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR32mCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR32mi, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR32r1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR32rCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR32ri, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR64m1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR64mCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR64mi, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR64r1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR64rCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR64ri, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR8m1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR8mCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR8mi, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR8r1, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR8rCL, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHR8ri, X86_INS_SHR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD16mrCL, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD16mri8, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD16rrCL, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD16rri8, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD32mrCL, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD32mri8, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD32rrCL, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD32rri8, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD64mrCL, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD64mri8, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD64rrCL, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_CL, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRD64rri8, X86_INS_SHRD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRX32rm, X86_INS_SHRX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRX32rr, X86_INS_SHRX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRX64rm, X86_INS_SHRX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SHRX64rr, X86_INS_SHRX,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_BMI2, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SIDT16m, X86_INS_SIDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SIDT32m, X86_INS_SIDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SIDT64m, X86_INS_SIDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SKINIT, X86_INS_SKINIT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SLDT16m, X86_INS_SLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SLDT16r, X86_INS_SLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SLDT32r, X86_INS_SLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SLDT64m, X86_INS_SLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SLDT64r, X86_INS_SLDT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SMSW16m, X86_INS_SMSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SMSW16r, X86_INS_SMSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SMSW32r, X86_INS_SMSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SMSW64r, X86_INS_SMSW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SS_PREFIX, X86_INS_SS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STAC, X86_INS_STAC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EFLAGS, 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STC, X86_INS_STC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STD, X86_INS_STD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STGI, X86_INS_STGI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STI, X86_INS_STI,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STOSB, X86_INS_STOSB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AL, X86_REG_EDI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STOSL, X86_INS_STOSD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, X86_REG_EDI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STOSQ, X86_INS_STOSQ,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RCX, X86_REG_RDI, X86_REG_EFLAGS, 0 }, { X86_REG_RCX, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STOSW, X86_INS_STOSW,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_AX, X86_REG_EDI, X86_REG_EFLAGS, 0 }, { X86_REG_EDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STR16r, X86_INS_STR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STR32r, X86_INS_STR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STR64r, X86_INS_STR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_STRm, X86_INS_STR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16i16, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16mi, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16mi8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16ri, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16ri8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16rm, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16rr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB16rr_REV, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32i32, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32mi, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32mi8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32ri, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32ri8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32rm, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32rr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB32rr_REV, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64i32, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64mi32, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64mi8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64ri32, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64ri8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64rm, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64rr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB64rr_REV, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8i8, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8mi, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8mr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8ri, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8rm, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8rr, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SUB8rr_REV, X86_INS_SUB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SWAPGS, X86_INS_SWAPGS,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SYSCALL, X86_INS_SYSCALL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SYSENTER, X86_INS_SYSENTER,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SYSEXIT, X86_INS_SYSEXIT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SYSEXIT64, X86_INS_SYSEXIT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SYSRET, X86_INS_SYSRET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_SYSRET64, X86_INS_SYSRET,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_T1MSKC32rm, X86_INS_T1MSKC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_T1MSKC32rr, X86_INS_T1MSKC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_T1MSKC64rm, X86_INS_T1MSKC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_T1MSKC64rr, X86_INS_T1MSKC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST16i16, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST16mi, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST16ri, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST16rm, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST16rr, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST32i32, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST32mi, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST32ri, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST32rm, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST32rr, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST64i32, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST64mi32, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST64ri32, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST64rm, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST64rr, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST8i8, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST8mi, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST8ri, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST8rm, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TEST8rr, X86_INS_TEST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TRAP, X86_INS_UD2,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZCNT16rm, X86_INS_TZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZCNT16rr, X86_INS_TZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZCNT32rm, X86_INS_TZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZCNT32rr, X86_INS_TZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZCNT64rm, X86_INS_TZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZCNT64rr, X86_INS_TZCNT,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_BMI, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZMSK32rm, X86_INS_TZMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZMSK32rr, X86_INS_TZMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZMSK64rm, X86_INS_TZMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_TZMSK64rr, X86_INS_TZMSK,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { X86_GRP_TBM, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_UD2B, X86_INS_UD2B,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VERRm, X86_INS_VERR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VERRr, X86_INS_VERR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VERWm, X86_INS_VERW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VERWr, X86_INS_VERW,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMCALL, X86_INS_VMCALL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMCLEARm, X86_INS_VMCLEAR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMFUNC, X86_INS_VMFUNC,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMLAUNCH, X86_INS_VMLAUNCH,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMLOAD32, X86_INS_VMLOAD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMLOAD64, X86_INS_VMLOAD,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMMCALL, X86_INS_VMMCALL,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMPTRLDm, X86_INS_VMPTRLD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMPTRSTm, X86_INS_VMPTRST,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMREAD32rm, X86_INS_VMREAD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMREAD32rr, X86_INS_VMREAD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMREAD64rm, X86_INS_VMREAD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMREAD64rr, X86_INS_VMREAD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMRESUME, X86_INS_VMRESUME,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMRUN32, X86_INS_VMRUN,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMRUN64, X86_INS_VMRUN,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMSAVE32, X86_INS_VMSAVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_EAX, 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMSAVE64, X86_INS_VMSAVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMWRITE32rm, X86_INS_VMWRITE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMWRITE32rr, X86_INS_VMWRITE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMWRITE64rm, X86_INS_VMWRITE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMWRITE64rr, X86_INS_VMWRITE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMXOFF, X86_INS_VMXOFF,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_VMXON, X86_INS_VMXON,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_W64ALLOCA, X86_INS_CALL,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RSP, 0 }, { X86_REG_RAX, X86_REG_R10, X86_REG_R11, X86_REG_RSP, X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_WBINVD, X86_INS_WBINVD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_WRFSBASE, X86_INS_WRFSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_WRFSBASE64, X86_INS_WRFSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_WRGSBASE, X86_INS_WRGSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_WRGSBASE64, X86_INS_WRGSBASE,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_FSGSBASE, X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_WRMSR, X86_INS_WRMSR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD16rm, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD16rr, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD32rm, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD32rr, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD64rm, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD64rr, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD8rm, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XADD8rr, X86_INS_XADD,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG16ar, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG16rm, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG16rr, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG32ar, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_NOT64BITMODE, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG32ar64, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG32rm, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG32rr, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG64ar, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG64rm, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG64rr, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG8rm, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCHG8rr, X86_INS_XCHG,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCRYPTCBC, X86_INS_XCRYPTCBC,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RBX, X86_REG_RDX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCRYPTCFB, X86_INS_XCRYPTCFB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RBX, X86_REG_RDX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCRYPTCTR, X86_INS_XCRYPTCTR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RBX, X86_REG_RDX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCRYPTECB, X86_INS_XCRYPTECB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RBX, X86_REG_RDX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XCRYPTOFB, X86_INS_XCRYPTOFB,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RBX, X86_REG_RDX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XGETBV, X86_INS_XGETBV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RCX, 0 }, { X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XLAT, X86_INS_XLATB,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16i16, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16mi, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16mi8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16ri, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16ri8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16rm, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16rr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR16rr_REV, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32i32, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32mi, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32mi8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32ri, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32ri8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32rm, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32rr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR32rr_REV, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64i32, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64mi32, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64mi8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64ri32, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64ri8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64rm, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64rr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR64rr_REV, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8i8, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8mi, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8mr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8ri, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8rm, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8rr, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XOR8rr_REV, X86_INS_XOR,
+#ifndef CAPSTONE_DIET
+		{ 0 }, { X86_REG_EFLAGS, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XRSTOR, X86_INS_XRSTOR,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XRSTOR64, X86_INS_XRSTOR64,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSAVE, X86_INS_XSAVE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSAVE64, X86_INS_XSAVE64,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSAVEOPT, X86_INS_XSAVEOPT,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSAVEOPT64, X86_INS_XSAVEOPT64,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, 0 }, { 0 }, { X86_GRP_MODE64, 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSETBV, X86_INS_XSETBV,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RAX, X86_REG_RCX, 0 }, { 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSHA1, X86_INS_XSHA1,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RAX, X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSHA256, X86_INS_XSHA256,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RAX, X86_REG_RSI, X86_REG_RDI, 0 }, { X86_REG_RAX, X86_REG_RSI, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+	{
+		X86_XSTORE, X86_INS_XSTORE,
+#ifndef CAPSTONE_DIET
+		{ X86_REG_RDX, X86_REG_RDI, 0 }, { X86_REG_RAX, X86_REG_RDI, 0 }, { 0 }, 0, 0
+#endif
+	},
+};
+#endif
 
 // post printer for X86. put all the hacky stuff here
 void X86_post_printer(csh handle, cs_insn *insn, char *insn_asm)
@@ -31917,19 +40922,13 @@
 	x86_reg reg;
 } insn_regs[] = {
 	{ X86_LODSQ, X86_REG_RAX },
-	{ X86_SKINIT, X86_REG_EAX },
-	{ X86_INVLPGA32, X86_REG_EAX },
-	{ X86_VMRUN32, X86_REG_EAX },
 	{ X86_OR32i32, X86_REG_EAX },
 	{ X86_IN16rr, X86_REG_AX },
-	{ X86_VMRUN64, X86_REG_RAX },
-	{ X86_VMLOAD32, X86_REG_EAX },
 	{ X86_SUB32i32, X86_REG_EAX },
 	{ X86_TEST32i32, X86_REG_EAX },
 	{ X86_ADD32i32, X86_REG_EAX },
 	{ X86_XCHG64ar, X86_REG_RAX },
 	{ X86_LODSB, X86_REG_AL },
-	{ X86_FNSTSW16r, X86_REG_AX },
 	{ X86_AND32i32, X86_REG_EAX },
 	{ X86_MOV32o32a_16, X86_REG_EAX },
 	{ X86_IN16ri, X86_REG_AX },
@@ -31948,7 +40947,6 @@
 	{ X86_SCAS16, X86_REG_AX },
 	{ X86_XOR8i8, X86_REG_AL },
 	{ X86_SUB16i16, X86_REG_AX },
-	{ X86_INVLPGA64, X86_REG_RAX },
 	{ X86_MOV8o8a, X86_REG_AL },
 	{ X86_OR16i16, X86_REG_AX },
 	{ X86_XCHG32ar, X86_REG_EAX },
@@ -31961,10 +40959,7 @@
 	{ X86_ADD64i32, X86_REG_RAX },
 	{ X86_OR8i8, X86_REG_AL },
 	{ X86_TEST64i32, X86_REG_RAX },
-	{ X86_VMSAVE32, X86_REG_EAX },
-	{ X86_VMSAVE64, X86_REG_RAX },
 	{ X86_SBB16i16, X86_REG_AX },
-	{ X86_VMLOAD64, X86_REG_RAX },
 	{ X86_TEST8i8, X86_REG_AL },
 	{ X86_IN8ri, X86_REG_AL },
 	{ X86_TEST16i16, X86_REG_AX },
@@ -31990,6 +40985,18 @@
 	{ X86_CMP16i16, X86_REG_AX },
 	{ X86_ADC32i32, X86_REG_EAX },
 	{ X86_IN32ri, X86_REG_EAX },
+#ifndef CAPSTONE_X86_REDUCE
+	{ X86_SKINIT, X86_REG_EAX },
+	{ X86_INVLPGA32, X86_REG_EAX },
+	{ X86_VMRUN32, X86_REG_EAX },
+	{ X86_VMRUN64, X86_REG_RAX },
+	{ X86_VMLOAD32, X86_REG_EAX },
+	{ X86_FNSTSW16r, X86_REG_AX },
+	{ X86_INVLPGA64, X86_REG_RAX },
+	{ X86_VMSAVE32, X86_REG_EAX },
+	{ X86_VMSAVE64, X86_REG_RAX },
+	{ X86_VMLOAD64, X86_REG_RAX },
+#endif
 };
 
 
@@ -31998,7 +41005,7 @@
 // this is to handle instructions embedding accumulate registers into AsmStrs[]
 x86_reg X86_insn_reg(unsigned int id)
 {
-	int i;
+	unsigned int i;
 
 	for (i = 0; i < ARR_SIZE(insn_regs); i++) {
 		if (insn_regs[i].insn == id) {
diff --git a/bindings/Makefile b/bindings/Makefile
index eb41548..f77cca2 100644
--- a/bindings/Makefile
+++ b/bindings/Makefile
@@ -6,6 +6,9 @@
 TEST_ARM = $(TMPDIR)/test_arm
 TEST_ARM64 = $(TMPDIR)/test_arm64
 TEST_MIPS = $(TMPDIR)/test_mips
+TEST_PPC = $(TMPDIR)/test_ppc
+TEST_SPARC = $(TMPDIR)/test_sparc
+TEST_SYSZ = $(TMPDIR)/test_systemz
 TEST_X86 = $(TMPDIR)/test_x86
 
 .PHONY: all expected python java ocaml
@@ -26,6 +29,9 @@
 	../tests/test_arm > $(TEST_ARM)_e
 	../tests/test_arm64 > $(TEST_ARM64)_e
 	../tests/test_mips > $(TEST_MIPS)_e
+	../tests/test_ppc > $(TEST_PPC)_e
+	../tests/test_sparc > $(TEST_SPARC)_e
+	../tests/test_systemz > $(TEST_SYSZ)_e
 	../tests/test_x86 > $(TEST_X86)_e
 
 python: FORCE
@@ -34,6 +40,9 @@
 	python python/test_arm.py > $(TEST_ARM)_o
 	python python/test_arm64.py > $(TEST_ARM64)_o
 	python python/test_mips.py > $(TEST_MIPS)_o
+	python python/test_ppc.py > $(TEST_PPC)_o
+	python python/test_sparc.py > $(TEST_SPARC)_o
+	python python/test_systemz.py > $(TEST_SYSZ)_o
 	python python/test_x86.py > $(TEST_X86)_o
 	$(MAKE) test_diff
 
@@ -43,6 +52,9 @@
 	cd java; ./run.sh arm > $(TEST_ARM)_o
 	cd java; ./run.sh arm64 > $(TEST_ARM64)_o
 	cd java; ./run.sh mips > $(TEST_MIPS)_o
+	cd java; ./run.sh ppc > $(TEST_PPC)_o
+	cd java; ./run.sh sparc > $(TEST_SPARC)_o
+	cd java; ./run.sh systemz > $(TEST_SYSZ)_o
 	cd java; ./run.sh x86 > $(TEST_X86)_o
 	$(MAKE) test_diff
 
@@ -53,6 +65,9 @@
 	$(DIFF) $(TEST_ARM)_e $(TEST_ARM)_o
 	$(DIFF) $(TEST_ARM64)_e $(TEST_ARM64)_o
 	$(DIFF) $(TEST_MIPS)_e $(TEST_MIPS)_o
+	$(DIFF) $(TEST_PPC)_e $(TEST_PPC)_o
+	$(DIFF) $(TEST_SPARC)_e $(TEST_SPARC)_o
+	$(DIFF) $(TEST_SYSZ)_e $(TEST_SYSZ)_o
 	$(DIFF) $(TEST_X86)_e $(TEST_X86)_o
 
 clean:
diff --git a/bindings/const_generator.py b/bindings/const_generator.py
index 8c953ba..bfd0538 100644
--- a/bindings/const_generator.py
+++ b/bindings/const_generator.py
@@ -5,7 +5,7 @@
 
 INCL_DIR = '../include/'
 
-include = [ 'arm.h', 'arm64.h', 'mips.h', 'x86.h', 'ppc.h' ]
+include = [ 'arm.h', 'arm64.h', 'mips.h', 'x86.h', 'ppc.h', 'sparc.h', 'systemz.h' ]
 
 template = {
     'java': {
@@ -19,6 +19,8 @@
             'mips.h': 'Mips',
             'x86.h': 'X86',
             'ppc.h': 'Ppc',
+            'sparc.h': 'Sparc',
+            'systemz.h': 'Sysz',
             'comment_open': '\t//',
             'comment_close': '',
         },
@@ -33,6 +35,8 @@
             'mips.h': 'mips',
             'x86.h': 'x86',
             'ppc.h': 'ppc',
+            'sparc.h': 'sparc',
+            'systemz.h': 'sysz',
             'comment_open': '#',
             'comment_close': '',
         }
diff --git a/bindings/java/Makefile b/bindings/java/Makefile
index 90428a8..a459c51 100644
--- a/bindings/java/Makefile
+++ b/bindings/java/Makefile
@@ -13,8 +13,8 @@
 endif
 
 CAPSTONE_JAVA = Capstone.java Arm_const.java Arm64_const.java Mips_const.java \
-				X86_const.java Ppc_const.java \
-				Arm.java Arm64.java Mips.java X86.java Ppc.java
+				X86_const.java Ppc_const.java Sparc_const.java Sysz_const.java \
+				Arm.java Arm64.java Mips.java X86.java Ppc.java Sparc.java Systemz.java
 
 all: gen_const capstone tests
 
@@ -25,7 +25,7 @@
 	cd capstone; javac -classpath $(JNA) $(CAPSTONE_JAVA)
 
 tests: jna
-	javac -classpath "$(JNA):capstone.jar" Test.java TestArm.java TestArm64.java TestMips.java TestX86.java TestPpc.java
+	javac -classpath "$(JNA):capstone.jar" Test.java TestArm.java TestArm64.java TestMips.java TestX86.java TestPpc.java TestSparc.java
 
 gen_const:
 	cd ../; python const_generator.py java
diff --git a/bindings/java/Test.java b/bindings/java/Test.java
index 103d0a2..96f8f64 100644
--- a/bindings/java/Test.java
+++ b/bindings/java/Test.java
@@ -39,6 +39,8 @@
 
   public static final byte[] PPC_CODE = new byte[] {(byte)0x80, (byte)0x20, (byte)0x00, (byte)0x00, (byte)0x80, (byte)0x3f, (byte)0x00, (byte)0x00, (byte)0x10, (byte)0x43, (byte)0x23, (byte)0x0e, (byte)0xd0, (byte)0x44, (byte)0x00, (byte)0x80, (byte)0x4c, (byte)0x43, (byte)0x22, (byte)0x02, (byte)0x2d, (byte)0x03, (byte)0x00, (byte)0x80, (byte)0x7c, (byte)0x43, (byte)0x20, (byte)0x14, (byte)0x7c, (byte)0x43, (byte)0x20, (byte)0x93, (byte)0x4f, (byte)0x20, (byte)0x00, (byte)0x21, (byte)0x4c, (byte)0xc8, (byte)0x00, (byte)0x21 };
   public static final byte[] X86_CODE = new byte[] { (byte)0x8d, (byte)0x4c, (byte)0x32, (byte)0x08, (byte)0x01, (byte)0xd8, (byte)0x81, (byte)0xc6, (byte)0x34, (byte)0x12, (byte)0x00, (byte)0x00 };
+  public static final byte[] SPARC_CODE = new byte[] { (byte)0x80, (byte)0xa0, (byte)0x40, (byte)0x02, (byte)0x85, (byte)0xc2, (byte)0x60, (byte)0x08, (byte)0x85, (byte)0xe8, (byte)0x20, (byte)0x01, (byte)0x81, (byte)0xe8, (byte)0x00, (byte)0x00, (byte)0x90, (byte)0x10, (byte)0x20, (byte)0x01, (byte)0xd5, (byte)0xf6, (byte)0x10, (byte)0x16, (byte)0x21, (byte)0x00, (byte)0x00, (byte)0x0a, (byte)0x86, (byte)0x00, (byte)0x40, (byte)0x02, (byte)0x01, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x12, (byte)0xbf, (byte)0xff, (byte)0xff, (byte)0x10, (byte)0xbf, (byte)0xff, (byte)0xff, (byte)0xa0, (byte)0x02, (byte)0x00, (byte)0x09, (byte)0x0d, (byte)0xbf, (byte)0xff, (byte)0xff, (byte)0xd4, (byte)0x20, (byte)0x60, (byte)0x00, (byte)0xd4, (byte)0x4e, (byte)0x00, (byte)0x16, (byte)0x2a, (byte)0xc2, (byte)0x80, (byte)0x03 };
+  public static final byte[] SYSZ_CODE = new byte[] { (byte)0xed, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x1a, (byte)0x5a, (byte)0x0f, (byte)0x1f, (byte)0xff, (byte)0xc2, (byte)0x09, (byte)0x80, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x07, (byte)0xf7, (byte)0xeb, (byte)0x2a, (byte)0xff, (byte)0xff, (byte)0x7f, (byte)0x57, (byte)0xe3, (byte)0x01, (byte)0xff, (byte)0xff, (byte)0x7f, (byte)0x57, (byte)0xeb, (byte)0x00, (byte)0xf0, (byte)0x00, (byte)0x00, (byte)0x24, (byte)0xb2, (byte)0x4f, (byte)0x00, (byte)0x78 };
 
   static public void main(String argv[]) {
     platform[] platforms = {
@@ -123,6 +125,18 @@
           PPC_CODE,
           "PPC-64, print register with number only"
           ),
+      new platform (
+          Capstone.CS_ARCH_SPARC,
+          Capstone.CS_MODE_BIG_ENDIAN,
+          SPARC_CODE,
+          "Sparc"
+          ),
+      new platform (
+          Capstone.CS_ARCH_SYSZ,
+          0,
+          SYSZ_CODE,
+          "SystemZ"
+          ),
     };
 
     for (int j = 0; j < platforms.length; j++) {
diff --git a/bindings/java/TestSparc.java b/bindings/java/TestSparc.java
new file mode 100644
index 0000000..e4052af
--- /dev/null
+++ b/bindings/java/TestSparc.java
@@ -0,0 +1,93 @@
+// Capstone Java binding
+// By Nguyen Anh Quynh & Dang Hoang Vu,  2013-2014
+
+import capstone.Capstone;
+import capstone.Sparc;
+
+import static capstone.Sparc_const.*;
+
+public class TestSparc {
+
+  static byte[] hexString2Byte(String s) {
+    // from http://stackoverflow.com/questions/140131/convert-a-string-representation-of-a-hex-dump-to-a-byte-array-using-java
+    int len = s.length();
+    byte[] data = new byte[len / 2];
+    for (int i = 0; i < len; i += 2) {
+      data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+          + Character.digit(s.charAt(i+1), 16));
+    }
+    return data;
+  }
+
+  static final String SPARC_CODE = "80a0400285c2600885e8200181e8000090102001d5f610162100000a860040020100000012bfffff10bfffffa00200090dbfffffd4206000d44e00162ac28003";
+
+  public static Capstone cs;
+
+  private static String hex(int i) {
+    return Integer.toString(i, 16);
+  }
+
+  private static String hex(long i) {
+    return Long.toString(i, 16);
+  }
+
+  public static void print_ins_detail(Capstone.CsInsn ins) {
+    System.out.printf("0x%x:\t%s\t%s\n", ins.address, ins.mnemonic, ins.opStr);
+
+    Sparc.OpInfo operands = (Sparc.OpInfo) ins.operands;
+
+    if (operands.op.length != 0) {
+      System.out.printf("\top_count: %d\n", operands.op.length);
+      for (int c=0; c<operands.op.length; c++) {
+        Sparc.Operand i = (Sparc.Operand) operands.op[c];
+        if (i.type == SPARC_OP_REG)
+            System.out.printf("\t\toperands[%d].type: REG = %s\n", c, ins.regName(i.value.reg));
+        if (i.type == SPARC_OP_IMM)
+          System.out.printf("\t\toperands[%d].type: IMM = 0x%x\n", c, i.value.imm);
+        if (i.type == SPARC_OP_MEM) {
+          System.out.printf("\t\toperands[%d].type: MEM\n", c);
+          if (i.value.mem.base != SPARC_REG_INVALID)
+            System.out.printf("\t\t\toperands[%d].mem.base: REG = %s\n", c, ins.regName(i.value.mem.base));
+          if (i.value.mem.index != SPARC_REG_INVALID)
+            System.out.printf("\t\t\toperands[%d].mem.index: REG = %s\n", c, ins.regName(i.value.mem.index));
+          if (i.value.mem.disp != 0)
+            System.out.printf("\t\t\toperands[%d].mem.disp: 0x%x\n", c, i.value.mem.disp);
+        }
+      }
+    }
+
+    if (operands.cc != 0)
+      System.out.printf("\tConditional code: %d\n", operands.cc);
+
+    if (operands.hint != 0)
+      System.out.printf("\tBranch hint: %d\n", operands.hint);
+
+    System.out.printf("\n");
+  }
+
+  public static void main(String argv[]) {
+
+    final Test.platform[] all_tests = {
+      new Test.platform(Capstone.CS_ARCH_SPARC, Capstone.CS_MODE_BIG_ENDIAN, hexString2Byte(SPARC_CODE), "SPARC"),
+    };
+
+    for (int i=0; i<all_tests.length; i++) {
+      Test.platform test = all_tests[i];
+      System.out.println(new String(new char[16]).replace("\0", "*"));
+      System.out.println("Platform: " + test.comment);
+      System.out.println("Code: " + Test.stringToHex(test.code));
+      System.out.println("Disasm:");
+
+      cs = new Capstone(test.arch, test.mode);
+      cs.setDetail(Capstone.CS_OPT_ON);
+      Capstone.CsInsn[] all_ins = cs.disasm(test.code, 0x1000);
+
+      for (int j = 0; j < all_ins.length; j++) {
+        print_ins_detail(all_ins[j]);
+        System.out.println();
+      }
+      System.out.printf("0x%x:\n\n", (all_ins[all_ins.length-1].address + all_ins[all_ins.length-1].size));
+    }
+  }
+
+}
diff --git a/bindings/java/TestSystemz.java b/bindings/java/TestSystemz.java
new file mode 100644
index 0000000..9546464
--- /dev/null
+++ b/bindings/java/TestSystemz.java
@@ -0,0 +1,94 @@
+// Capstone Java binding
+// By Nguyen Anh Quynh & Dang Hoang Vu,  2013-2014
+
+import capstone.Capstone;
+import capstone.Systemz;
+
+import static capstone.Sysz_const.*;
+
+public class TestSystemz {
+
+  static byte[] hexString2Byte(String s) {
+    // from http://stackoverflow.com/questions/140131/convert-a-string-representation-of-a-hex-dump-to-a-byte-array-using-java
+    int len = s.length();
+    byte[] data = new byte[len / 2];
+    for (int i = 0; i < len; i += 2) {
+      data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+          + Character.digit(s.charAt(i+1), 16));
+    }
+    return data;
+  }
+
+  static final String SYSZ_CODE = "ed000000001a5a0f1fffc2098000000007f7eb2affff7f57e301ffff7f57eb00f0000024b24f0078"
+
+  public static Capstone cs;
+
+  private static String hex(int i) {
+    return Integer.toString(i, 16);
+  }
+
+  private static String hex(long i) {
+    return Long.toString(i, 16);
+  }
+
+  public static void print_ins_detail(Capstone.CsInsn ins) {
+    System.out.printf("0x%x:\t%s\t%s\n", ins.address, ins.mnemonic, ins.opStr);
+
+    Systemz.OpInfo operands = (Systemz.OpInfo) ins.operands;
+
+    if (operands.op.length != 0) {
+      System.out.printf("\top_count: %d\n", operands.op.length);
+      for (int c=0; c<operands.op.length; c++) {
+        Systemz.Operand i = (Systemz.Operand) operands.op[c];
+        if (i.type == SYSZ_OP_REG)
+            System.out.printf("\t\toperands[%d].type: REG = %s\n", c, ins.regName(i.value.reg));
+        if (i.type == SYSZ_OP_ACREG)
+            System.out.printf("\t\toperands[%d].type: ACREG = %u\n", c, i.value.reg);
+        if (i.type == SYSZ_OP_IMM)
+          System.out.printf("\t\toperands[%d].type: IMM = 0x%x\n", c, i.value.imm);
+        if (i.type == SYSZ_OP_MEM) {
+          System.out.printf("\t\toperands[%d].type: MEM\n", c);
+          if (i.value.mem.base != SYSZ_REG_INVALID)
+            System.out.printf("\t\t\toperands[%d].mem.base: REG = %s\n", c, ins.regName(i.value.mem.base));
+          if (i.value.mem.index != SYSZ_REG_INVALID)
+            System.out.printf("\t\t\toperands[%d].mem.index: REG = %s\n", c, ins.regName(i.value.mem.index));
+          if (i.value.mem.length != 0)
+            System.out.printf("\t\t\toperands[%d].mem.length: 0x%x\n", c, i.value.mem.disp);
+          if (i.value.mem.disp != 0)
+            System.out.printf("\t\t\toperands[%d].mem.disp: 0x%x\n", c, i.value.mem.disp);
+        }
+      }
+    }
+
+    if (operands.cc != 0)
+      System.out.printf("\tConditional code: %d\n", operands.cc);
+
+    System.out.printf("\n");
+  }
+
+  public static void main(String argv[]) {
+
+    final Test.platform[] all_tests = {
+      new Test.platform(Capstone.CS_ARCH_SYSZ, 0, hexString2Byte(SYSZ_CODE), "SystemZ"),
+    };
+
+    for (int i=0; i<all_tests.length; i++) {
+      Test.platform test = all_tests[i];
+      System.out.println(new String(new char[16]).replace("\0", "*"));
+      System.out.println("Platform: " + test.comment);
+      System.out.println("Code: " + Test.stringToHex(test.code));
+      System.out.println("Disasm:");
+
+      cs = new Capstone(test.arch, test.mode);
+      cs.setDetail(Capstone.CS_OPT_ON);
+      Capstone.CsInsn[] all_ins = cs.disasm(test.code, 0x1000);
+
+      for (int j = 0; j < all_ins.length; j++) {
+        print_ins_detail(all_ins[j]);
+        System.out.println();
+      }
+      System.out.printf("0x%x:\n\n", (all_ins[all_ins.length-1].address + all_ins[all_ins.length-1].size));
+    }
+  }
+
+}
diff --git a/bindings/java/capstone/Capstone.java b/bindings/java/capstone/Capstone.java
index 0c1475c..3390c1b 100644
--- a/bindings/java/capstone/Capstone.java
+++ b/bindings/java/capstone/Capstone.java
@@ -30,6 +30,8 @@
     public X86.UnionOpInfo x86;
     public Mips.UnionOpInfo mips;
     public Ppc.UnionOpInfo ppc;
+    public Sparc.UnionOpInfo sparc;
+    public Systemz.UnionOpInfo sysz;
   }
 
   protected static class _cs_insn extends Structure {
@@ -167,10 +169,15 @@
           detail.arch.read();
           op_info = new X86.OpInfo((X86.UnionOpInfo) detail.arch.x86);
           break;
-        case CS_ARCH_PPC:
-          detail.arch.setType(Ppc.UnionOpInfo.class);
+        case CS_ARCH_SPARC:
+          detail.arch.setType(Sparc.UnionOpInfo.class);
           detail.arch.read();
-          op_info = new Ppc.OpInfo((Ppc.UnionOpInfo) detail.arch.ppc);
+          op_info = new Sparc.OpInfo((Sparc.UnionOpInfo) detail.arch.sparc);
+          break;
+        case CS_ARCH_SYSZ:
+          detail.arch.setType(Systemz.UnionOpInfo.class);
+          detail.arch.read();
+          op_info = new Systemz.OpInfo((Systemz.UnionOpInfo) detail.arch.sysz);
           break;
         default:
       }
@@ -245,7 +252,7 @@
 
   // Capstone API version
   public static final int CS_API_MAJOR = 2;
-  public static final int CS_API_MINOR = 1;
+  public static final int CS_API_MINOR = 2;
 
   // architectures
   public static final int CS_ARCH_ARM = 0;
@@ -253,6 +260,9 @@
   public static final int CS_ARCH_MIPS = 2;
   public static final int CS_ARCH_X86 = 3;
   public static final int CS_ARCH_PPC = 4;
+  public static final int CS_ARCH_SPARC = 5;
+  public static final int CS_ARCH_SYSZ = 6;
+  public static final int CS_ARCH_MAX = 7;
   public static final int CS_ARCH_ALL = 0xFFFF; // query id for cs_support()
 
   // disasm mode
@@ -261,10 +271,11 @@
   public static final int CS_MODE_16 = 1 << 1;
   public static final int CS_MODE_32 = 1 << 2;
   public static final int CS_MODE_64 = 1 << 3;
-  public static final int CS_MODE_THUMB = 1 << 4;	      // ARM's Thumb mode, including Thumb-2
-  public static final int CS_MODE_MICRO = 1 << 4;	      // MicroMips mode (Mips arch)
+  public static final int CS_MODE_THUMB = 1 << 4;	  // ARM's Thumb mode, including Thumb-2
+  public static final int CS_MODE_MICRO = 1 << 4;	  // MicroMips mode (Mips arch)
   public static final int CS_MODE_N64 = 1 << 5;	      // Nintendo-64 mode (Mips arch)
   public static final int CS_MODE_BIG_ENDIAN = 1 << 31;
+  public static final int CS_MODE_V9 = 1 << 4;	      // SparcV9 mode (Sparc arch)
 
   // Capstone error
   public static final int CS_ERR_OK = 0;
diff --git a/bindings/java/capstone/Sparc.java b/bindings/java/capstone/Sparc.java
new file mode 100644
index 0000000..9a8ca32
--- /dev/null
+++ b/bindings/java/capstone/Sparc.java
@@ -0,0 +1,92 @@
+// Capstone Java binding
+// By Nguyen Anh Quynh & Dang Hoang Vu,  2013
+
+package capstone;
+
+import com.sun.jna.Structure;
+import com.sun.jna.Union;
+
+import java.util.List;
+import java.util.Arrays;
+
+import static capstone.Sparc_const.*;
+
+public class Sparc {
+
+  public static class MemType extends Structure {
+    public byte base;
+    public byte index;
+    public int disp;
+
+    @Override
+    public List getFieldOrder() {
+      return Arrays.asList("base", "index", "disp");
+    }
+  }
+
+  public static class OpValue extends Union {
+    public int reg;
+    public int imm;
+    public MemType mem;
+  }
+
+  public static class Operand extends Structure {
+    public int type;
+    public OpValue value;
+
+    public void read() {
+      readField("type");
+      if (type == SPARC_OP_MEM)
+        value.setType(MemType.class);
+      if (type == SPARC_OP_IMM || type == SPARC_OP_REG)
+        value.setType(Integer.TYPE);
+      if (type == SPARC_OP_INVALID)
+        return;
+      readField("value");
+    }
+
+    @Override
+    public List getFieldOrder() {
+      return Arrays.asList("type", "value");
+    }
+  }
+
+  public static class UnionOpInfo extends Capstone.UnionOpInfo {
+    public int cc;
+    public int hint;
+    public byte op_count;
+
+    public Operand [] op;
+
+    public UnionOpInfo() {
+      op = new Operand[4];
+    }
+
+    public void read() {
+      readField("cc");
+      readField("hint");
+      readField("op_count");
+      op = new Operand[op_count];
+      if (op_count != 0)
+        readField("op");
+    }
+
+    @Override
+    public List getFieldOrder() {
+      return Arrays.asList("cc", "hint", "op_count", "op");
+    }
+  }
+
+  public static class OpInfo extends Capstone.OpInfo {
+    public int cc;
+    public int hint;
+
+    public Operand [] op;
+
+    public OpInfo(UnionOpInfo op_info) {
+      cc = op_info.cc;
+      hint = op_info.hint;
+      op = op_info.op;
+    }
+  }
+}
diff --git a/bindings/java/capstone/Sparc_const.java b/bindings/java/capstone/Sparc_const.java
new file mode 100644
index 0000000..9c9a8f3
--- /dev/null
+++ b/bindings/java/capstone/Sparc_const.java
@@ -0,0 +1,449 @@
+// For Capstone Engine. AUTO-GENERATED FILE, DO NOT EDIT
+package capstone;
+
+public class Sparc_const {
+
+	// Enums corresponding to Sparc condition codes, both icc's and fcc's.
+
+	public static final int SPARC_CC_INVALID = 0;
+
+	// Integer condition codes
+	public static final int SPARC_CC_ICC_A = 8;
+
+	public static final int SPARC_CC_ICC_N = 0;
+	public static final int SPARC_CC_ICC_NE = 9;
+	public static final int SPARC_CC_ICC_E = 1;
+	public static final int SPARC_CC_ICC_G = 10;
+	public static final int SPARC_CC_ICC_LE = 2;
+	public static final int SPARC_CC_ICC_GE = 11;
+	public static final int SPARC_CC_ICC_L = 3;
+	public static final int SPARC_CC_ICC_GU = 12;
+	public static final int SPARC_CC_ICC_LEU = 4;
+	public static final int SPARC_CC_ICC_CC = 13;
+	public static final int SPARC_CC_ICC_CS = 5;
+	public static final int SPARC_CC_ICC_POS = 14;
+	public static final int SPARC_CC_ICC_NEG = 6;
+	public static final int SPARC_CC_ICC_VC = 15;
+	public static final int SPARC_CC_ICC_VS = 7;
+
+	// Floating condition codes
+	public static final int SPARC_CC_FCC_A = 8+16;
+	public static final int SPARC_CC_FCC_N = 0+16;
+	public static final int SPARC_CC_FCC_U = 7+16;
+	public static final int SPARC_CC_FCC_G = 6+16;
+	public static final int SPARC_CC_FCC_UG = 5+16;
+	public static final int SPARC_CC_FCC_L = 4+16;
+	public static final int SPARC_CC_FCC_UL = 3+16;
+	public static final int SPARC_CC_FCC_LG = 2+16;
+	public static final int SPARC_CC_FCC_NE = 1+16;
+	public static final int SPARC_CC_FCC_E = 9+16;
+	public static final int SPARC_CC_FCC_UE = 10+16;
+	public static final int SPARC_CC_FCC_GE = 11+16;
+	public static final int SPARC_CC_FCC_UGE = 12+16;
+	public static final int SPARC_CC_FCC_LE = 13+16;
+	public static final int SPARC_CC_FCC_ULE = 14+16;
+	public static final int SPARC_CC_FCC_O = 15+16;
+
+	// Branch hint
+
+	public static final int SPARC_HINT_INVALID = 0;
+	public static final int SPARC_HINT_A = 1<<0;
+	public static final int SPARC_HINT_PT = 1<<1;
+	public static final int SPARC_HINT_PN = 1<<2;
+
+	// Operand type for instruction's operands
+
+	public static final int SPARC_OP_INVALID = 0;
+	public static final int SPARC_OP_REG = 1;
+	public static final int SPARC_OP_IMM = 2;
+	public static final int SPARC_OP_MEM = 3;
+
+	// SPARC registers
+
+	public static final int SPARC_REG_INVALID = 0;
+	public static final int SPARC_REG_F0 = 1;
+	public static final int SPARC_REG_F1 = 2;
+	public static final int SPARC_REG_F2 = 3;
+	public static final int SPARC_REG_F3 = 4;
+	public static final int SPARC_REG_F4 = 5;
+	public static final int SPARC_REG_F5 = 6;
+	public static final int SPARC_REG_F6 = 7;
+	public static final int SPARC_REG_F7 = 8;
+	public static final int SPARC_REG_F8 = 9;
+	public static final int SPARC_REG_F9 = 10;
+	public static final int SPARC_REG_F10 = 11;
+	public static final int SPARC_REG_F11 = 12;
+	public static final int SPARC_REG_F12 = 13;
+	public static final int SPARC_REG_F13 = 14;
+	public static final int SPARC_REG_F14 = 15;
+	public static final int SPARC_REG_F15 = 16;
+	public static final int SPARC_REG_F16 = 17;
+	public static final int SPARC_REG_F17 = 18;
+	public static final int SPARC_REG_F18 = 19;
+	public static final int SPARC_REG_F19 = 20;
+	public static final int SPARC_REG_F20 = 21;
+	public static final int SPARC_REG_F21 = 22;
+	public static final int SPARC_REG_F22 = 23;
+	public static final int SPARC_REG_F23 = 24;
+	public static final int SPARC_REG_F24 = 25;
+	public static final int SPARC_REG_F25 = 26;
+	public static final int SPARC_REG_F26 = 27;
+	public static final int SPARC_REG_F27 = 28;
+	public static final int SPARC_REG_F28 = 29;
+	public static final int SPARC_REG_F29 = 30;
+	public static final int SPARC_REG_F30 = 31;
+	public static final int SPARC_REG_F31 = 32;
+	public static final int SPARC_REG_F32 = 33;
+	public static final int SPARC_REG_F34 = 34;
+	public static final int SPARC_REG_F36 = 35;
+	public static final int SPARC_REG_F38 = 36;
+	public static final int SPARC_REG_F40 = 37;
+	public static final int SPARC_REG_F42 = 38;
+	public static final int SPARC_REG_F44 = 39;
+	public static final int SPARC_REG_F46 = 40;
+	public static final int SPARC_REG_F48 = 41;
+	public static final int SPARC_REG_F50 = 42;
+	public static final int SPARC_REG_F52 = 43;
+	public static final int SPARC_REG_F54 = 44;
+	public static final int SPARC_REG_F56 = 45;
+	public static final int SPARC_REG_F58 = 46;
+	public static final int SPARC_REG_F60 = 47;
+	public static final int SPARC_REG_F62 = 48;
+	public static final int SPARC_REG_FCC0 = 49;
+	public static final int SPARC_REG_FCC1 = 50;
+	public static final int SPARC_REG_FCC2 = 51;
+	public static final int SPARC_REG_FCC3 = 52;
+	public static final int SPARC_REG_FP = 53;
+	public static final int SPARC_REG_G0 = 54;
+	public static final int SPARC_REG_G1 = 55;
+	public static final int SPARC_REG_G2 = 56;
+	public static final int SPARC_REG_G3 = 57;
+	public static final int SPARC_REG_G4 = 58;
+	public static final int SPARC_REG_G5 = 59;
+	public static final int SPARC_REG_G6 = 60;
+	public static final int SPARC_REG_G7 = 61;
+	public static final int SPARC_REG_I0 = 62;
+	public static final int SPARC_REG_I1 = 63;
+	public static final int SPARC_REG_I2 = 64;
+	public static final int SPARC_REG_I3 = 65;
+	public static final int SPARC_REG_I4 = 66;
+	public static final int SPARC_REG_I5 = 67;
+	public static final int SPARC_REG_I7 = 68;
+	public static final int SPARC_REG_ICC = 69;
+	public static final int SPARC_REG_L0 = 70;
+	public static final int SPARC_REG_L1 = 71;
+	public static final int SPARC_REG_L2 = 72;
+	public static final int SPARC_REG_L3 = 73;
+	public static final int SPARC_REG_L4 = 74;
+	public static final int SPARC_REG_L5 = 75;
+	public static final int SPARC_REG_L6 = 76;
+	public static final int SPARC_REG_L7 = 77;
+	public static final int SPARC_REG_O0 = 78;
+	public static final int SPARC_REG_O1 = 79;
+	public static final int SPARC_REG_O2 = 80;
+	public static final int SPARC_REG_O3 = 81;
+	public static final int SPARC_REG_O4 = 82;
+	public static final int SPARC_REG_O5 = 83;
+	public static final int SPARC_REG_O7 = 84;
+	public static final int SPARC_REG_SP = 85;
+	public static final int SPARC_REG_Y = 86;
+	public static final int SPARC_REG_MAX = 87;
+	public static final int SPARC_REG_O6 = SPARC_REG_SP;
+	public static final int SPARC_REG_I6 = SPARC_REG_FP;
+
+	// SPARC instruction
+
+	public static final int SPARC_INS_INVALID = 0;
+	public static final int SPARC_INS_ADDCC = 1;
+	public static final int SPARC_INS_ADDX = 2;
+	public static final int SPARC_INS_ADDXCC = 3;
+	public static final int SPARC_INS_ADDXC = 4;
+	public static final int SPARC_INS_ADDXCCC = 5;
+	public static final int SPARC_INS_ADD = 6;
+	public static final int SPARC_INS_ALIGNADDR = 7;
+	public static final int SPARC_INS_ALIGNADDRL = 8;
+	public static final int SPARC_INS_ANDCC = 9;
+	public static final int SPARC_INS_ANDNCC = 10;
+	public static final int SPARC_INS_ANDN = 11;
+	public static final int SPARC_INS_AND = 12;
+	public static final int SPARC_INS_ARRAY16 = 13;
+	public static final int SPARC_INS_ARRAY32 = 14;
+	public static final int SPARC_INS_ARRAY8 = 15;
+	public static final int SPARC_INS_BA = 16;
+	public static final int SPARC_INS_B = 17;
+	public static final int SPARC_INS_JMP = 18;
+	public static final int SPARC_INS_BMASK = 19;
+	public static final int SPARC_INS_FB = 20;
+	public static final int SPARC_INS_BRGEZ = 21;
+	public static final int SPARC_INS_BRGZ = 22;
+	public static final int SPARC_INS_BRLEZ = 23;
+	public static final int SPARC_INS_BRLZ = 24;
+	public static final int SPARC_INS_BRNZ = 25;
+	public static final int SPARC_INS_BRZ = 26;
+	public static final int SPARC_INS_BSHUFFLE = 27;
+	public static final int SPARC_INS_CALL = 28;
+	public static final int SPARC_INS_CASX = 29;
+	public static final int SPARC_INS_CAS = 30;
+	public static final int SPARC_INS_CMASK16 = 31;
+	public static final int SPARC_INS_CMASK32 = 32;
+	public static final int SPARC_INS_CMASK8 = 33;
+	public static final int SPARC_INS_CMP = 34;
+	public static final int SPARC_INS_EDGE16 = 35;
+	public static final int SPARC_INS_EDGE16L = 36;
+	public static final int SPARC_INS_EDGE16LN = 37;
+	public static final int SPARC_INS_EDGE16N = 38;
+	public static final int SPARC_INS_EDGE32 = 39;
+	public static final int SPARC_INS_EDGE32L = 40;
+	public static final int SPARC_INS_EDGE32LN = 41;
+	public static final int SPARC_INS_EDGE32N = 42;
+	public static final int SPARC_INS_EDGE8 = 43;
+	public static final int SPARC_INS_EDGE8L = 44;
+	public static final int SPARC_INS_EDGE8LN = 45;
+	public static final int SPARC_INS_EDGE8N = 46;
+	public static final int SPARC_INS_FABSD = 47;
+	public static final int SPARC_INS_FABSQ = 48;
+	public static final int SPARC_INS_FABSS = 49;
+	public static final int SPARC_INS_FADDD = 50;
+	public static final int SPARC_INS_FADDQ = 51;
+	public static final int SPARC_INS_FADDS = 52;
+	public static final int SPARC_INS_FALIGNDATA = 53;
+	public static final int SPARC_INS_FAND = 54;
+	public static final int SPARC_INS_FANDNOT1 = 55;
+	public static final int SPARC_INS_FANDNOT1S = 56;
+	public static final int SPARC_INS_FANDNOT2 = 57;
+	public static final int SPARC_INS_FANDNOT2S = 58;
+	public static final int SPARC_INS_FANDS = 59;
+	public static final int SPARC_INS_FCHKSM16 = 60;
+	public static final int SPARC_INS_FCMPD = 61;
+	public static final int SPARC_INS_FCMPEQ16 = 62;
+	public static final int SPARC_INS_FCMPEQ32 = 63;
+	public static final int SPARC_INS_FCMPGT16 = 64;
+	public static final int SPARC_INS_FCMPGT32 = 65;
+	public static final int SPARC_INS_FCMPLE16 = 66;
+	public static final int SPARC_INS_FCMPLE32 = 67;
+	public static final int SPARC_INS_FCMPNE16 = 68;
+	public static final int SPARC_INS_FCMPNE32 = 69;
+	public static final int SPARC_INS_FCMPQ = 70;
+	public static final int SPARC_INS_FCMPS = 71;
+	public static final int SPARC_INS_FDIVD = 72;
+	public static final int SPARC_INS_FDIVQ = 73;
+	public static final int SPARC_INS_FDIVS = 74;
+	public static final int SPARC_INS_FDMULQ = 75;
+	public static final int SPARC_INS_FDTOI = 76;
+	public static final int SPARC_INS_FDTOQ = 77;
+	public static final int SPARC_INS_FDTOS = 78;
+	public static final int SPARC_INS_FDTOX = 79;
+	public static final int SPARC_INS_FEXPAND = 80;
+	public static final int SPARC_INS_FHADDD = 81;
+	public static final int SPARC_INS_FHADDS = 82;
+	public static final int SPARC_INS_FHSUBD = 83;
+	public static final int SPARC_INS_FHSUBS = 84;
+	public static final int SPARC_INS_FITOD = 85;
+	public static final int SPARC_INS_FITOQ = 86;
+	public static final int SPARC_INS_FITOS = 87;
+	public static final int SPARC_INS_FLCMPD = 88;
+	public static final int SPARC_INS_FLCMPS = 89;
+	public static final int SPARC_INS_FLUSHW = 90;
+	public static final int SPARC_INS_FMEAN16 = 91;
+	public static final int SPARC_INS_FMOVD = 92;
+	public static final int SPARC_INS_FMOVQ = 93;
+	public static final int SPARC_INS_FMOVRDGEZ = 94;
+	public static final int SPARC_INS_FMOVRQGEZ = 95;
+	public static final int SPARC_INS_FMOVRSGEZ = 96;
+	public static final int SPARC_INS_FMOVRDGZ = 97;
+	public static final int SPARC_INS_FMOVRQGZ = 98;
+	public static final int SPARC_INS_FMOVRSGZ = 99;
+	public static final int SPARC_INS_FMOVRDLEZ = 100;
+	public static final int SPARC_INS_FMOVRQLEZ = 101;
+	public static final int SPARC_INS_FMOVRSLEZ = 102;
+	public static final int SPARC_INS_FMOVRDLZ = 103;
+	public static final int SPARC_INS_FMOVRQLZ = 104;
+	public static final int SPARC_INS_FMOVRSLZ = 105;
+	public static final int SPARC_INS_FMOVRDNZ = 106;
+	public static final int SPARC_INS_FMOVRQNZ = 107;
+	public static final int SPARC_INS_FMOVRSNZ = 108;
+	public static final int SPARC_INS_FMOVRDZ = 109;
+	public static final int SPARC_INS_FMOVRQZ = 110;
+	public static final int SPARC_INS_FMOVRSZ = 111;
+	public static final int SPARC_INS_FMOVS = 112;
+	public static final int SPARC_INS_FMUL8SUX16 = 113;
+	public static final int SPARC_INS_FMUL8ULX16 = 114;
+	public static final int SPARC_INS_FMUL8X16 = 115;
+	public static final int SPARC_INS_FMUL8X16AL = 116;
+	public static final int SPARC_INS_FMUL8X16AU = 117;
+	public static final int SPARC_INS_FMULD = 118;
+	public static final int SPARC_INS_FMULD8SUX16 = 119;
+	public static final int SPARC_INS_FMULD8ULX16 = 120;
+	public static final int SPARC_INS_FMULQ = 121;
+	public static final int SPARC_INS_FMULS = 122;
+	public static final int SPARC_INS_FNADDD = 123;
+	public static final int SPARC_INS_FNADDS = 124;
+	public static final int SPARC_INS_FNAND = 125;
+	public static final int SPARC_INS_FNANDS = 126;
+	public static final int SPARC_INS_FNEGD = 127;
+	public static final int SPARC_INS_FNEGQ = 128;
+	public static final int SPARC_INS_FNEGS = 129;
+	public static final int SPARC_INS_FNHADDD = 130;
+	public static final int SPARC_INS_FNHADDS = 131;
+	public static final int SPARC_INS_FNOR = 132;
+	public static final int SPARC_INS_FNORS = 133;
+	public static final int SPARC_INS_FNOT1 = 134;
+	public static final int SPARC_INS_FNOT1S = 135;
+	public static final int SPARC_INS_FNOT2 = 136;
+	public static final int SPARC_INS_FNOT2S = 137;
+	public static final int SPARC_INS_FONE = 138;
+	public static final int SPARC_INS_FONES = 139;
+	public static final int SPARC_INS_FOR = 140;
+	public static final int SPARC_INS_FORNOT1 = 141;
+	public static final int SPARC_INS_FORNOT1S = 142;
+	public static final int SPARC_INS_FORNOT2 = 143;
+	public static final int SPARC_INS_FORNOT2S = 144;
+	public static final int SPARC_INS_FORS = 145;
+	public static final int SPARC_INS_FPACK16 = 146;
+	public static final int SPARC_INS_FPACK32 = 147;
+	public static final int SPARC_INS_FPACKFIX = 148;
+	public static final int SPARC_INS_FPADD16 = 149;
+	public static final int SPARC_INS_FPADD16S = 150;
+	public static final int SPARC_INS_FPADD32 = 151;
+	public static final int SPARC_INS_FPADD32S = 152;
+	public static final int SPARC_INS_FPADD64 = 153;
+	public static final int SPARC_INS_FPMERGE = 154;
+	public static final int SPARC_INS_FPSUB16 = 155;
+	public static final int SPARC_INS_FPSUB16S = 156;
+	public static final int SPARC_INS_FPSUB32 = 157;
+	public static final int SPARC_INS_FPSUB32S = 158;
+	public static final int SPARC_INS_FQTOD = 159;
+	public static final int SPARC_INS_FQTOI = 160;
+	public static final int SPARC_INS_FQTOS = 161;
+	public static final int SPARC_INS_FQTOX = 162;
+	public static final int SPARC_INS_FSLAS16 = 163;
+	public static final int SPARC_INS_FSLAS32 = 164;
+	public static final int SPARC_INS_FSLL16 = 165;
+	public static final int SPARC_INS_FSLL32 = 166;
+	public static final int SPARC_INS_FSMULD = 167;
+	public static final int SPARC_INS_FSQRTD = 168;
+	public static final int SPARC_INS_FSQRTQ = 169;
+	public static final int SPARC_INS_FSQRTS = 170;
+	public static final int SPARC_INS_FSRA16 = 171;
+	public static final int SPARC_INS_FSRA32 = 172;
+	public static final int SPARC_INS_FSRC1 = 173;
+	public static final int SPARC_INS_FSRC1S = 174;
+	public static final int SPARC_INS_FSRC2 = 175;
+	public static final int SPARC_INS_FSRC2S = 176;
+	public static final int SPARC_INS_FSRL16 = 177;
+	public static final int SPARC_INS_FSRL32 = 178;
+	public static final int SPARC_INS_FSTOD = 179;
+	public static final int SPARC_INS_FSTOI = 180;
+	public static final int SPARC_INS_FSTOQ = 181;
+	public static final int SPARC_INS_FSTOX = 182;
+	public static final int SPARC_INS_FSUBD = 183;
+	public static final int SPARC_INS_FSUBQ = 184;
+	public static final int SPARC_INS_FSUBS = 185;
+	public static final int SPARC_INS_FXNOR = 186;
+	public static final int SPARC_INS_FXNORS = 187;
+	public static final int SPARC_INS_FXOR = 188;
+	public static final int SPARC_INS_FXORS = 189;
+	public static final int SPARC_INS_FXTOD = 190;
+	public static final int SPARC_INS_FXTOQ = 191;
+	public static final int SPARC_INS_FXTOS = 192;
+	public static final int SPARC_INS_FZERO = 193;
+	public static final int SPARC_INS_FZEROS = 194;
+	public static final int SPARC_INS_JMPL = 195;
+	public static final int SPARC_INS_LDD = 196;
+	public static final int SPARC_INS_LD = 197;
+	public static final int SPARC_INS_LDQ = 198;
+	public static final int SPARC_INS_LDSB = 199;
+	public static final int SPARC_INS_LDSH = 200;
+	public static final int SPARC_INS_LDSW = 201;
+	public static final int SPARC_INS_LDUB = 202;
+	public static final int SPARC_INS_LDUH = 203;
+	public static final int SPARC_INS_LDX = 204;
+	public static final int SPARC_INS_LZCNT = 205;
+	public static final int SPARC_INS_MEMBAR = 206;
+	public static final int SPARC_INS_MOVDTOX = 207;
+	public static final int SPARC_INS_MOV = 208;
+	public static final int SPARC_INS_MOVRGEZ = 209;
+	public static final int SPARC_INS_MOVRGZ = 210;
+	public static final int SPARC_INS_MOVRLEZ = 211;
+	public static final int SPARC_INS_MOVRLZ = 212;
+	public static final int SPARC_INS_MOVRNZ = 213;
+	public static final int SPARC_INS_MOVRZ = 214;
+	public static final int SPARC_INS_MOVSTOSW = 215;
+	public static final int SPARC_INS_MOVSTOUW = 216;
+	public static final int SPARC_INS_MULX = 217;
+	public static final int SPARC_INS_NOP = 218;
+	public static final int SPARC_INS_ORCC = 219;
+	public static final int SPARC_INS_ORNCC = 220;
+	public static final int SPARC_INS_ORN = 221;
+	public static final int SPARC_INS_OR = 222;
+	public static final int SPARC_INS_PDIST = 223;
+	public static final int SPARC_INS_PDISTN = 224;
+	public static final int SPARC_INS_POPC = 225;
+	public static final int SPARC_INS_RD = 226;
+	public static final int SPARC_INS_RESTORE = 227;
+	public static final int SPARC_INS_RETT = 228;
+	public static final int SPARC_INS_SAVE = 229;
+	public static final int SPARC_INS_SDIVCC = 230;
+	public static final int SPARC_INS_SDIVX = 231;
+	public static final int SPARC_INS_SDIV = 232;
+	public static final int SPARC_INS_SETHI = 233;
+	public static final int SPARC_INS_SHUTDOWN = 234;
+	public static final int SPARC_INS_SIAM = 235;
+	public static final int SPARC_INS_SLLX = 236;
+	public static final int SPARC_INS_SLL = 237;
+	public static final int SPARC_INS_SMULCC = 238;
+	public static final int SPARC_INS_SMUL = 239;
+	public static final int SPARC_INS_SRAX = 240;
+	public static final int SPARC_INS_SRA = 241;
+	public static final int SPARC_INS_SRLX = 242;
+	public static final int SPARC_INS_SRL = 243;
+	public static final int SPARC_INS_STBAR = 244;
+	public static final int SPARC_INS_STB = 245;
+	public static final int SPARC_INS_STD = 246;
+	public static final int SPARC_INS_ST = 247;
+	public static final int SPARC_INS_STH = 248;
+	public static final int SPARC_INS_STQ = 249;
+	public static final int SPARC_INS_STX = 250;
+	public static final int SPARC_INS_SUBCC = 251;
+	public static final int SPARC_INS_SUBX = 252;
+	public static final int SPARC_INS_SUBXCC = 253;
+	public static final int SPARC_INS_SUB = 254;
+	public static final int SPARC_INS_SWAP = 255;
+	public static final int SPARC_INS_TA = 256;
+	public static final int SPARC_INS_TADDCCTV = 257;
+	public static final int SPARC_INS_TADDCC = 258;
+	public static final int SPARC_INS_T = 259;
+	public static final int SPARC_INS_TSUBCCTV = 260;
+	public static final int SPARC_INS_TSUBCC = 261;
+	public static final int SPARC_INS_UDIVCC = 262;
+	public static final int SPARC_INS_UDIVX = 263;
+	public static final int SPARC_INS_UDIV = 264;
+	public static final int SPARC_INS_UMULCC = 265;
+	public static final int SPARC_INS_UMULXHI = 266;
+	public static final int SPARC_INS_UMUL = 267;
+	public static final int SPARC_INS_UNIMP = 268;
+	public static final int SPARC_INS_FCMPED = 269;
+	public static final int SPARC_INS_FCMPEQ = 270;
+	public static final int SPARC_INS_FCMPES = 271;
+	public static final int SPARC_INS_WR = 272;
+	public static final int SPARC_INS_XMULX = 273;
+	public static final int SPARC_INS_XMULXHI = 274;
+	public static final int SPARC_INS_XNORCC = 275;
+	public static final int SPARC_INS_XNOR = 276;
+	public static final int SPARC_INS_XORCC = 277;
+	public static final int SPARC_INS_XOR = 278;
+	public static final int SPARC_INS_MAX = 279;
+
+	// Group of SPARC instructions
+
+	public static final int SPARC_GRP_INVALID = 0;
+	public static final int SPARC_GRP_HARDQUAD = 1;
+	public static final int SPARC_GRP_V9 = 2;
+	public static final int SPARC_GRP_VIS = 3;
+	public static final int SPARC_GRP_VIS2 = 4;
+	public static final int SPARC_GRP_VIS3 = 5;
+	public static final int SPARC_GRP_32BIT = 6;
+	public static final int SPARC_GRP_64BIT = 7;
+	public static final int SPARC_GRP_JUMP = 8;
+	public static final int SPARC_GRP_MAX = 9;
+}
\ No newline at end of file
diff --git a/bindings/java/capstone/Systemz.java b/bindings/java/capstone/Systemz.java
new file mode 100644
index 0000000..3d70c65
--- /dev/null
+++ b/bindings/java/capstone/Systemz.java
@@ -0,0 +1,89 @@
+// Capstone Java binding
+// By Nguyen Anh Quynh & Dang Hoang Vu,  2013
+
+package capstone;
+
+import com.sun.jna.Structure;
+import com.sun.jna.Union;
+
+import java.util.List;
+import java.util.Arrays;
+
+import static capstone.Sysz_const.*;
+
+public class Systemz {
+
+  public static class MemType extends Structure {
+    public byte base;
+    public byte index;
+    public int length;
+    public int disp;
+
+    @Override
+    public List getFieldOrder() {
+      return Arrays.asList("base", "index", "length", "disp");
+    }
+  }
+
+  public static class OpValue extends Union {
+    public int reg;
+    public int imm;
+    public MemType mem;
+  }
+
+  public static class Operand extends Structure {
+    public int type;
+    public OpValue value;
+
+    public void read() {
+      readField("type");
+      if (type == SYSZ_OP_MEM)
+        value.setType(MemType.class);
+      if (type == SYSZ_OP_IMM || type == SYSZ_OP_REG)
+        value.setType(Integer.TYPE);
+      if (type == SYSZ_OP_INVALID)
+        return;
+      readField("value");
+    }
+
+    @Override
+    public List getFieldOrder() {
+      return Arrays.asList("type", "value");
+    }
+  }
+
+  public static class UnionOpInfo extends Capstone.UnionOpInfo {
+    public int cc;
+    public byte op_count;
+
+    public Operand [] op;
+
+    public UnionOpInfo() {
+      op = new Operand[6];
+    }
+
+    public void read() {
+      readField("cc");
+      readField("op_count");
+      op = new Operand[op_count];
+      if (op_count != 0)
+        readField("op");
+    }
+
+    @Override
+    public List getFieldOrder() {
+      return Arrays.asList("cc", "op_count", "op");
+    }
+  }
+
+  public static class OpInfo extends Capstone.OpInfo {
+    public int cc;
+
+    public Operand [] op;
+
+    public OpInfo(UnionOpInfo op_info) {
+      cc = op_info.cc;
+      op = op_info.op;
+    }
+  }
+}
diff --git a/bindings/java/capstone/Sysz_const.java b/bindings/java/capstone/Sysz_const.java
new file mode 100644
index 0000000..93c4dbe
--- /dev/null
+++ b/bindings/java/capstone/Sysz_const.java
@@ -0,0 +1,764 @@
+// For Capstone Engine. AUTO-GENERATED FILE, DO NOT EDIT
+package capstone;
+
+public class Sysz_const {
+
+	// Enums corresponding to SystemZ condition codes
+
+	public static final int SYSZ_CC_INVALID = 0;
+	public static final int SYSZ_CC_O = 1;
+	public static final int SYSZ_CC_H = 2;
+	public static final int SYSZ_CC_NLE = 3;
+	public static final int SYSZ_CC_L = 4;
+	public static final int SYSZ_CC_NHE = 5;
+	public static final int SYSZ_CC_LH = 6;
+	public static final int SYSZ_CC_NE = 7;
+	public static final int SYSZ_CC_E = 8;
+	public static final int SYSZ_CC_NLH = 9;
+	public static final int SYSZ_CC_HE = 10;
+	public static final int SYSZ_CC_NL = 11;
+	public static final int SYSZ_CC_LE = 12;
+	public static final int SYSZ_CC_NH = 13;
+	public static final int SYSZ_CC_NO = 14;
+
+	// Operand type for instruction's operands
+
+	public static final int SYSZ_OP_INVALID = 0;
+	public static final int SYSZ_OP_REG = 1;
+	public static final int SYSZ_OP_ACREG = 2;
+	public static final int SYSZ_OP_IMM = 3;
+	public static final int SYSZ_OP_MEM = 4;
+
+	// SystemZ registers
+
+	public static final int SYSZ_REG_INVALID = 0;
+	public static final int SYSZ_REG_0 = 1;
+	public static final int SYSZ_REG_1 = 2;
+	public static final int SYSZ_REG_2 = 3;
+	public static final int SYSZ_REG_3 = 4;
+	public static final int SYSZ_REG_4 = 5;
+	public static final int SYSZ_REG_5 = 6;
+	public static final int SYSZ_REG_6 = 7;
+	public static final int SYSZ_REG_7 = 8;
+	public static final int SYSZ_REG_8 = 9;
+	public static final int SYSZ_REG_9 = 10;
+	public static final int SYSZ_REG_10 = 11;
+	public static final int SYSZ_REG_11 = 12;
+	public static final int SYSZ_REG_12 = 13;
+	public static final int SYSZ_REG_13 = 14;
+	public static final int SYSZ_REG_14 = 15;
+	public static final int SYSZ_REG_15 = 16;
+	public static final int SYSZ_REG_CC = 17;
+	public static final int SYSZ_REG_F0 = 18;
+	public static final int SYSZ_REG_F1 = 19;
+	public static final int SYSZ_REG_F2 = 20;
+	public static final int SYSZ_REG_F3 = 21;
+	public static final int SYSZ_REG_F4 = 22;
+	public static final int SYSZ_REG_F5 = 23;
+	public static final int SYSZ_REG_F6 = 24;
+	public static final int SYSZ_REG_F7 = 25;
+	public static final int SYSZ_REG_F8 = 26;
+	public static final int SYSZ_REG_F9 = 27;
+	public static final int SYSZ_REG_F10 = 28;
+	public static final int SYSZ_REG_F11 = 29;
+	public static final int SYSZ_REG_F12 = 30;
+	public static final int SYSZ_REG_F13 = 31;
+	public static final int SYSZ_REG_F14 = 32;
+	public static final int SYSZ_REG_F15 = 33;
+	public static final int SYSZ_REG_R0L = 34;
+	public static final int SYSZ_REG_MAX = 35;
+
+	// SystemZ instruction
+
+	public static final int SYSZ_INS_INVALID = 0;
+	public static final int SYSZ_INS_A = 1;
+	public static final int SYSZ_INS_ADB = 2;
+	public static final int SYSZ_INS_ADBR = 3;
+	public static final int SYSZ_INS_AEB = 4;
+	public static final int SYSZ_INS_AEBR = 5;
+	public static final int SYSZ_INS_AFI = 6;
+	public static final int SYSZ_INS_AG = 7;
+	public static final int SYSZ_INS_AGF = 8;
+	public static final int SYSZ_INS_AGFI = 9;
+	public static final int SYSZ_INS_AGFR = 10;
+	public static final int SYSZ_INS_AGHI = 11;
+	public static final int SYSZ_INS_AGHIK = 12;
+	public static final int SYSZ_INS_AGR = 13;
+	public static final int SYSZ_INS_AGRK = 14;
+	public static final int SYSZ_INS_AGSI = 15;
+	public static final int SYSZ_INS_AH = 16;
+	public static final int SYSZ_INS_AHI = 17;
+	public static final int SYSZ_INS_AHIK = 18;
+	public static final int SYSZ_INS_AHY = 19;
+	public static final int SYSZ_INS_AIH = 20;
+	public static final int SYSZ_INS_AL = 21;
+	public static final int SYSZ_INS_ALC = 22;
+	public static final int SYSZ_INS_ALCG = 23;
+	public static final int SYSZ_INS_ALCGR = 24;
+	public static final int SYSZ_INS_ALCR = 25;
+	public static final int SYSZ_INS_ALFI = 26;
+	public static final int SYSZ_INS_ALG = 27;
+	public static final int SYSZ_INS_ALGF = 28;
+	public static final int SYSZ_INS_ALGFI = 29;
+	public static final int SYSZ_INS_ALGFR = 30;
+	public static final int SYSZ_INS_ALGHSIK = 31;
+	public static final int SYSZ_INS_ALGR = 32;
+	public static final int SYSZ_INS_ALGRK = 33;
+	public static final int SYSZ_INS_ALHSIK = 34;
+	public static final int SYSZ_INS_ALR = 35;
+	public static final int SYSZ_INS_ALRK = 36;
+	public static final int SYSZ_INS_ALY = 37;
+	public static final int SYSZ_INS_AR = 38;
+	public static final int SYSZ_INS_ARK = 39;
+	public static final int SYSZ_INS_ASI = 40;
+	public static final int SYSZ_INS_AXBR = 41;
+	public static final int SYSZ_INS_AY = 42;
+	public static final int SYSZ_INS_BCR = 43;
+	public static final int SYSZ_INS_BRC = 44;
+	public static final int SYSZ_INS_BRCL = 45;
+	public static final int SYSZ_INS_CGIJ = 46;
+	public static final int SYSZ_INS_CGRJ = 47;
+	public static final int SYSZ_INS_CIJ = 48;
+	public static final int SYSZ_INS_CLGIJ = 49;
+	public static final int SYSZ_INS_CLGRJ = 50;
+	public static final int SYSZ_INS_CLIJ = 51;
+	public static final int SYSZ_INS_CLRJ = 52;
+	public static final int SYSZ_INS_CRJ = 53;
+	public static final int SYSZ_INS_BER = 54;
+	public static final int SYSZ_INS_JE = 55;
+	public static final int SYSZ_INS_JGE = 56;
+	public static final int SYSZ_INS_LOCE = 57;
+	public static final int SYSZ_INS_LOCGE = 58;
+	public static final int SYSZ_INS_LOCGRE = 59;
+	public static final int SYSZ_INS_LOCRE = 60;
+	public static final int SYSZ_INS_STOCE = 61;
+	public static final int SYSZ_INS_STOCGE = 62;
+	public static final int SYSZ_INS_BHR = 63;
+	public static final int SYSZ_INS_BHER = 64;
+	public static final int SYSZ_INS_JHE = 65;
+	public static final int SYSZ_INS_JGHE = 66;
+	public static final int SYSZ_INS_LOCHE = 67;
+	public static final int SYSZ_INS_LOCGHE = 68;
+	public static final int SYSZ_INS_LOCGRHE = 69;
+	public static final int SYSZ_INS_LOCRHE = 70;
+	public static final int SYSZ_INS_STOCHE = 71;
+	public static final int SYSZ_INS_STOCGHE = 72;
+	public static final int SYSZ_INS_JH = 73;
+	public static final int SYSZ_INS_JGH = 74;
+	public static final int SYSZ_INS_LOCH = 75;
+	public static final int SYSZ_INS_LOCGH = 76;
+	public static final int SYSZ_INS_LOCGRH = 77;
+	public static final int SYSZ_INS_LOCRH = 78;
+	public static final int SYSZ_INS_STOCH = 79;
+	public static final int SYSZ_INS_STOCGH = 80;
+	public static final int SYSZ_INS_CGIJNLH = 81;
+	public static final int SYSZ_INS_CGRJNLH = 82;
+	public static final int SYSZ_INS_CIJNLH = 83;
+	public static final int SYSZ_INS_CLGIJNLH = 84;
+	public static final int SYSZ_INS_CLGRJNLH = 85;
+	public static final int SYSZ_INS_CLIJNLH = 86;
+	public static final int SYSZ_INS_CLRJNLH = 87;
+	public static final int SYSZ_INS_CRJNLH = 88;
+	public static final int SYSZ_INS_CGIJE = 89;
+	public static final int SYSZ_INS_CGRJE = 90;
+	public static final int SYSZ_INS_CIJE = 91;
+	public static final int SYSZ_INS_CLGIJE = 92;
+	public static final int SYSZ_INS_CLGRJE = 93;
+	public static final int SYSZ_INS_CLIJE = 94;
+	public static final int SYSZ_INS_CLRJE = 95;
+	public static final int SYSZ_INS_CRJE = 96;
+	public static final int SYSZ_INS_CGIJNLE = 97;
+	public static final int SYSZ_INS_CGRJNLE = 98;
+	public static final int SYSZ_INS_CIJNLE = 99;
+	public static final int SYSZ_INS_CLGIJNLE = 100;
+	public static final int SYSZ_INS_CLGRJNLE = 101;
+	public static final int SYSZ_INS_CLIJNLE = 102;
+	public static final int SYSZ_INS_CLRJNLE = 103;
+	public static final int SYSZ_INS_CRJNLE = 104;
+	public static final int SYSZ_INS_CGIJH = 105;
+	public static final int SYSZ_INS_CGRJH = 106;
+	public static final int SYSZ_INS_CIJH = 107;
+	public static final int SYSZ_INS_CLGIJH = 108;
+	public static final int SYSZ_INS_CLGRJH = 109;
+	public static final int SYSZ_INS_CLIJH = 110;
+	public static final int SYSZ_INS_CLRJH = 111;
+	public static final int SYSZ_INS_CRJH = 112;
+	public static final int SYSZ_INS_CGIJNL = 113;
+	public static final int SYSZ_INS_CGRJNL = 114;
+	public static final int SYSZ_INS_CIJNL = 115;
+	public static final int SYSZ_INS_CLGIJNL = 116;
+	public static final int SYSZ_INS_CLGRJNL = 117;
+	public static final int SYSZ_INS_CLIJNL = 118;
+	public static final int SYSZ_INS_CLRJNL = 119;
+	public static final int SYSZ_INS_CRJNL = 120;
+	public static final int SYSZ_INS_CGIJHE = 121;
+	public static final int SYSZ_INS_CGRJHE = 122;
+	public static final int SYSZ_INS_CIJHE = 123;
+	public static final int SYSZ_INS_CLGIJHE = 124;
+	public static final int SYSZ_INS_CLGRJHE = 125;
+	public static final int SYSZ_INS_CLIJHE = 126;
+	public static final int SYSZ_INS_CLRJHE = 127;
+	public static final int SYSZ_INS_CRJHE = 128;
+	public static final int SYSZ_INS_CGIJNHE = 129;
+	public static final int SYSZ_INS_CGRJNHE = 130;
+	public static final int SYSZ_INS_CIJNHE = 131;
+	public static final int SYSZ_INS_CLGIJNHE = 132;
+	public static final int SYSZ_INS_CLGRJNHE = 133;
+	public static final int SYSZ_INS_CLIJNHE = 134;
+	public static final int SYSZ_INS_CLRJNHE = 135;
+	public static final int SYSZ_INS_CRJNHE = 136;
+	public static final int SYSZ_INS_CGIJL = 137;
+	public static final int SYSZ_INS_CGRJL = 138;
+	public static final int SYSZ_INS_CIJL = 139;
+	public static final int SYSZ_INS_CLGIJL = 140;
+	public static final int SYSZ_INS_CLGRJL = 141;
+	public static final int SYSZ_INS_CLIJL = 142;
+	public static final int SYSZ_INS_CLRJL = 143;
+	public static final int SYSZ_INS_CRJL = 144;
+	public static final int SYSZ_INS_CGIJNH = 145;
+	public static final int SYSZ_INS_CGRJNH = 146;
+	public static final int SYSZ_INS_CIJNH = 147;
+	public static final int SYSZ_INS_CLGIJNH = 148;
+	public static final int SYSZ_INS_CLGRJNH = 149;
+	public static final int SYSZ_INS_CLIJNH = 150;
+	public static final int SYSZ_INS_CLRJNH = 151;
+	public static final int SYSZ_INS_CRJNH = 152;
+	public static final int SYSZ_INS_CGIJLE = 153;
+	public static final int SYSZ_INS_CGRJLE = 154;
+	public static final int SYSZ_INS_CIJLE = 155;
+	public static final int SYSZ_INS_CLGIJLE = 156;
+	public static final int SYSZ_INS_CLGRJLE = 157;
+	public static final int SYSZ_INS_CLIJLE = 158;
+	public static final int SYSZ_INS_CLRJLE = 159;
+	public static final int SYSZ_INS_CRJLE = 160;
+	public static final int SYSZ_INS_CGIJNE = 161;
+	public static final int SYSZ_INS_CGRJNE = 162;
+	public static final int SYSZ_INS_CIJNE = 163;
+	public static final int SYSZ_INS_CLGIJNE = 164;
+	public static final int SYSZ_INS_CLGRJNE = 165;
+	public static final int SYSZ_INS_CLIJNE = 166;
+	public static final int SYSZ_INS_CLRJNE = 167;
+	public static final int SYSZ_INS_CRJNE = 168;
+	public static final int SYSZ_INS_CGIJLH = 169;
+	public static final int SYSZ_INS_CGRJLH = 170;
+	public static final int SYSZ_INS_CIJLH = 171;
+	public static final int SYSZ_INS_CLGIJLH = 172;
+	public static final int SYSZ_INS_CLGRJLH = 173;
+	public static final int SYSZ_INS_CLIJLH = 174;
+	public static final int SYSZ_INS_CLRJLH = 175;
+	public static final int SYSZ_INS_CRJLH = 176;
+	public static final int SYSZ_INS_BLR = 177;
+	public static final int SYSZ_INS_BLER = 178;
+	public static final int SYSZ_INS_JLE = 179;
+	public static final int SYSZ_INS_JGLE = 180;
+	public static final int SYSZ_INS_LOCLE = 181;
+	public static final int SYSZ_INS_LOCGLE = 182;
+	public static final int SYSZ_INS_LOCGRLE = 183;
+	public static final int SYSZ_INS_LOCRLE = 184;
+	public static final int SYSZ_INS_STOCLE = 185;
+	public static final int SYSZ_INS_STOCGLE = 186;
+	public static final int SYSZ_INS_BLHR = 187;
+	public static final int SYSZ_INS_JLH = 188;
+	public static final int SYSZ_INS_JGLH = 189;
+	public static final int SYSZ_INS_LOCLH = 190;
+	public static final int SYSZ_INS_LOCGLH = 191;
+	public static final int SYSZ_INS_LOCGRLH = 192;
+	public static final int SYSZ_INS_LOCRLH = 193;
+	public static final int SYSZ_INS_STOCLH = 194;
+	public static final int SYSZ_INS_STOCGLH = 195;
+	public static final int SYSZ_INS_JL = 196;
+	public static final int SYSZ_INS_JGL = 197;
+	public static final int SYSZ_INS_LOCL = 198;
+	public static final int SYSZ_INS_LOCGL = 199;
+	public static final int SYSZ_INS_LOCGRL = 200;
+	public static final int SYSZ_INS_LOCRL = 201;
+	public static final int SYSZ_INS_LOC = 202;
+	public static final int SYSZ_INS_LOCG = 203;
+	public static final int SYSZ_INS_LOCGR = 204;
+	public static final int SYSZ_INS_LOCR = 205;
+	public static final int SYSZ_INS_STOCL = 206;
+	public static final int SYSZ_INS_STOCGL = 207;
+	public static final int SYSZ_INS_BNER = 208;
+	public static final int SYSZ_INS_JNE = 209;
+	public static final int SYSZ_INS_JGNE = 210;
+	public static final int SYSZ_INS_LOCNE = 211;
+	public static final int SYSZ_INS_LOCGNE = 212;
+	public static final int SYSZ_INS_LOCGRNE = 213;
+	public static final int SYSZ_INS_LOCRNE = 214;
+	public static final int SYSZ_INS_STOCNE = 215;
+	public static final int SYSZ_INS_STOCGNE = 216;
+	public static final int SYSZ_INS_BNHR = 217;
+	public static final int SYSZ_INS_BNHER = 218;
+	public static final int SYSZ_INS_JNHE = 219;
+	public static final int SYSZ_INS_JGNHE = 220;
+	public static final int SYSZ_INS_LOCNHE = 221;
+	public static final int SYSZ_INS_LOCGNHE = 222;
+	public static final int SYSZ_INS_LOCGRNHE = 223;
+	public static final int SYSZ_INS_LOCRNHE = 224;
+	public static final int SYSZ_INS_STOCNHE = 225;
+	public static final int SYSZ_INS_STOCGNHE = 226;
+	public static final int SYSZ_INS_JNH = 227;
+	public static final int SYSZ_INS_JGNH = 228;
+	public static final int SYSZ_INS_LOCNH = 229;
+	public static final int SYSZ_INS_LOCGNH = 230;
+	public static final int SYSZ_INS_LOCGRNH = 231;
+	public static final int SYSZ_INS_LOCRNH = 232;
+	public static final int SYSZ_INS_STOCNH = 233;
+	public static final int SYSZ_INS_STOCGNH = 234;
+	public static final int SYSZ_INS_BNLR = 235;
+	public static final int SYSZ_INS_BNLER = 236;
+	public static final int SYSZ_INS_JNLE = 237;
+	public static final int SYSZ_INS_JGNLE = 238;
+	public static final int SYSZ_INS_LOCNLE = 239;
+	public static final int SYSZ_INS_LOCGNLE = 240;
+	public static final int SYSZ_INS_LOCGRNLE = 241;
+	public static final int SYSZ_INS_LOCRNLE = 242;
+	public static final int SYSZ_INS_STOCNLE = 243;
+	public static final int SYSZ_INS_STOCGNLE = 244;
+	public static final int SYSZ_INS_BNLHR = 245;
+	public static final int SYSZ_INS_JNLH = 246;
+	public static final int SYSZ_INS_JGNLH = 247;
+	public static final int SYSZ_INS_LOCNLH = 248;
+	public static final int SYSZ_INS_LOCGNLH = 249;
+	public static final int SYSZ_INS_LOCGRNLH = 250;
+	public static final int SYSZ_INS_LOCRNLH = 251;
+	public static final int SYSZ_INS_STOCNLH = 252;
+	public static final int SYSZ_INS_STOCGNLH = 253;
+	public static final int SYSZ_INS_JNL = 254;
+	public static final int SYSZ_INS_JGNL = 255;
+	public static final int SYSZ_INS_LOCNL = 256;
+	public static final int SYSZ_INS_LOCGNL = 257;
+	public static final int SYSZ_INS_LOCGRNL = 258;
+	public static final int SYSZ_INS_LOCRNL = 259;
+	public static final int SYSZ_INS_STOCNL = 260;
+	public static final int SYSZ_INS_STOCGNL = 261;
+	public static final int SYSZ_INS_BNOR = 262;
+	public static final int SYSZ_INS_JNO = 263;
+	public static final int SYSZ_INS_JGNO = 264;
+	public static final int SYSZ_INS_LOCNO = 265;
+	public static final int SYSZ_INS_LOCGNO = 266;
+	public static final int SYSZ_INS_LOCGRNO = 267;
+	public static final int SYSZ_INS_LOCRNO = 268;
+	public static final int SYSZ_INS_STOCNO = 269;
+	public static final int SYSZ_INS_STOCGNO = 270;
+	public static final int SYSZ_INS_BOR = 271;
+	public static final int SYSZ_INS_JO = 272;
+	public static final int SYSZ_INS_JGO = 273;
+	public static final int SYSZ_INS_LOCO = 274;
+	public static final int SYSZ_INS_LOCGO = 275;
+	public static final int SYSZ_INS_LOCGRO = 276;
+	public static final int SYSZ_INS_LOCRO = 277;
+	public static final int SYSZ_INS_STOCO = 278;
+	public static final int SYSZ_INS_STOCGO = 279;
+	public static final int SYSZ_INS_STOC = 280;
+	public static final int SYSZ_INS_STOCG = 281;
+	public static final int SYSZ_INS_BASR = 282;
+	public static final int SYSZ_INS_BR = 283;
+	public static final int SYSZ_INS_BRAS = 284;
+	public static final int SYSZ_INS_BRASL = 285;
+	public static final int SYSZ_INS_J = 286;
+	public static final int SYSZ_INS_JG = 287;
+	public static final int SYSZ_INS_BRCT = 288;
+	public static final int SYSZ_INS_BRCTG = 289;
+	public static final int SYSZ_INS_C = 290;
+	public static final int SYSZ_INS_CDB = 291;
+	public static final int SYSZ_INS_CDBR = 292;
+	public static final int SYSZ_INS_CDFBR = 293;
+	public static final int SYSZ_INS_CDGBR = 294;
+	public static final int SYSZ_INS_CDLFBR = 295;
+	public static final int SYSZ_INS_CDLGBR = 296;
+	public static final int SYSZ_INS_CEB = 297;
+	public static final int SYSZ_INS_CEBR = 298;
+	public static final int SYSZ_INS_CEFBR = 299;
+	public static final int SYSZ_INS_CEGBR = 300;
+	public static final int SYSZ_INS_CELFBR = 301;
+	public static final int SYSZ_INS_CELGBR = 302;
+	public static final int SYSZ_INS_CFDBR = 303;
+	public static final int SYSZ_INS_CFEBR = 304;
+	public static final int SYSZ_INS_CFI = 305;
+	public static final int SYSZ_INS_CFXBR = 306;
+	public static final int SYSZ_INS_CG = 307;
+	public static final int SYSZ_INS_CGDBR = 308;
+	public static final int SYSZ_INS_CGEBR = 309;
+	public static final int SYSZ_INS_CGF = 310;
+	public static final int SYSZ_INS_CGFI = 311;
+	public static final int SYSZ_INS_CGFR = 312;
+	public static final int SYSZ_INS_CGFRL = 313;
+	public static final int SYSZ_INS_CGH = 314;
+	public static final int SYSZ_INS_CGHI = 315;
+	public static final int SYSZ_INS_CGHRL = 316;
+	public static final int SYSZ_INS_CGHSI = 317;
+	public static final int SYSZ_INS_CGR = 318;
+	public static final int SYSZ_INS_CGRL = 319;
+	public static final int SYSZ_INS_CGXBR = 320;
+	public static final int SYSZ_INS_CH = 321;
+	public static final int SYSZ_INS_CHF = 322;
+	public static final int SYSZ_INS_CHHSI = 323;
+	public static final int SYSZ_INS_CHI = 324;
+	public static final int SYSZ_INS_CHRL = 325;
+	public static final int SYSZ_INS_CHSI = 326;
+	public static final int SYSZ_INS_CHY = 327;
+	public static final int SYSZ_INS_CIH = 328;
+	public static final int SYSZ_INS_CL = 329;
+	public static final int SYSZ_INS_CLC = 330;
+	public static final int SYSZ_INS_CLFDBR = 331;
+	public static final int SYSZ_INS_CLFEBR = 332;
+	public static final int SYSZ_INS_CLFHSI = 333;
+	public static final int SYSZ_INS_CLFI = 334;
+	public static final int SYSZ_INS_CLFXBR = 335;
+	public static final int SYSZ_INS_CLG = 336;
+	public static final int SYSZ_INS_CLGDBR = 337;
+	public static final int SYSZ_INS_CLGEBR = 338;
+	public static final int SYSZ_INS_CLGF = 339;
+	public static final int SYSZ_INS_CLGFI = 340;
+	public static final int SYSZ_INS_CLGFR = 341;
+	public static final int SYSZ_INS_CLGFRL = 342;
+	public static final int SYSZ_INS_CLGHRL = 343;
+	public static final int SYSZ_INS_CLGHSI = 344;
+	public static final int SYSZ_INS_CLGR = 345;
+	public static final int SYSZ_INS_CLGRL = 346;
+	public static final int SYSZ_INS_CLGXBR = 347;
+	public static final int SYSZ_INS_CLHF = 348;
+	public static final int SYSZ_INS_CLHHSI = 349;
+	public static final int SYSZ_INS_CLHRL = 350;
+	public static final int SYSZ_INS_CLI = 351;
+	public static final int SYSZ_INS_CLIH = 352;
+	public static final int SYSZ_INS_CLIY = 353;
+	public static final int SYSZ_INS_CLR = 354;
+	public static final int SYSZ_INS_CLRL = 355;
+	public static final int SYSZ_INS_CLST = 356;
+	public static final int SYSZ_INS_CLY = 357;
+	public static final int SYSZ_INS_CPSDR = 358;
+	public static final int SYSZ_INS_CR = 359;
+	public static final int SYSZ_INS_CRL = 360;
+	public static final int SYSZ_INS_CS = 361;
+	public static final int SYSZ_INS_CSG = 362;
+	public static final int SYSZ_INS_CSY = 363;
+	public static final int SYSZ_INS_CXBR = 364;
+	public static final int SYSZ_INS_CXFBR = 365;
+	public static final int SYSZ_INS_CXGBR = 366;
+	public static final int SYSZ_INS_CXLFBR = 367;
+	public static final int SYSZ_INS_CXLGBR = 368;
+	public static final int SYSZ_INS_CY = 369;
+	public static final int SYSZ_INS_DDB = 370;
+	public static final int SYSZ_INS_DDBR = 371;
+	public static final int SYSZ_INS_DEB = 372;
+	public static final int SYSZ_INS_DEBR = 373;
+	public static final int SYSZ_INS_DL = 374;
+	public static final int SYSZ_INS_DLG = 375;
+	public static final int SYSZ_INS_DLGR = 376;
+	public static final int SYSZ_INS_DLR = 377;
+	public static final int SYSZ_INS_DSG = 378;
+	public static final int SYSZ_INS_DSGF = 379;
+	public static final int SYSZ_INS_DSGFR = 380;
+	public static final int SYSZ_INS_DSGR = 381;
+	public static final int SYSZ_INS_DXBR = 382;
+	public static final int SYSZ_INS_EAR = 383;
+	public static final int SYSZ_INS_FIDBR = 384;
+	public static final int SYSZ_INS_FIDBRA = 385;
+	public static final int SYSZ_INS_FIEBR = 386;
+	public static final int SYSZ_INS_FIEBRA = 387;
+	public static final int SYSZ_INS_FIXBR = 388;
+	public static final int SYSZ_INS_FIXBRA = 389;
+	public static final int SYSZ_INS_FLOGR = 390;
+	public static final int SYSZ_INS_IC = 391;
+	public static final int SYSZ_INS_ICY = 392;
+	public static final int SYSZ_INS_IIHF = 393;
+	public static final int SYSZ_INS_IIHH = 394;
+	public static final int SYSZ_INS_IIHL = 395;
+	public static final int SYSZ_INS_IILF = 396;
+	public static final int SYSZ_INS_IILH = 397;
+	public static final int SYSZ_INS_IILL = 398;
+	public static final int SYSZ_INS_IPM = 399;
+	public static final int SYSZ_INS_L = 400;
+	public static final int SYSZ_INS_LA = 401;
+	public static final int SYSZ_INS_LAA = 402;
+	public static final int SYSZ_INS_LAAG = 403;
+	public static final int SYSZ_INS_LAAL = 404;
+	public static final int SYSZ_INS_LAALG = 405;
+	public static final int SYSZ_INS_LAN = 406;
+	public static final int SYSZ_INS_LANG = 407;
+	public static final int SYSZ_INS_LAO = 408;
+	public static final int SYSZ_INS_LAOG = 409;
+	public static final int SYSZ_INS_LARL = 410;
+	public static final int SYSZ_INS_LAX = 411;
+	public static final int SYSZ_INS_LAXG = 412;
+	public static final int SYSZ_INS_LAY = 413;
+	public static final int SYSZ_INS_LB = 414;
+	public static final int SYSZ_INS_LBH = 415;
+	public static final int SYSZ_INS_LBR = 416;
+	public static final int SYSZ_INS_LCDBR = 417;
+	public static final int SYSZ_INS_LCEBR = 418;
+	public static final int SYSZ_INS_LCGFR = 419;
+	public static final int SYSZ_INS_LCGR = 420;
+	public static final int SYSZ_INS_LCR = 421;
+	public static final int SYSZ_INS_LCXBR = 422;
+	public static final int SYSZ_INS_LD = 423;
+	public static final int SYSZ_INS_LDEB = 424;
+	public static final int SYSZ_INS_LDEBR = 425;
+	public static final int SYSZ_INS_LDGR = 426;
+	public static final int SYSZ_INS_LDR = 427;
+	public static final int SYSZ_INS_LDXBR = 428;
+	public static final int SYSZ_INS_LDY = 429;
+	public static final int SYSZ_INS_LE = 430;
+	public static final int SYSZ_INS_LEDBR = 431;
+	public static final int SYSZ_INS_LER = 432;
+	public static final int SYSZ_INS_LEXBR = 433;
+	public static final int SYSZ_INS_LEY = 434;
+	public static final int SYSZ_INS_LFH = 435;
+	public static final int SYSZ_INS_LG = 436;
+	public static final int SYSZ_INS_LGB = 437;
+	public static final int SYSZ_INS_LGBR = 438;
+	public static final int SYSZ_INS_LGDR = 439;
+	public static final int SYSZ_INS_LGF = 440;
+	public static final int SYSZ_INS_LGFI = 441;
+	public static final int SYSZ_INS_LGFR = 442;
+	public static final int SYSZ_INS_LGFRL = 443;
+	public static final int SYSZ_INS_LGH = 444;
+	public static final int SYSZ_INS_LGHI = 445;
+	public static final int SYSZ_INS_LGHR = 446;
+	public static final int SYSZ_INS_LGHRL = 447;
+	public static final int SYSZ_INS_LGR = 448;
+	public static final int SYSZ_INS_LGRL = 449;
+	public static final int SYSZ_INS_LH = 450;
+	public static final int SYSZ_INS_LHH = 451;
+	public static final int SYSZ_INS_LHI = 452;
+	public static final int SYSZ_INS_LHR = 453;
+	public static final int SYSZ_INS_LHRL = 454;
+	public static final int SYSZ_INS_LHY = 455;
+	public static final int SYSZ_INS_LLC = 456;
+	public static final int SYSZ_INS_LLCH = 457;
+	public static final int SYSZ_INS_LLCR = 458;
+	public static final int SYSZ_INS_LLGC = 459;
+	public static final int SYSZ_INS_LLGCR = 460;
+	public static final int SYSZ_INS_LLGF = 461;
+	public static final int SYSZ_INS_LLGFR = 462;
+	public static final int SYSZ_INS_LLGFRL = 463;
+	public static final int SYSZ_INS_LLGH = 464;
+	public static final int SYSZ_INS_LLGHR = 465;
+	public static final int SYSZ_INS_LLGHRL = 466;
+	public static final int SYSZ_INS_LLH = 467;
+	public static final int SYSZ_INS_LLHH = 468;
+	public static final int SYSZ_INS_LLHR = 469;
+	public static final int SYSZ_INS_LLHRL = 470;
+	public static final int SYSZ_INS_LLIHF = 471;
+	public static final int SYSZ_INS_LLIHH = 472;
+	public static final int SYSZ_INS_LLIHL = 473;
+	public static final int SYSZ_INS_LLILF = 474;
+	public static final int SYSZ_INS_LLILH = 475;
+	public static final int SYSZ_INS_LLILL = 476;
+	public static final int SYSZ_INS_LMG = 477;
+	public static final int SYSZ_INS_LNDBR = 478;
+	public static final int SYSZ_INS_LNEBR = 479;
+	public static final int SYSZ_INS_LNGFR = 480;
+	public static final int SYSZ_INS_LNGR = 481;
+	public static final int SYSZ_INS_LNR = 482;
+	public static final int SYSZ_INS_LNXBR = 483;
+	public static final int SYSZ_INS_LPDBR = 484;
+	public static final int SYSZ_INS_LPEBR = 485;
+	public static final int SYSZ_INS_LPGFR = 486;
+	public static final int SYSZ_INS_LPGR = 487;
+	public static final int SYSZ_INS_LPR = 488;
+	public static final int SYSZ_INS_LPXBR = 489;
+	public static final int SYSZ_INS_LR = 490;
+	public static final int SYSZ_INS_LRL = 491;
+	public static final int SYSZ_INS_LRV = 492;
+	public static final int SYSZ_INS_LRVG = 493;
+	public static final int SYSZ_INS_LRVGR = 494;
+	public static final int SYSZ_INS_LRVR = 495;
+	public static final int SYSZ_INS_LT = 496;
+	public static final int SYSZ_INS_LTDBR = 497;
+	public static final int SYSZ_INS_LTEBR = 498;
+	public static final int SYSZ_INS_LTG = 499;
+	public static final int SYSZ_INS_LTGF = 500;
+	public static final int SYSZ_INS_LTGFR = 501;
+	public static final int SYSZ_INS_LTGR = 502;
+	public static final int SYSZ_INS_LTR = 503;
+	public static final int SYSZ_INS_LTXBR = 504;
+	public static final int SYSZ_INS_LXDB = 505;
+	public static final int SYSZ_INS_LXDBR = 506;
+	public static final int SYSZ_INS_LXEB = 507;
+	public static final int SYSZ_INS_LXEBR = 508;
+	public static final int SYSZ_INS_LXR = 509;
+	public static final int SYSZ_INS_LY = 510;
+	public static final int SYSZ_INS_LZDR = 511;
+	public static final int SYSZ_INS_LZER = 512;
+	public static final int SYSZ_INS_LZXR = 513;
+	public static final int SYSZ_INS_MADB = 514;
+	public static final int SYSZ_INS_MADBR = 515;
+	public static final int SYSZ_INS_MAEB = 516;
+	public static final int SYSZ_INS_MAEBR = 517;
+	public static final int SYSZ_INS_MDB = 518;
+	public static final int SYSZ_INS_MDBR = 519;
+	public static final int SYSZ_INS_MDEB = 520;
+	public static final int SYSZ_INS_MDEBR = 521;
+	public static final int SYSZ_INS_MEEB = 522;
+	public static final int SYSZ_INS_MEEBR = 523;
+	public static final int SYSZ_INS_MGHI = 524;
+	public static final int SYSZ_INS_MH = 525;
+	public static final int SYSZ_INS_MHI = 526;
+	public static final int SYSZ_INS_MHY = 527;
+	public static final int SYSZ_INS_MLG = 528;
+	public static final int SYSZ_INS_MLGR = 529;
+	public static final int SYSZ_INS_MS = 530;
+	public static final int SYSZ_INS_MSDB = 531;
+	public static final int SYSZ_INS_MSDBR = 532;
+	public static final int SYSZ_INS_MSEB = 533;
+	public static final int SYSZ_INS_MSEBR = 534;
+	public static final int SYSZ_INS_MSFI = 535;
+	public static final int SYSZ_INS_MSG = 536;
+	public static final int SYSZ_INS_MSGF = 537;
+	public static final int SYSZ_INS_MSGFI = 538;
+	public static final int SYSZ_INS_MSGFR = 539;
+	public static final int SYSZ_INS_MSGR = 540;
+	public static final int SYSZ_INS_MSR = 541;
+	public static final int SYSZ_INS_MSY = 542;
+	public static final int SYSZ_INS_MVC = 543;
+	public static final int SYSZ_INS_MVGHI = 544;
+	public static final int SYSZ_INS_MVHHI = 545;
+	public static final int SYSZ_INS_MVHI = 546;
+	public static final int SYSZ_INS_MVI = 547;
+	public static final int SYSZ_INS_MVIY = 548;
+	public static final int SYSZ_INS_MVST = 549;
+	public static final int SYSZ_INS_MXBR = 550;
+	public static final int SYSZ_INS_MXDB = 551;
+	public static final int SYSZ_INS_MXDBR = 552;
+	public static final int SYSZ_INS_N = 553;
+	public static final int SYSZ_INS_NC = 554;
+	public static final int SYSZ_INS_NG = 555;
+	public static final int SYSZ_INS_NGR = 556;
+	public static final int SYSZ_INS_NGRK = 557;
+	public static final int SYSZ_INS_NI = 558;
+	public static final int SYSZ_INS_NIHF = 559;
+	public static final int SYSZ_INS_NIHH = 560;
+	public static final int SYSZ_INS_NIHL = 561;
+	public static final int SYSZ_INS_NILF = 562;
+	public static final int SYSZ_INS_NILH = 563;
+	public static final int SYSZ_INS_NILL = 564;
+	public static final int SYSZ_INS_NIY = 565;
+	public static final int SYSZ_INS_NR = 566;
+	public static final int SYSZ_INS_NRK = 567;
+	public static final int SYSZ_INS_NY = 568;
+	public static final int SYSZ_INS_O = 569;
+	public static final int SYSZ_INS_OC = 570;
+	public static final int SYSZ_INS_OG = 571;
+	public static final int SYSZ_INS_OGR = 572;
+	public static final int SYSZ_INS_OGRK = 573;
+	public static final int SYSZ_INS_OI = 574;
+	public static final int SYSZ_INS_OIHF = 575;
+	public static final int SYSZ_INS_OIHH = 576;
+	public static final int SYSZ_INS_OIHL = 577;
+	public static final int SYSZ_INS_OILF = 578;
+	public static final int SYSZ_INS_OILH = 579;
+	public static final int SYSZ_INS_OILL = 580;
+	public static final int SYSZ_INS_OIY = 581;
+	public static final int SYSZ_INS_OR = 582;
+	public static final int SYSZ_INS_ORK = 583;
+	public static final int SYSZ_INS_OY = 584;
+	public static final int SYSZ_INS_PFD = 585;
+	public static final int SYSZ_INS_PFDRL = 586;
+	public static final int SYSZ_INS_RISBG = 587;
+	public static final int SYSZ_INS_RISBHG = 588;
+	public static final int SYSZ_INS_RISBLG = 589;
+	public static final int SYSZ_INS_RLL = 590;
+	public static final int SYSZ_INS_RLLG = 591;
+	public static final int SYSZ_INS_RNSBG = 592;
+	public static final int SYSZ_INS_ROSBG = 593;
+	public static final int SYSZ_INS_RXSBG = 594;
+	public static final int SYSZ_INS_S = 595;
+	public static final int SYSZ_INS_SDB = 596;
+	public static final int SYSZ_INS_SDBR = 597;
+	public static final int SYSZ_INS_SEB = 598;
+	public static final int SYSZ_INS_SEBR = 599;
+	public static final int SYSZ_INS_SG = 600;
+	public static final int SYSZ_INS_SGF = 601;
+	public static final int SYSZ_INS_SGFR = 602;
+	public static final int SYSZ_INS_SGR = 603;
+	public static final int SYSZ_INS_SGRK = 604;
+	public static final int SYSZ_INS_SH = 605;
+	public static final int SYSZ_INS_SHY = 606;
+	public static final int SYSZ_INS_SL = 607;
+	public static final int SYSZ_INS_SLB = 608;
+	public static final int SYSZ_INS_SLBG = 609;
+	public static final int SYSZ_INS_SLBR = 610;
+	public static final int SYSZ_INS_SLFI = 611;
+	public static final int SYSZ_INS_SLG = 612;
+	public static final int SYSZ_INS_SLBGR = 613;
+	public static final int SYSZ_INS_SLGF = 614;
+	public static final int SYSZ_INS_SLGFI = 615;
+	public static final int SYSZ_INS_SLGFR = 616;
+	public static final int SYSZ_INS_SLGR = 617;
+	public static final int SYSZ_INS_SLGRK = 618;
+	public static final int SYSZ_INS_SLL = 619;
+	public static final int SYSZ_INS_SLLG = 620;
+	public static final int SYSZ_INS_SLLK = 621;
+	public static final int SYSZ_INS_SLR = 622;
+	public static final int SYSZ_INS_SLRK = 623;
+	public static final int SYSZ_INS_SLY = 624;
+	public static final int SYSZ_INS_SQDB = 625;
+	public static final int SYSZ_INS_SQDBR = 626;
+	public static final int SYSZ_INS_SQEB = 627;
+	public static final int SYSZ_INS_SQEBR = 628;
+	public static final int SYSZ_INS_SQXBR = 629;
+	public static final int SYSZ_INS_SR = 630;
+	public static final int SYSZ_INS_SRA = 631;
+	public static final int SYSZ_INS_SRAG = 632;
+	public static final int SYSZ_INS_SRAK = 633;
+	public static final int SYSZ_INS_SRK = 634;
+	public static final int SYSZ_INS_SRL = 635;
+	public static final int SYSZ_INS_SRLG = 636;
+	public static final int SYSZ_INS_SRLK = 637;
+	public static final int SYSZ_INS_SRST = 638;
+	public static final int SYSZ_INS_ST = 639;
+	public static final int SYSZ_INS_STC = 640;
+	public static final int SYSZ_INS_STCH = 641;
+	public static final int SYSZ_INS_STCY = 642;
+	public static final int SYSZ_INS_STD = 643;
+	public static final int SYSZ_INS_STDY = 644;
+	public static final int SYSZ_INS_STE = 645;
+	public static final int SYSZ_INS_STEY = 646;
+	public static final int SYSZ_INS_STFH = 647;
+	public static final int SYSZ_INS_STG = 648;
+	public static final int SYSZ_INS_STGRL = 649;
+	public static final int SYSZ_INS_STH = 650;
+	public static final int SYSZ_INS_STHH = 651;
+	public static final int SYSZ_INS_STHRL = 652;
+	public static final int SYSZ_INS_STHY = 653;
+	public static final int SYSZ_INS_STMG = 654;
+	public static final int SYSZ_INS_STRL = 655;
+	public static final int SYSZ_INS_STRV = 656;
+	public static final int SYSZ_INS_STRVG = 657;
+	public static final int SYSZ_INS_STY = 658;
+	public static final int SYSZ_INS_SXBR = 659;
+	public static final int SYSZ_INS_SY = 660;
+	public static final int SYSZ_INS_TM = 661;
+	public static final int SYSZ_INS_TMHH = 662;
+	public static final int SYSZ_INS_TMHL = 663;
+	public static final int SYSZ_INS_TMLH = 664;
+	public static final int SYSZ_INS_TMLL = 665;
+	public static final int SYSZ_INS_TMY = 666;
+	public static final int SYSZ_INS_X = 667;
+	public static final int SYSZ_INS_XC = 668;
+	public static final int SYSZ_INS_XG = 669;
+	public static final int SYSZ_INS_XGR = 670;
+	public static final int SYSZ_INS_XGRK = 671;
+	public static final int SYSZ_INS_XI = 672;
+	public static final int SYSZ_INS_XIHF = 673;
+	public static final int SYSZ_INS_XILF = 674;
+	public static final int SYSZ_INS_XIY = 675;
+	public static final int SYSZ_INS_XR = 676;
+	public static final int SYSZ_INS_XRK = 677;
+	public static final int SYSZ_INS_XY = 678;
+	public static final int SYSZ_INS_MAX = 679;
+
+	// Group of SystemZ instructions
+
+	public static final int SYSZ_GRP_INVALID = 0;
+	public static final int SYSZ_GRP_FEATUREDISTINCTOPS = 1;
+	public static final int SYSZ_GRP_FEATUREFPEXTENSION = 2;
+	public static final int SYSZ_GRP_FEATUREHIGHWORD = 3;
+	public static final int SYSZ_GRP_FEATUREINTERLOCKEDACCESS1 = 4;
+	public static final int SYSZ_GRP_FEATURELOADSTOREONCOND = 5;
+	public static final int SYSZ_GRP_JUMP = 6;
+	public static final int SYSZ_GRP_MAX = 7;
+}
\ No newline at end of file
diff --git a/bindings/java/run.sh b/bindings/java/run.sh
index 755da2d..954af97 100755
--- a/bindings/java/run.sh
+++ b/bindings/java/run.sh
@@ -17,5 +17,7 @@
   "mips") java -classpath ${JNA}:. TestMips ;;
   "x86") java -classpath ${JNA}:. TestX86 ;;
   "ppc") java -classpath ${JNA}:. TestPpc ;;
-  * ) echo "Usage: ./run.sh [arm|arm64|mips|x86|ppc]"; exit 1;;
+  "sparc") java -classpath ${JNA}:. TestSparc ;;
+  "systemz") java -classpath ${JNA}:. TestSystemz ;;
+  * ) echo "Usage: ./run.sh [arm|arm64|mips|ppc|sparc|systemz|x86]"; exit 1;;
 esac
diff --git a/bindings/python/capstone/__init__.py b/bindings/python/capstone/__init__.py
index e7378a7..2ce3eb9 100644
--- a/bindings/python/capstone/__init__.py
+++ b/bindings/python/capstone/__init__.py
@@ -3,7 +3,7 @@
 _python2 = sys.version_info.major < 3
 if _python2:
     range = xrange
-from capstone import arm, arm64, mips, x86, ppc
+from capstone import arm, arm64, mips, ppc, sparc, systemz, x86
 
 __all__ = [
     'Cs',
@@ -23,6 +23,8 @@
     'CS_ARCH_MIPS',
     'CS_ARCH_X86',
     'CS_ARCH_PPC',
+    'CS_ARCH_SPARC',
+    'CS_ARCH_SYSZ',
     'CS_ARCH_ALL',
 
     'CS_MODE_LITTLE_ENDIAN',
@@ -34,6 +36,7 @@
     'CS_MODE_THUMB',
     'CS_MODE_MICRO',
     'CS_MODE_N64',
+    'CS_MODE_V9',
 
     'CS_OPT_SYNTAX',
     'CS_OPT_SYNTAX_DEFAULT',
@@ -57,8 +60,11 @@
     'CS_ERR_VERSION',
     'CS_ERR_MEMSETUP',
     'CS_ERR_DIET',
+    'CS_ERR_SKIPDATA',
 
     'CS_SUPPORT_DIET',
+    'CS_SUPPORT_X86_REDUCE',
+    'CS_SKIPDATA_CALLBACK',
 
     'CsError',
 ]
@@ -67,7 +73,7 @@
 
 # API version
 CS_API_MAJOR = 2
-CS_API_MINOR = 1
+CS_API_MINOR = 2
 
 # architectures
 CS_ARCH_ARM = 0
@@ -75,49 +81,59 @@
 CS_ARCH_MIPS = 2
 CS_ARCH_X86 = 3
 CS_ARCH_PPC = 4
+CS_ARCH_SPARC = 5
+CS_ARCH_SYSZ = 6
+CS_ARCH_MAX = 7
 CS_ARCH_ALL = 0xFFFF
 
 # disasm mode
-CS_MODE_LITTLE_ENDIAN = 0  # little-endian mode (default mode)
-CS_MODE_ARM = 0  # ARM mode
-CS_MODE_16 = (1 << 1)  # 16-bit mode (for X86, Mips)
-CS_MODE_32 = (1 << 2)  # 32-bit mode (for X86, Mips)
-CS_MODE_64 = (1 << 3)  # 64-bit mode (for X86, Mips)
-CS_MODE_THUMB = (1 << 4)  # ARM's Thumb mode, including Thumb-2
-CS_MODE_MICRO = (1 << 4)  # MicroMips mode (MIPS architecture)
-CS_MODE_N64 = (1 << 5)  # Nintendo-64 mode (MIPS architecture)
-CS_MODE_BIG_ENDIAN = (1 << 31)  # big-endian mode
+CS_MODE_LITTLE_ENDIAN = 0      # little-endian mode (default mode)
+CS_MODE_ARM = 0                # ARM mode
+CS_MODE_16 = (1 << 1)          # 16-bit mode (for X86, Mips)
+CS_MODE_32 = (1 << 2)          # 32-bit mode (for X86, Mips)
+CS_MODE_64 = (1 << 3)          # 64-bit mode (for X86, Mips)
+CS_MODE_THUMB = (1 << 4)       # ARM's Thumb mode, including Thumb-2
+CS_MODE_MICRO = (1 << 4)       # MicroMips mode (MIPS architecture)
+CS_MODE_N64 = (1 << 5)         # Nintendo-64 mode (MIPS architecture)
+CS_MODE_V9 = (1 << 4)          # Nintendo-64 mode (MIPS architecture)
+CS_MODE_BIG_ENDIAN = (1 << 31) # big-endian mode
 
 # Capstone option type
-CS_OPT_SYNTAX = 1  # Intel X86 asm syntax (CS_ARCH_X86 arch)
-CS_OPT_DETAIL = 2  # Break down instruction structure into details
-CS_OPT_MODE = 3  # Change engine's mode at run-time
+CS_OPT_SYNTAX = 1    # Intel X86 asm syntax (CS_ARCH_X86 arch)
+CS_OPT_DETAIL = 2    # Break down instruction structure into details
+CS_OPT_MODE = 3      # Change engine's mode at run-time
+CS_OPT_MEM = 4       # Change engine's mode at run-time
+CS_OPT_SKIPDATA = 5  # Skip data when disassembling
+CS_OPT_SKIPDATA_SETUP = 6      # Setup user-defined function for SKIPDATA option
 
 # Capstone option value
-CS_OPT_OFF = 0  # Turn OFF an option - default option of CS_OPT_DETAIL
-CS_OPT_ON = 3  # Turn ON an option (CS_OPT_DETAIL)
+CS_OPT_OFF = 0             # Turn OFF an option - default option of CS_OPT_DETAIL
+CS_OPT_ON = 3              # Turn ON an option (CS_OPT_DETAIL)
 
 # Capstone syntax value
-CS_OPT_SYNTAX_DEFAULT = 0  # Default assembly syntax of all platforms (CS_OPT_SYNTAX)
-CS_OPT_SYNTAX_INTEL = 1  # Intel X86 asm syntax - default syntax on X86 (CS_OPT_SYNTAX, CS_ARCH_X86)
-CS_OPT_SYNTAX_ATT = 2  # ATT asm syntax (CS_OPT_SYNTAX, CS_ARCH_X86)
-CS_OPT_SYNTAX_NOREGNAME = 3  # Asm syntax prints register name with only number - (CS_OPT_SYNTAX, CS_ARCH_PPC)
+CS_OPT_SYNTAX_DEFAULT = 0    # Default assembly syntax of all platforms (CS_OPT_SYNTAX)
+CS_OPT_SYNTAX_INTEL = 1    # Intel X86 asm syntax - default syntax on X86 (CS_OPT_SYNTAX, CS_ARCH_X86)
+CS_OPT_SYNTAX_ATT = 2      # ATT asm syntax (CS_OPT_SYNTAX, CS_ARCH_X86)
+CS_OPT_SYNTAX_NOREGNAME = 3   # Asm syntax prints register name with only number - (CS_OPT_SYNTAX, CS_ARCH_PPC, CS_ARCH_ARM)
 
 # Capstone error type
-CS_ERR_OK = 0  # No error: everything was fine
-CS_ERR_MEM = 1  # Out-Of-Memory error: cs_open(), cs_disasm_ex()
-CS_ERR_ARCH = 2  # Unsupported architecture: cs_open()
+CS_ERR_OK = 0      # No error: everything was fine
+CS_ERR_MEM = 1     # Out-Of-Memory error: cs_open(), cs_disasm_ex()
+CS_ERR_ARCH = 2    # Unsupported architecture: cs_open()
 CS_ERR_HANDLE = 3  # Invalid handle: cs_op_count(), cs_op_index()
-CS_ERR_CSH = 4  # Invalid csh argument: cs_close(), cs_errno(), cs_option()
-CS_ERR_MODE = 5  # Invalid/unsupported mode: cs_open()
+CS_ERR_CSH = 4     # Invalid csh argument: cs_close(), cs_errno(), cs_option()
+CS_ERR_MODE = 5    # Invalid/unsupported mode: cs_open()
 CS_ERR_OPTION = 6  # Invalid/unsupported option: cs_option()
 CS_ERR_DETAIL = 7  # Invalid/unsupported option: cs_option()
 CS_ERR_MEMSETUP = 8
-CS_ERR_VERSION = 9  # Unsupported version (bindings)
-CS_ERR_DIET = 10  # Information irrelevant in diet engine
+CS_ERR_VERSION = 9 # Unsupported version (bindings)
+CS_ERR_DIET = 10   # Information irrelevant in diet engine
+CS_ERR_SKIPDATA = 11 # Access irrelevant data for "data" instruction in SKIPDATA mode
 
 # query id for cs_support()
 CS_SUPPORT_DIET = CS_ARCH_ALL + 1
+CS_SUPPORT_X86_REDUCE = CS_ARCH_ALL+2
+
 
 import ctypes, ctypes.util, sys
 from os.path import split, join, dirname
@@ -175,6 +191,8 @@
         ('mips', mips.CsMips),
         ('x86', x86.CsX86),
         ('ppc', ppc.CsPpc),
+        ('sparc', sparc.CsSparc),
+        ('sysz', systemz.CsSysz),
     )
 
 class _cs_detail(ctypes.Structure):
@@ -199,6 +217,17 @@
         ('detail', ctypes.POINTER(_cs_detail)),
     )
 
+# callback for SKIPDATA option
+CS_SKIPDATA_CALLBACK = ctypes.CFUNCTYPE(ctypes.c_size_t, ctypes.c_size_t, ctypes.c_void_p)
+
+class _cs_opt_skipdata(ctypes.Structure):
+    _fields_ = (
+        ('mnemonic', ctypes.c_char_p),
+        ('callback', CS_SKIPDATA_CALLBACK),
+        ('user_data', ctypes.c_void_p),
+    )
+
+
 # setup all the function prototype
 def _setup_prototype(lib, fname, restype, *argtypes):
     getattr(lib, fname).restype = restype
@@ -214,7 +243,7 @@
 _setup_prototype(_cs, "cs_op_count", ctypes.c_int, ctypes.c_size_t, ctypes.POINTER(_cs_insn), ctypes.c_uint)
 _setup_prototype(_cs, "cs_op_index", ctypes.c_int, ctypes.c_size_t, ctypes.POINTER(_cs_insn), ctypes.c_uint, ctypes.c_uint)
 _setup_prototype(_cs, "cs_errno", ctypes.c_int, ctypes.c_size_t)
-_setup_prototype(_cs, "cs_option", ctypes.c_int, ctypes.c_size_t, ctypes.c_int, ctypes.c_size_t)
+_setup_prototype(_cs, "cs_option", ctypes.c_int, ctypes.c_size_t, ctypes.c_int, ctypes.c_void_p)
 _setup_prototype(_cs, "cs_version", ctypes.c_int, ctypes.POINTER(ctypes.c_int), ctypes.POINTER(ctypes.c_int))
 _setup_prototype(_cs, "cs_support", ctypes.c_bool, ctypes.c_int)
 _setup_prototype(_cs, "cs_strerror", ctypes.c_char_p, ctypes.c_int)
@@ -376,6 +405,9 @@
     # return list of all implicit registers being read.
     @property
     def regs_read(self):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide @regs_read.
             raise CsError(CS_ERR_DIET)
@@ -389,6 +421,9 @@
     # return list of all implicit registers being modified
     @property
     def regs_write(self):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide @regs_write
             raise CsError(CS_ERR_DIET)
@@ -402,6 +437,9 @@
     # return list of semantic groups this instruction belongs to.
     @property
     def groups(self):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide @groups
             raise CsError(CS_ERR_DIET)
@@ -430,6 +468,11 @@
         elif arch == CS_ARCH_PPC:
             (self.bc, self.bh, self.update_cr0, self.operands) = \
                 ppc.get_arch_info(detail.arch.ppc)
+        elif arch == CS_ARCH_SPARC:
+            (self.cc, self.hint, self.operands) = sparc.get_arch_info(detail.arch.sparc)
+        elif arch == CS_ARCH_SYSZ:
+            (self.cc, self.operands) = systemz.get_arch_info(detail.arch.sysz)
+
 
     def __getattr__(self, name):
         if not self._cs._detail:
@@ -451,6 +494,9 @@
 
     # get the register name, given the register ID
     def reg_name(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide register name
             raise CsError(CS_ERR_DIET)
@@ -467,6 +513,9 @@
 
     # verify if this insn belong to group with id as @group_id
     def group(self, group_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide group information
             raise CsError(CS_ERR_DIET)
@@ -475,6 +524,9 @@
 
     # verify if this instruction implicitly read register @reg_id
     def reg_read(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide regs_read information
             raise CsError(CS_ERR_DIET)
@@ -483,6 +535,9 @@
 
     # verify if this instruction implicitly modified register @reg_id
     def reg_write(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         if self._cs._diet:
             # Diet engine cannot provide regs_write information
             raise CsError(CS_ERR_DIET)
@@ -491,6 +546,9 @@
 
     # return number of operands having same operand type @op_type
     def op_count(self, op_type):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         c = 0
         for op in self.operands:
             if op.type == op_type:
@@ -499,6 +557,9 @@
 
     # get the operand at position @position of all operands having the same type @op_type
     def op_find(self, op_type, position):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
         c = 0
         for op in self.operands:
             if op.type == op_type:
@@ -538,6 +599,12 @@
 
         self._detail = False  # by default, do not produce instruction details
         self._diet = cs_support(CS_SUPPORT_DIET)
+        self._x86reduce = cs_support(CS_SUPPORT_X86_REDUCE)
+        
+        # default mnemonic for SKIPDATA
+        self._skipdata_mnem = ".byte"
+        self._skipdata = False
+
 
 
     # destructor to be called automatically when object is destroyed.
@@ -558,12 +625,53 @@
         return self._diet
 
 
+    # is this engine compiled with X86-reduce option?
+    @property
+    def x86_reduce(self):
+        return self._x86reduce
+
+
     # return assembly syntax.
     @property
     def syntax(self):
         return self._syntax
 
 
+    # return current skipdata status
+    @property
+    def skipdata(self):
+        return self._skipdata
+
+
+    # setter: modify skipdata status
+    @syntax.setter
+    def skipdata(self, opt):
+        if opt == False:
+            status = _cs.cs_option(self.csh, CS_OPT_SKIPDATA, CS_OPT_OFF)
+        else:
+            status = _cs.cs_option(self.csh, CS_OPT_SKIPDATA, CS_OPT_ON)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+
+        # save this option
+        self._skipdata = opt
+
+
+    # setter: modify "data" instruction's mnemonic for SKIPDATA
+    @syntax.setter
+    def skipdata_setup(self, opt):
+        _skipdata_opt = _cs_opt_skipdata()
+        _mnem, _cb, _ud = opt
+        _skipdata_opt.mnemonic = _mnem.encode()
+        _skipdata_opt.callback = ctypes.cast(_cb, CS_SKIPDATA_CALLBACK)
+        _skipdata_opt.user_data = ctypes.cast(_ud, ctypes.c_void_p)
+        status = _cs.cs_option(self.csh, CS_OPT_SKIPDATA_SETUP, ctypes.cast(ctypes.byref(_skipdata_opt), ctypes.c_void_p))
+        if status != CS_ERR_OK:
+            raise CsError(status)
+
+        self._skipdata_opt = _skipdata_opt
+
+
     # setter: modify assembly syntax.
     @syntax.setter
     def syntax(self, style):
@@ -674,7 +782,8 @@
         diet = "standard"
 
     archs = { "arm": CS_ARCH_ARM, "arm64": CS_ARCH_ARM64, \
-        "mips": CS_ARCH_MIPS, "ppc": CS_ARCH_PPC, "x86": CS_ARCH_X86 }
+        "mips": CS_ARCH_MIPS, "ppc": CS_ARCH_PPC, "sparc": CS_ARCH_SPARC, \
+        "sysz": CS_ARCH_SYSZ }
 
     all_archs = ""
     keys = archs.keys()
@@ -683,6 +792,11 @@
         if cs_support(archs[k]):
             all_archs += "-%s" % k
 
+    if cs_support(CS_ARCH_X86):
+        all_archs += "-x86"
+        if cs_support(CS_SUPPORT_X86_REDUCE):
+            all_archs += "_reduce"
+
     (major, minor, _combined) = cs_version()
 
     return "python-%s%s-c%u.%u-b%u.%u" % (diet, all_archs, major, minor, CS_API_MAJOR, CS_API_MINOR)
diff --git a/bindings/python/capstone/capstone.py b/bindings/python/capstone/capstone.py
new file mode 100644
index 0000000..973e0e1
--- /dev/null
+++ b/bindings/python/capstone/capstone.py
@@ -0,0 +1,793 @@
+# Capstone Python bindings, by Nguyen Anh Quynnh <aquynh@gmail.com>
+
+import arm, arm64, mips, ppc, sparc, systemz, x86
+
+__all__ = [
+    'Cs',
+    'CsInsn',
+
+    'cs_disasm_quick',
+    'cs_version',
+    'cs_support',
+    'version_bind',
+    'debug',
+
+    'CS_API_MAJOR',
+    'CS_API_MINOR',
+
+    'CS_ARCH_ARM',
+    'CS_ARCH_ARM64',
+    'CS_ARCH_MIPS',
+    'CS_ARCH_X86',
+    'CS_ARCH_PPC',
+    'CS_ARCH_SPARC',
+    'CS_ARCH_SYSZ',
+    'CS_ARCH_ALL',
+
+    'CS_MODE_LITTLE_ENDIAN',
+    'CS_MODE_BIG_ENDIAN',
+    'CS_MODE_16',
+    'CS_MODE_32',
+    'CS_MODE_64',
+    'CS_MODE_ARM',
+    'CS_MODE_THUMB',
+    'CS_MODE_MICRO',
+    'CS_MODE_N64',
+
+    'CS_OPT_SYNTAX',
+    'CS_OPT_SYNTAX_DEFAULT',
+    'CS_OPT_SYNTAX_INTEL',
+    'CS_OPT_SYNTAX_ATT',
+    'CS_OPT_SYNTAX_NOREGNAME',
+
+    'CS_OPT_DETAIL',
+    'CS_OPT_MODE',
+    'CS_OPT_ON',
+    'CS_OPT_OFF',
+
+    'CS_ERR_OK',
+    'CS_ERR_MEM',
+    'CS_ERR_ARCH',
+    'CS_ERR_HANDLE',
+    'CS_ERR_CSH',
+    'CS_ERR_MODE',
+    'CS_ERR_OPTION',
+    'CS_ERR_DETAIL',
+    'CS_ERR_VERSION',
+    'CS_ERR_MEMSETUP',
+    'CS_ERR_DIET',
+    'CS_ERR_SKIPDATA',
+
+    'CS_SUPPORT_DIET',
+    'CS_SUPPORT_X86_REDUCE',
+
+    'CS_SKIPDATA_CALLBACK'
+]
+
+# Capstone C interface
+
+# API version
+CS_API_MAJOR = 2
+CS_API_MINOR = 2
+
+# architectures
+CS_ARCH_ARM = 0
+CS_ARCH_ARM64 = 1
+CS_ARCH_MIPS = 2
+CS_ARCH_X86 = 3
+CS_ARCH_PPC = 4
+CS_ARCH_SPARC = 5
+CS_ARCH_SYSZ = 6
+CS_ARCH_MAX = 7
+CS_ARCH_ALL = 0xFFFF
+
+# disasm mode
+CS_MODE_LITTLE_ENDIAN = 0      # little-endian mode (default mode)
+CS_MODE_ARM = 0                # ARM mode
+CS_MODE_16 = (1 << 1)          # 16-bit mode (for X86, Mips)
+CS_MODE_32 = (1 << 2)          # 32-bit mode (for X86, Mips)
+CS_MODE_64 = (1 << 3)          # 64-bit mode (for X86, Mips)
+CS_MODE_THUMB = (1 << 4)       # ARM's Thumb mode, including Thumb-2
+CS_MODE_MICRO = (1 << 4)       # MicroMips mode (MIPS architecture)
+CS_MODE_N64 = (1 << 5)         # Nintendo-64 mode (MIPS architecture)
+CS_MODE_V9 = (1 << 4)          # Nintendo-64 mode (MIPS architecture)
+CS_MODE_BIG_ENDIAN = (1 << 31) # big-endian mode
+
+# Capstone option type
+CS_OPT_SYNTAX = 1    # Intel X86 asm syntax (CS_ARCH_X86 arch)
+CS_OPT_DETAIL = 2    # Break down instruction structure into details
+CS_OPT_MODE = 3      # Change engine's mode at run-time
+CS_OPT_MEM = 4      # Change engine's mode at run-time
+CS_OPT_SKIPDATA = 5  # Skip data when disassembling
+CS_OPT_SKIPDATA_SETUP = 6      # Setup user-defined function for SKIPDATA option
+
+# Capstone option value
+CS_OPT_OFF = 0             # Turn OFF an option - default option of CS_OPT_DETAIL
+CS_OPT_ON = 3              # Turn ON an option (CS_OPT_DETAIL)
+
+# Capstone syntax value
+CS_OPT_SYNTAX_DEFAULT = 0    # Default assembly syntax of all platforms (CS_OPT_SYNTAX)
+CS_OPT_SYNTAX_INTEL = 1    # Intel X86 asm syntax - default syntax on X86 (CS_OPT_SYNTAX, CS_ARCH_X86)
+CS_OPT_SYNTAX_ATT = 2      # ATT asm syntax (CS_OPT_SYNTAX, CS_ARCH_X86)
+CS_OPT_SYNTAX_NOREGNAME = 3   # Asm syntax prints register name with only number - (CS_OPT_SYNTAX, CS_ARCH_PPC)
+
+# Capstone error type
+CS_ERR_OK = 0      # No error: everything was fine
+CS_ERR_MEM = 1     # Out-Of-Memory error: cs_open(), cs_disasm_ex()
+CS_ERR_ARCH = 2    # Unsupported architecture: cs_open()
+CS_ERR_HANDLE = 3  # Invalid handle: cs_op_count(), cs_op_index()
+CS_ERR_CSH = 4     # Invalid csh argument: cs_close(), cs_errno(), cs_option()
+CS_ERR_MODE = 5    # Invalid/unsupported mode: cs_open()
+CS_ERR_OPTION = 6  # Invalid/unsupported option: cs_option()
+CS_ERR_DETAIL = 7  # Invalid/unsupported option: cs_option()
+CS_ERR_MEMSETUP = 8
+CS_ERR_VERSION = 9 # Unsupported version (bindings)
+CS_ERR_DIET = 10 # Information irrelevant in diet engine
+CS_ERR_SKIPDATA = 11 # Access irrelevant data for "data" instruction in SKIPDATA mode
+
+# query id for cs_support()
+CS_SUPPORT_DIET = CS_ARCH_ALL+1
+CS_SUPPORT_X86_REDUCE = CS_ARCH_ALL+2
+
+import ctypes, ctypes.util, sys
+from os.path import split, join, dirname
+import distutils.sysconfig
+
+
+import inspect
+if not hasattr(sys.modules[__name__], '__file__'):
+    __file__ = inspect.getfile(inspect.currentframe())
+
+_lib_path = split(__file__)[0]
+_all_libs = ['libcapstone.dll', 'libcapstone.so', 'libcapstone.dylib']
+_found = False
+
+for _lib in _all_libs:
+    try:
+        _lib_file = join(_lib_path, _lib)
+        # print "Trying to load:", _lib_file
+        _cs = ctypes.cdll.LoadLibrary(_lib_file)
+        _found = True
+        break
+    except OSError:
+        pass
+if _found == False:
+    # try loading from default paths
+    for _lib in _all_libs:
+        try:
+            _cs = ctypes.cdll.LoadLibrary(_lib)
+            _found = True
+            break
+        except OSError:
+            pass
+
+if _found == False:
+    # last try: loading from python lib directory
+    _lib_path = distutils.sysconfig.get_python_lib()
+    for _lib in _all_libs:
+        try:
+            _lib_file = join(_lib_path, 'capstone', _lib)
+            # print "Trying to load:", _lib_file
+            _cs = ctypes.cdll.LoadLibrary(_lib_file)
+            _found = True
+            break
+        except OSError:
+            pass
+    if _found == False:
+        raise ImportError("ERROR: fail to load the dynamic library.")
+
+
+# low-level structure for C code
+class _cs_arch(ctypes.Union):
+    _fields_ = (
+        ('arm64', arm64.CsArm64),
+        ('arm', arm.CsArm),
+        ('mips', mips.CsMips),
+        ('x86', x86.CsX86),
+        ('ppc', ppc.CsPpc),
+        ('sparc', sparc.CsSparc),
+        ('sysz', systemz.CsSysz),
+    )
+
+class _cs_detail(ctypes.Structure):
+    _fields_ = (
+        ('regs_read', ctypes.c_ubyte * 12),
+        ('regs_read_count', ctypes.c_ubyte),
+        ('regs_write', ctypes.c_ubyte * 20),
+        ('regs_write_count', ctypes.c_ubyte),
+        ('groups', ctypes.c_ubyte * 8),
+        ('groups_count', ctypes.c_ubyte),
+        ('arch', _cs_arch),
+    )
+
+class _cs_insn(ctypes.Structure):
+    _fields_ = (
+        ('id', ctypes.c_uint),
+        ('address', ctypes.c_uint64),
+        ('size', ctypes.c_uint16),
+        ('bytes', ctypes.c_ubyte * 16),
+        ('mnemonic', ctypes.c_char * 32),
+        ('op_str', ctypes.c_char * 160),
+        ('detail', ctypes.POINTER(_cs_detail)),
+    )
+
+# callback for SKIPDATA option
+CS_SKIPDATA_CALLBACK = ctypes.CFUNCTYPE(ctypes.c_size_t, ctypes.c_size_t, ctypes.c_void_p)
+
+class _cs_opt_skipdata(ctypes.Structure):
+    _fields_ = (
+        ('mnemonic', ctypes.c_char_p),
+        ('callback', CS_SKIPDATA_CALLBACK),
+        ('user_data', ctypes.c_void_p),
+    )
+
+# setup all the function prototype
+def _setup_prototype(lib, fname, restype, *argtypes):
+    getattr(lib, fname).restype = restype
+    getattr(lib, fname).argtypes = argtypes
+
+_setup_prototype(_cs, "cs_open", ctypes.c_int, ctypes.c_uint, ctypes.c_uint, ctypes.POINTER(ctypes.c_size_t))
+_setup_prototype(_cs, "cs_disasm_ex", ctypes.c_size_t, ctypes.c_size_t, ctypes.POINTER(ctypes.c_char), ctypes.c_size_t, \
+        ctypes.c_uint64, ctypes.c_size_t, ctypes.POINTER(ctypes.POINTER(_cs_insn)))
+_setup_prototype(_cs, "cs_free", None, ctypes.c_void_p, ctypes.c_size_t)
+_setup_prototype(_cs, "cs_close", ctypes.c_int, ctypes.POINTER(ctypes.c_size_t))
+_setup_prototype(_cs, "cs_reg_name", ctypes.c_char_p, ctypes.c_size_t, ctypes.c_uint)
+_setup_prototype(_cs, "cs_insn_name", ctypes.c_char_p, ctypes.c_size_t, ctypes.c_uint)
+_setup_prototype(_cs, "cs_op_count", ctypes.c_int, ctypes.c_size_t, ctypes.POINTER(_cs_insn), ctypes.c_uint)
+_setup_prototype(_cs, "cs_op_index", ctypes.c_int, ctypes.c_size_t, ctypes.POINTER(_cs_insn), ctypes.c_uint, ctypes.c_uint)
+_setup_prototype(_cs, "cs_errno", ctypes.c_int, ctypes.c_size_t)
+_setup_prototype(_cs, "cs_option", ctypes.c_int, ctypes.c_size_t, ctypes.c_int, ctypes.c_void_p)
+_setup_prototype(_cs, "cs_version", ctypes.c_int, ctypes.POINTER(ctypes.c_int), ctypes.POINTER(ctypes.c_int))
+_setup_prototype(_cs, "cs_support", ctypes.c_bool, ctypes.c_int)
+_setup_prototype(_cs, "cs_strerror", ctypes.c_char_p, ctypes.c_int)
+
+
+# access to error code via @errno of CsError
+class CsError(Exception):
+    def __init__(self, errno):
+        self.errno = errno
+
+    def __str__(self):
+        return _cs.cs_strerror(self.errno)
+
+
+# return the core's version
+def cs_version():
+    major = ctypes.c_int()
+    minor = ctypes.c_int()
+    combined = _cs.cs_version(ctypes.byref(major), ctypes.byref(minor))
+    return (major.value, minor.value, combined)
+
+
+# return the binding's version
+def version_bind():
+    return (CS_API_MAJOR, CS_API_MINOR, (CS_API_MAJOR << 8) + CS_API_MINOR)
+
+
+def cs_support(query):
+    return _cs.cs_support(query)
+
+
+# dummy class resembling Cs class, just for cs_disasm_quick()
+# this class only need to be referenced to via 2 fields: @csh & @arch
+class _dummy_cs(object):
+    def __init__(self, csh, arch):
+        self.csh = csh
+        self.arch = arch
+
+
+# Quick & dirty Python function to disasm raw binary code
+# This function return CsInsn objects
+# NOTE: you might want to use more efficient Cs class & its methods.
+def cs_disasm_quick(arch, mode, code, offset, count = 0):
+    # verify version compatibility with the core before doing anything
+    (major, minor, _combined) = cs_version()
+    if major != CS_API_MAJOR or minor != CS_API_MINOR:
+        # our binding version is different from the core's API version
+        raise CsError(CS_ERR_VERSION)
+
+    csh = ctypes.c_size_t()
+    status = _cs.cs_open(arch, mode, ctypes.byref(csh))
+    if status != CS_ERR_OK:
+        raise CsError(status)
+
+    all_insn = ctypes.POINTER(_cs_insn)()
+    res = _cs.cs_disasm_ex(csh, code, len(code), offset, count, ctypes.byref(all_insn))
+    if res > 0:
+        for i in xrange(res):
+            yield CsInsn(_dummy_cs(csh, arch), all_insn[i])
+
+        _cs.cs_free(all_insn, res)
+    else:
+        status = _cs.cs_errno(csh)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+        return
+        yield
+
+    status = _cs.cs_close(ctypes.byref(csh))
+    if status != CS_ERR_OK:
+        raise CsError(status)
+
+
+# Another quick, but lighter function to disasm raw binary code.
+# This function is faster than cs_disasm_quick() around 20% because
+# cs_disasm_lite() only return tuples of (address, size, mnemonic, op_str),
+# rather than CsInsn objects.
+# NOTE: you might want to use more efficient Cs class & its methods.
+def cs_disasm_lite(arch, mode, code, offset, count = 0):
+    # verify version compatibility with the core before doing anything
+    (major, minor, _combined) = cs_version()
+    if major != CS_API_MAJOR or minor != CS_API_MINOR:
+        # our binding version is different from the core's API version
+        raise CsError(CS_ERR_VERSION)
+
+    if cs_support(CS_SUPPORT_DIET):
+        # Diet engine cannot provide @mnemonic & @op_str
+        raise CsError(CS_ERR_DIET)
+
+    csh = ctypes.c_size_t()
+    status = _cs.cs_open(arch, mode, ctypes.byref(csh))
+    if status != CS_ERR_OK:
+        raise CsError(status)
+
+    all_insn = ctypes.POINTER(_cs_insn)()
+    res = _cs.cs_disasm_ex(csh, code, len(code), offset, count, ctypes.byref(all_insn))
+    if res > 0:
+        for i in xrange(res):
+            insn = all_insn[i]
+            yield (insn.address, insn.size, insn.mnemonic, insn.op_str)
+
+        _cs.cs_free(all_insn, res)
+    else:
+        status = _cs.cs_errno(csh)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+        return
+        yield
+
+    status = _cs.cs_close(ctypes.byref(csh))
+    if status != CS_ERR_OK:
+        raise CsError(status)
+
+
+# Python-style class to disasm code
+class CsInsn(object):
+    def __init__(self, cs, all_info):
+        self._raw = all_info
+        self._cs = cs
+
+    # return instruction's ID.
+    @property
+    def id(self):
+        return self._raw.id
+
+    # return instruction's address.
+    @property
+    def address(self):
+        return self._raw.address
+
+    # return instruction's size.
+    @property
+    def size(self):
+        return self._raw.size
+
+    # return instruction's machine bytes (which should have @size bytes).
+    @property
+    def bytes(self):
+        return bytearray(self._raw.bytes)[:self._raw.size]
+
+    # return instruction's mnemonic.
+    @property
+    def mnemonic(self):
+        if self._cs._diet:
+            # Diet engine cannot provide @mnemonic.
+            raise CsError(CS_ERR_DIET)
+
+        return self._raw.mnemonic
+
+    # return instruction's operands (in string).
+    @property
+    def op_str(self):
+        if self._cs._diet:
+            # Diet engine cannot provide @op_str.
+            raise CsError(CS_ERR_DIET)
+
+        return self._raw.op_str
+
+    # return list of all implicit registers being read.
+    @property
+    def regs_read(self):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide @regs_read.
+            raise CsError(CS_ERR_DIET)
+
+        if self._cs._detail:
+            detail = self._raw.detail.contents
+            return detail.regs_read[:detail.regs_read_count]
+
+        raise CsError(CS_ERR_DETAIL)
+
+    # return list of all implicit registers being modified
+    @property
+    def regs_write(self):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide @regs_write
+            raise CsError(CS_ERR_DIET)
+
+        if self._cs._detail:
+            detail = self._raw.detail.contents
+            return detail.regs_write[:detail.regs_write_count]
+
+        raise CsError(CS_ERR_DETAIL)
+
+    # return list of semantic groups this instruction belongs to.
+    @property
+    def groups(self):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide @groups
+            raise CsError(CS_ERR_DIET)
+
+        if self._cs._detail:
+            detail = self._raw.detail.contents
+            return detail.groups[:detail.groups_count]
+
+        raise CsError(CS_ERR_DETAIL)
+
+    def __gen_detail(self):
+        arch = self._cs.arch
+        detail = self._raw.detail.contents
+        if arch == CS_ARCH_ARM:
+            (self.cc, self.update_flags, self.writeback, self.operands) = \
+                arm.get_arch_info(detail.arch.arm)
+        elif arch == CS_ARCH_ARM64:
+            (self.cc, self.update_flags, self.writeback, self.operands) = \
+                arm64.get_arch_info(detail.arch.arm64)
+        elif arch == CS_ARCH_X86:
+            (self.prefix, self.segment, self.opcode, self.op_size, self.addr_size, \
+                self.disp_size, self.imm_size, self.modrm, self.sib, self.disp, \
+                self.sib_index, self.sib_scale, self.sib_base, self.operands) = x86.get_arch_info(detail.arch.x86)
+        elif arch == CS_ARCH_MIPS:
+                self.operands = mips.get_arch_info(detail.arch.mips)
+        elif arch == CS_ARCH_PPC:
+            (self.bc, self.bh, self.update_cr0, self.operands) = \
+                ppc.get_arch_info(detail.arch.ppc)
+        elif arch == CS_ARCH_SPARC:
+            (self.cc, self.hint, self.operands) = sparc.get_arch_info(detail.arch.sparc)
+        elif arch == CS_ARCH_SYSZ:
+            (self.cc, self.operands) = systemz.get_arch_info(detail.arch.sysz)
+
+    def __getattr__(self, name):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if not self._cs._detail:
+            raise CsError(CS_ERR_DETAIL)
+
+        attr = object.__getattribute__
+        if not attr(self, '_cs')._detail:
+            return None
+        _dict = attr(self, '__dict__')
+        if 'operands' not in _dict:
+            self.__gen_detail()
+        if name not in _dict:
+            return None
+        return _dict[name]
+
+    # get the last error code
+    def errno(self):
+        return _cs.cs_errno(self._cs.csh)
+
+    # get the register name, given the register ID
+    def reg_name(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide register name
+            raise CsError(CS_ERR_DIET)
+
+        return _cs.cs_reg_name(self._cs.csh, reg_id)
+
+    # get the instruction string
+    def insn_name(self):
+        if self._cs._diet:
+            # Diet engine cannot provide instruction name
+            raise CsError(CS_ERR_DIET)
+
+        return _cs.cs_insn_name(self._cs.csh, self.id)
+
+    # verify if this insn belong to group with id as @group_id
+    def group(self, group_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide group information
+            raise CsError(CS_ERR_DIET)
+
+        return group_id in self.groups
+
+    # verify if this instruction implicitly read register @reg_id
+    def reg_read(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide regs_read information
+            raise CsError(CS_ERR_DIET)
+
+        return reg_id in self.regs_read
+
+    # verify if this instruction implicitly modified register @reg_id
+    def reg_write(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        if self._cs._diet:
+            # Diet engine cannot provide regs_write information
+            raise CsError(CS_ERR_DIET)
+
+        return reg_id in self.regs_write
+
+    # return number of operands having same operand type @op_type
+    def op_count(self, op_type):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        c = 0
+        for op in self.operands:
+            if op.type == op_type:
+                c += 1
+        return c
+
+    # get the operand at position @position of all operands having the same type @op_type
+    def op_find(self, op_type, position):
+        if self._raw.id == 0:
+            raise CsError(CS_ERR_SKIPDATA)
+
+        c = 0
+        for op in self.operands:
+            if op.type == op_type:
+                c += 1
+            if c == position:
+                return op
+
+
+class Cs(object):
+    def __init__(self, arch, mode):
+        # verify version compatibility with the core before doing anything
+        (major, minor, _combined) = cs_version()
+        if major != CS_API_MAJOR or minor != CS_API_MINOR:
+            self.csh = None
+            # our binding version is different from the core's API version
+            raise CsError(CS_ERR_VERSION)
+
+        self.arch, self._mode = arch, mode
+        self.csh = ctypes.c_size_t()
+        status = _cs.cs_open(arch, mode, ctypes.byref(self.csh))
+        if status != CS_ERR_OK:
+            self.csh = None
+            raise CsError(status)
+
+        try:
+            import ccapstone
+            # rewire disasm to use the faster version
+            self.disasm = ccapstone.Cs(self).disasm
+        except:
+            pass
+
+        if arch == CS_ARCH_X86:
+            # Intel syntax is default for X86
+            self._syntax = CS_OPT_SYNTAX_INTEL
+        else:
+            self._syntax = None
+
+        self._detail = False    # by default, do not produce instruction details
+        self._diet = cs_support(CS_SUPPORT_DIET)
+        self._x86_compact = cs_support(CS_SUPPORT_X86_REDUCE)
+
+        # default mnemonic for SKIPDATA
+        self._skipdata_mnem = ".byte"
+        self._skipdata = False
+
+
+    # destructor to be called automatically when object is destroyed.
+    def __del__(self):
+        if self.csh:
+            status = _cs.cs_close(ctypes.byref(self.csh))
+            if status != CS_ERR_OK:
+                raise CsError(status)
+
+
+    #def option(self, opt_type, opt_value):
+    #    return _cs.cs_option(self.csh, opt_type, opt_value)
+
+
+    # is this a diet engine?
+    @property
+    def diet(self):
+        return self._diet
+
+
+    # is this engine compiled with X86 compact option?
+    @property
+    def x86_compact(self):
+        return self._x86_compact
+
+
+    # return assembly syntax.
+    @property
+    def syntax(self):
+        return self._syntax
+
+
+    # setter: modify assembly syntax.
+    @syntax.setter
+    def syntax(self, style):
+        status = _cs.cs_option(self.csh, CS_OPT_SYNTAX, style)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+        # save syntax
+        self._syntax = style
+
+
+    # return current skipdata status
+    @property
+    def skipdata(self):
+        return self._skipdata
+
+
+    # setter: modify skipdata status
+    @syntax.setter
+    def skipdata(self, opt):
+        if opt == False:
+            status = _cs.cs_option(self.csh, CS_OPT_SKIPDATA, CS_OPT_OFF)
+        else:
+            status = _cs.cs_option(self.csh, CS_OPT_SKIPDATA, CS_OPT_ON)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+
+        # save this option
+        self._skipdata = opt
+
+
+    # setter: modify "data" instruction's mnemonic for SKIPDATA
+    @syntax.setter
+    def skipdata_setup(self, opt):
+        _skipdata_opt = _cs_opt_skipdata()
+        _mnem, _cb, _ud = opt
+        _skipdata_opt.mnemonic = _mnem
+        _skipdata_opt.callback = ctypes.cast(_cb, CS_SKIPDATA_CALLBACK)
+        _skipdata_opt.user_data = ctypes.cast(_ud, ctypes.c_void_p)
+        status = _cs.cs_option(self.csh, CS_OPT_SKIPDATA_SETUP, ctypes.cast(ctypes.byref(_skipdata_opt), ctypes.c_void_p))
+        if status != CS_ERR_OK:
+            raise CsError(status)
+
+        self._skipdata_opt = _skipdata_opt
+
+
+    # is detail mode enable?
+    @property
+    def detail(self):
+        return self._detail
+
+
+    # check to see if this engine supports a particular arch,
+    # or diet mode (depending on @query).
+    def support(self, query):
+        return cs_support(query)
+
+
+    # modify detail mode.
+    @detail.setter
+    def detail(self, opt):  # opt is boolean type, so must be either 'True' or 'False'
+        if opt == False:
+            status = _cs.cs_option(self.csh, CS_OPT_DETAIL, CS_OPT_OFF)
+        else:
+            status = _cs.cs_option(self.csh, CS_OPT_DETAIL, CS_OPT_ON)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+        # save detail
+        self._detail = opt
+
+
+    # return disassembly mode of this engine.
+    @property
+    def mode(self):
+        return self._mode
+
+
+    # modify engine's mode at run-time.
+    @mode.setter
+    def mode(self, opt):  # opt is new disasm mode, of int type
+        status = _cs.cs_option(self.csh, CS_OPT_MODE, opt)
+        if status != CS_ERR_OK:
+            raise CsError(status)
+        # save mode
+        self._mode = opt
+
+
+    # Disassemble binary & return disassembled instructions in CsInsn objects
+    def disasm(self, code, offset, count = 0):
+        all_insn = ctypes.POINTER(_cs_insn)()
+        res = _cs.cs_disasm_ex(self.csh, code, len(code), offset, count, ctypes.byref(all_insn))
+        if res > 0:
+            for i in xrange(res):
+                yield CsInsn(self, all_insn[i])
+            _cs.cs_free(all_insn, res)
+        else:
+            status = _cs.cs_errno(self.csh)
+            if status != CS_ERR_OK:
+                raise CsError(status)
+            return
+            yield
+
+
+    # Light function to disassemble binary. This is about 20% faster than disasm() because
+    # unlike disasm(), disasm_lite() only return tuples of (address, size, mnemonic, op_str),
+    # rather than CsInsn objects.
+    def disasm_lite(self, code, offset, count = 0):
+        if self._diet:
+            # Diet engine cannot provide @mnemonic & @op_str
+            raise CsError(CS_ERR_DIET)
+
+        all_insn = ctypes.POINTER(_cs_insn)()
+        res = _cs.cs_disasm_ex(self.csh, code, len(code), offset, count, ctypes.byref(all_insn))
+        if res > 0:
+            for i in xrange(res):
+                insn = all_insn[i]
+                yield (insn.address, insn.size, insn.mnemonic, insn.op_str)
+            _cs.cs_free(all_insn, res)
+        else:
+            status = _cs.cs_errno(self.csh)
+            if status != CS_ERR_OK:
+                raise CsError(status)
+            return
+            yield
+
+
+# print out debugging info
+def debug():
+    # is Cython there?
+    try:
+        import ccapstone
+        return ccapstone.debug()
+    except:
+        # no Cython, fallback to Python code below
+        pass
+
+    if cs_support(CS_SUPPORT_DIET):
+        diet = "diet"
+    else:
+        diet = "standard"
+
+    archs = { "arm": CS_ARCH_ARM, "arm64": CS_ARCH_ARM64, \
+        "mips": CS_ARCH_MIPS, "ppc": CS_ARCH_PPC, "sparc": CS_ARCH_SPARC, \
+        "sysz": CS_ARCH_SYSZ }
+
+    all_archs = ""
+    keys = archs.keys()
+    keys.sort()
+    for k in keys:
+        if cs_support(archs[k]):
+            all_archs += "-%s" %k
+
+    if cs_support(CS_ARCH_X86):
+        all_archs += "-x86"
+        if cs_support(CS_SUPPORT_X86_REDUCE):
+            all_archs += "_compact"
+
+    (major, minor, _combined) = cs_version()
+
+    return "python-%s%s-c%u.%u-b%u.%u" %(diet, all_archs, major, minor, CS_API_MAJOR, CS_API_MINOR)
+
diff --git a/bindings/python/capstone/sparc.py b/bindings/python/capstone/sparc.py
new file mode 100644
index 0000000..8213ca4
--- /dev/null
+++ b/bindings/python/capstone/sparc.py
@@ -0,0 +1,50 @@
+# Capstone Python bindings, by Nguyen Anh Quynnh <aquynh@gmail.com>
+
+import ctypes, copy
+from .sparc_const import *
+
+# define the API
+class SparcOpMem(ctypes.Structure):
+    _fields_ = (
+        ('base', ctypes.c_uint8),
+        ('index', ctypes.c_uint8),
+        ('disp', ctypes.c_int32),
+    )
+
+class SparcOpValue(ctypes.Union):
+    _fields_ = (
+        ('reg', ctypes.c_uint),
+        ('imm', ctypes.c_int32),
+        ('mem', SparcOpMem),
+    )
+
+class SparcOp(ctypes.Structure):
+    _fields_ = (
+        ('type', ctypes.c_uint),
+        ('value', SparcOpValue),
+    )
+
+    @property
+    def imm(self):
+        return self.value.imm
+
+    @property
+    def reg(self):
+        return self.value.reg
+
+    @property
+    def mem(self):
+        return self.value.mem
+
+
+class CsSparc(ctypes.Structure):
+    _fields_ = (
+        ('cc', ctypes.c_uint),
+        ('hint', ctypes.c_uint),
+        ('op_count', ctypes.c_uint8),
+        ('operands', SparcOp * 4),
+    )
+
+def get_arch_info(a):
+    return (a.cc, a.hint, copy.deepcopy(a.operands[:a.op_count]))
+
diff --git a/bindings/python/capstone/sparc_const.py b/bindings/python/capstone/sparc_const.py
new file mode 100644
index 0000000..4d39f3f
--- /dev/null
+++ b/bindings/python/capstone/sparc_const.py
@@ -0,0 +1,445 @@
+# For Capstone Engine. AUTO-GENERATED FILE, DO NOT EDIT [sparc_const.py]
+
+# Enums corresponding to Sparc condition codes, both icc's and fcc's.
+
+SPARC_CC_INVALID = 0
+
+# Integer condition codes
+SPARC_CC_ICC_A = 8
+
+SPARC_CC_ICC_N = 0
+SPARC_CC_ICC_NE = 9
+SPARC_CC_ICC_E = 1
+SPARC_CC_ICC_G = 10
+SPARC_CC_ICC_LE = 2
+SPARC_CC_ICC_GE = 11
+SPARC_CC_ICC_L = 3
+SPARC_CC_ICC_GU = 12
+SPARC_CC_ICC_LEU = 4
+SPARC_CC_ICC_CC = 13
+SPARC_CC_ICC_CS = 5
+SPARC_CC_ICC_POS = 14
+SPARC_CC_ICC_NEG = 6
+SPARC_CC_ICC_VC = 15
+SPARC_CC_ICC_VS = 7
+
+# Floating condition codes
+SPARC_CC_FCC_A = 8+16
+SPARC_CC_FCC_N = 0+16
+SPARC_CC_FCC_U = 7+16
+SPARC_CC_FCC_G = 6+16
+SPARC_CC_FCC_UG = 5+16
+SPARC_CC_FCC_L = 4+16
+SPARC_CC_FCC_UL = 3+16
+SPARC_CC_FCC_LG = 2+16
+SPARC_CC_FCC_NE = 1+16
+SPARC_CC_FCC_E = 9+16
+SPARC_CC_FCC_UE = 10+16
+SPARC_CC_FCC_GE = 11+16
+SPARC_CC_FCC_UGE = 12+16
+SPARC_CC_FCC_LE = 13+16
+SPARC_CC_FCC_ULE = 14+16
+SPARC_CC_FCC_O = 15+16
+
+# Branch hint
+
+SPARC_HINT_INVALID = 0
+SPARC_HINT_A = 1<<0
+SPARC_HINT_PT = 1<<1
+SPARC_HINT_PN = 1<<2
+
+# Operand type for instruction's operands
+
+SPARC_OP_INVALID = 0
+SPARC_OP_REG = 1
+SPARC_OP_IMM = 2
+SPARC_OP_MEM = 3
+
+# SPARC registers
+
+SPARC_REG_INVALID = 0
+SPARC_REG_F0 = 1
+SPARC_REG_F1 = 2
+SPARC_REG_F2 = 3
+SPARC_REG_F3 = 4
+SPARC_REG_F4 = 5
+SPARC_REG_F5 = 6
+SPARC_REG_F6 = 7
+SPARC_REG_F7 = 8
+SPARC_REG_F8 = 9
+SPARC_REG_F9 = 10
+SPARC_REG_F10 = 11
+SPARC_REG_F11 = 12
+SPARC_REG_F12 = 13
+SPARC_REG_F13 = 14
+SPARC_REG_F14 = 15
+SPARC_REG_F15 = 16
+SPARC_REG_F16 = 17
+SPARC_REG_F17 = 18
+SPARC_REG_F18 = 19
+SPARC_REG_F19 = 20
+SPARC_REG_F20 = 21
+SPARC_REG_F21 = 22
+SPARC_REG_F22 = 23
+SPARC_REG_F23 = 24
+SPARC_REG_F24 = 25
+SPARC_REG_F25 = 26
+SPARC_REG_F26 = 27
+SPARC_REG_F27 = 28
+SPARC_REG_F28 = 29
+SPARC_REG_F29 = 30
+SPARC_REG_F30 = 31
+SPARC_REG_F31 = 32
+SPARC_REG_F32 = 33
+SPARC_REG_F34 = 34
+SPARC_REG_F36 = 35
+SPARC_REG_F38 = 36
+SPARC_REG_F40 = 37
+SPARC_REG_F42 = 38
+SPARC_REG_F44 = 39
+SPARC_REG_F46 = 40
+SPARC_REG_F48 = 41
+SPARC_REG_F50 = 42
+SPARC_REG_F52 = 43
+SPARC_REG_F54 = 44
+SPARC_REG_F56 = 45
+SPARC_REG_F58 = 46
+SPARC_REG_F60 = 47
+SPARC_REG_F62 = 48
+SPARC_REG_FCC0 = 49
+SPARC_REG_FCC1 = 50
+SPARC_REG_FCC2 = 51
+SPARC_REG_FCC3 = 52
+SPARC_REG_FP = 53
+SPARC_REG_G0 = 54
+SPARC_REG_G1 = 55
+SPARC_REG_G2 = 56
+SPARC_REG_G3 = 57
+SPARC_REG_G4 = 58
+SPARC_REG_G5 = 59
+SPARC_REG_G6 = 60
+SPARC_REG_G7 = 61
+SPARC_REG_I0 = 62
+SPARC_REG_I1 = 63
+SPARC_REG_I2 = 64
+SPARC_REG_I3 = 65
+SPARC_REG_I4 = 66
+SPARC_REG_I5 = 67
+SPARC_REG_I7 = 68
+SPARC_REG_ICC = 69
+SPARC_REG_L0 = 70
+SPARC_REG_L1 = 71
+SPARC_REG_L2 = 72
+SPARC_REG_L3 = 73
+SPARC_REG_L4 = 74
+SPARC_REG_L5 = 75
+SPARC_REG_L6 = 76
+SPARC_REG_L7 = 77
+SPARC_REG_O0 = 78
+SPARC_REG_O1 = 79
+SPARC_REG_O2 = 80
+SPARC_REG_O3 = 81
+SPARC_REG_O4 = 82
+SPARC_REG_O5 = 83
+SPARC_REG_O7 = 84
+SPARC_REG_SP = 85
+SPARC_REG_Y = 86
+SPARC_REG_MAX = 87
+SPARC_REG_O6 = SPARC_REG_SP
+SPARC_REG_I6 = SPARC_REG_FP
+
+# SPARC instruction
+
+SPARC_INS_INVALID = 0
+SPARC_INS_ADDCC = 1
+SPARC_INS_ADDX = 2
+SPARC_INS_ADDXCC = 3
+SPARC_INS_ADDXC = 4
+SPARC_INS_ADDXCCC = 5
+SPARC_INS_ADD = 6
+SPARC_INS_ALIGNADDR = 7
+SPARC_INS_ALIGNADDRL = 8
+SPARC_INS_ANDCC = 9
+SPARC_INS_ANDNCC = 10
+SPARC_INS_ANDN = 11
+SPARC_INS_AND = 12
+SPARC_INS_ARRAY16 = 13
+SPARC_INS_ARRAY32 = 14
+SPARC_INS_ARRAY8 = 15
+SPARC_INS_BA = 16
+SPARC_INS_B = 17
+SPARC_INS_JMP = 18
+SPARC_INS_BMASK = 19
+SPARC_INS_FB = 20
+SPARC_INS_BRGEZ = 21
+SPARC_INS_BRGZ = 22
+SPARC_INS_BRLEZ = 23
+SPARC_INS_BRLZ = 24
+SPARC_INS_BRNZ = 25
+SPARC_INS_BRZ = 26
+SPARC_INS_BSHUFFLE = 27
+SPARC_INS_CALL = 28
+SPARC_INS_CASX = 29
+SPARC_INS_CAS = 30
+SPARC_INS_CMASK16 = 31
+SPARC_INS_CMASK32 = 32
+SPARC_INS_CMASK8 = 33
+SPARC_INS_CMP = 34
+SPARC_INS_EDGE16 = 35
+SPARC_INS_EDGE16L = 36
+SPARC_INS_EDGE16LN = 37
+SPARC_INS_EDGE16N = 38
+SPARC_INS_EDGE32 = 39
+SPARC_INS_EDGE32L = 40
+SPARC_INS_EDGE32LN = 41
+SPARC_INS_EDGE32N = 42
+SPARC_INS_EDGE8 = 43
+SPARC_INS_EDGE8L = 44
+SPARC_INS_EDGE8LN = 45
+SPARC_INS_EDGE8N = 46
+SPARC_INS_FABSD = 47
+SPARC_INS_FABSQ = 48
+SPARC_INS_FABSS = 49
+SPARC_INS_FADDD = 50
+SPARC_INS_FADDQ = 51
+SPARC_INS_FADDS = 52
+SPARC_INS_FALIGNDATA = 53
+SPARC_INS_FAND = 54
+SPARC_INS_FANDNOT1 = 55
+SPARC_INS_FANDNOT1S = 56
+SPARC_INS_FANDNOT2 = 57
+SPARC_INS_FANDNOT2S = 58
+SPARC_INS_FANDS = 59
+SPARC_INS_FCHKSM16 = 60
+SPARC_INS_FCMPD = 61
+SPARC_INS_FCMPEQ16 = 62
+SPARC_INS_FCMPEQ32 = 63
+SPARC_INS_FCMPGT16 = 64
+SPARC_INS_FCMPGT32 = 65
+SPARC_INS_FCMPLE16 = 66
+SPARC_INS_FCMPLE32 = 67
+SPARC_INS_FCMPNE16 = 68
+SPARC_INS_FCMPNE32 = 69
+SPARC_INS_FCMPQ = 70
+SPARC_INS_FCMPS = 71
+SPARC_INS_FDIVD = 72
+SPARC_INS_FDIVQ = 73
+SPARC_INS_FDIVS = 74
+SPARC_INS_FDMULQ = 75
+SPARC_INS_FDTOI = 76
+SPARC_INS_FDTOQ = 77
+SPARC_INS_FDTOS = 78
+SPARC_INS_FDTOX = 79
+SPARC_INS_FEXPAND = 80
+SPARC_INS_FHADDD = 81
+SPARC_INS_FHADDS = 82
+SPARC_INS_FHSUBD = 83
+SPARC_INS_FHSUBS = 84
+SPARC_INS_FITOD = 85
+SPARC_INS_FITOQ = 86
+SPARC_INS_FITOS = 87
+SPARC_INS_FLCMPD = 88
+SPARC_INS_FLCMPS = 89
+SPARC_INS_FLUSHW = 90
+SPARC_INS_FMEAN16 = 91
+SPARC_INS_FMOVD = 92
+SPARC_INS_FMOVQ = 93
+SPARC_INS_FMOVRDGEZ = 94
+SPARC_INS_FMOVRQGEZ = 95
+SPARC_INS_FMOVRSGEZ = 96
+SPARC_INS_FMOVRDGZ = 97
+SPARC_INS_FMOVRQGZ = 98
+SPARC_INS_FMOVRSGZ = 99
+SPARC_INS_FMOVRDLEZ = 100
+SPARC_INS_FMOVRQLEZ = 101
+SPARC_INS_FMOVRSLEZ = 102
+SPARC_INS_FMOVRDLZ = 103
+SPARC_INS_FMOVRQLZ = 104
+SPARC_INS_FMOVRSLZ = 105
+SPARC_INS_FMOVRDNZ = 106
+SPARC_INS_FMOVRQNZ = 107
+SPARC_INS_FMOVRSNZ = 108
+SPARC_INS_FMOVRDZ = 109
+SPARC_INS_FMOVRQZ = 110
+SPARC_INS_FMOVRSZ = 111
+SPARC_INS_FMOVS = 112
+SPARC_INS_FMUL8SUX16 = 113
+SPARC_INS_FMUL8ULX16 = 114
+SPARC_INS_FMUL8X16 = 115
+SPARC_INS_FMUL8X16AL = 116
+SPARC_INS_FMUL8X16AU = 117
+SPARC_INS_FMULD = 118
+SPARC_INS_FMULD8SUX16 = 119
+SPARC_INS_FMULD8ULX16 = 120
+SPARC_INS_FMULQ = 121
+SPARC_INS_FMULS = 122
+SPARC_INS_FNADDD = 123
+SPARC_INS_FNADDS = 124
+SPARC_INS_FNAND = 125
+SPARC_INS_FNANDS = 126
+SPARC_INS_FNEGD = 127
+SPARC_INS_FNEGQ = 128
+SPARC_INS_FNEGS = 129
+SPARC_INS_FNHADDD = 130
+SPARC_INS_FNHADDS = 131
+SPARC_INS_FNOR = 132
+SPARC_INS_FNORS = 133
+SPARC_INS_FNOT1 = 134
+SPARC_INS_FNOT1S = 135
+SPARC_INS_FNOT2 = 136
+SPARC_INS_FNOT2S = 137
+SPARC_INS_FONE = 138
+SPARC_INS_FONES = 139
+SPARC_INS_FOR = 140
+SPARC_INS_FORNOT1 = 141
+SPARC_INS_FORNOT1S = 142
+SPARC_INS_FORNOT2 = 143
+SPARC_INS_FORNOT2S = 144
+SPARC_INS_FORS = 145
+SPARC_INS_FPACK16 = 146
+SPARC_INS_FPACK32 = 147
+SPARC_INS_FPACKFIX = 148
+SPARC_INS_FPADD16 = 149
+SPARC_INS_FPADD16S = 150
+SPARC_INS_FPADD32 = 151
+SPARC_INS_FPADD32S = 152
+SPARC_INS_FPADD64 = 153
+SPARC_INS_FPMERGE = 154
+SPARC_INS_FPSUB16 = 155
+SPARC_INS_FPSUB16S = 156
+SPARC_INS_FPSUB32 = 157
+SPARC_INS_FPSUB32S = 158
+SPARC_INS_FQTOD = 159
+SPARC_INS_FQTOI = 160
+SPARC_INS_FQTOS = 161
+SPARC_INS_FQTOX = 162
+SPARC_INS_FSLAS16 = 163
+SPARC_INS_FSLAS32 = 164
+SPARC_INS_FSLL16 = 165
+SPARC_INS_FSLL32 = 166
+SPARC_INS_FSMULD = 167
+SPARC_INS_FSQRTD = 168
+SPARC_INS_FSQRTQ = 169
+SPARC_INS_FSQRTS = 170
+SPARC_INS_FSRA16 = 171
+SPARC_INS_FSRA32 = 172
+SPARC_INS_FSRC1 = 173
+SPARC_INS_FSRC1S = 174
+SPARC_INS_FSRC2 = 175
+SPARC_INS_FSRC2S = 176
+SPARC_INS_FSRL16 = 177
+SPARC_INS_FSRL32 = 178
+SPARC_INS_FSTOD = 179
+SPARC_INS_FSTOI = 180
+SPARC_INS_FSTOQ = 181
+SPARC_INS_FSTOX = 182
+SPARC_INS_FSUBD = 183
+SPARC_INS_FSUBQ = 184
+SPARC_INS_FSUBS = 185
+SPARC_INS_FXNOR = 186
+SPARC_INS_FXNORS = 187
+SPARC_INS_FXOR = 188
+SPARC_INS_FXORS = 189
+SPARC_INS_FXTOD = 190
+SPARC_INS_FXTOQ = 191
+SPARC_INS_FXTOS = 192
+SPARC_INS_FZERO = 193
+SPARC_INS_FZEROS = 194
+SPARC_INS_JMPL = 195
+SPARC_INS_LDD = 196
+SPARC_INS_LD = 197
+SPARC_INS_LDQ = 198
+SPARC_INS_LDSB = 199
+SPARC_INS_LDSH = 200
+SPARC_INS_LDSW = 201
+SPARC_INS_LDUB = 202
+SPARC_INS_LDUH = 203
+SPARC_INS_LDX = 204
+SPARC_INS_LZCNT = 205
+SPARC_INS_MEMBAR = 206
+SPARC_INS_MOVDTOX = 207
+SPARC_INS_MOV = 208
+SPARC_INS_MOVRGEZ = 209
+SPARC_INS_MOVRGZ = 210
+SPARC_INS_MOVRLEZ = 211
+SPARC_INS_MOVRLZ = 212
+SPARC_INS_MOVRNZ = 213
+SPARC_INS_MOVRZ = 214
+SPARC_INS_MOVSTOSW = 215
+SPARC_INS_MOVSTOUW = 216
+SPARC_INS_MULX = 217
+SPARC_INS_NOP = 218
+SPARC_INS_ORCC = 219
+SPARC_INS_ORNCC = 220
+SPARC_INS_ORN = 221
+SPARC_INS_OR = 222
+SPARC_INS_PDIST = 223
+SPARC_INS_PDISTN = 224
+SPARC_INS_POPC = 225
+SPARC_INS_RD = 226
+SPARC_INS_RESTORE = 227
+SPARC_INS_RETT = 228
+SPARC_INS_SAVE = 229
+SPARC_INS_SDIVCC = 230
+SPARC_INS_SDIVX = 231
+SPARC_INS_SDIV = 232
+SPARC_INS_SETHI = 233
+SPARC_INS_SHUTDOWN = 234
+SPARC_INS_SIAM = 235
+SPARC_INS_SLLX = 236
+SPARC_INS_SLL = 237
+SPARC_INS_SMULCC = 238
+SPARC_INS_SMUL = 239
+SPARC_INS_SRAX = 240
+SPARC_INS_SRA = 241
+SPARC_INS_SRLX = 242
+SPARC_INS_SRL = 243
+SPARC_INS_STBAR = 244
+SPARC_INS_STB = 245
+SPARC_INS_STD = 246
+SPARC_INS_ST = 247
+SPARC_INS_STH = 248
+SPARC_INS_STQ = 249
+SPARC_INS_STX = 250
+SPARC_INS_SUBCC = 251
+SPARC_INS_SUBX = 252
+SPARC_INS_SUBXCC = 253
+SPARC_INS_SUB = 254
+SPARC_INS_SWAP = 255
+SPARC_INS_TA = 256
+SPARC_INS_TADDCCTV = 257
+SPARC_INS_TADDCC = 258
+SPARC_INS_T = 259
+SPARC_INS_TSUBCCTV = 260
+SPARC_INS_TSUBCC = 261
+SPARC_INS_UDIVCC = 262
+SPARC_INS_UDIVX = 263
+SPARC_INS_UDIV = 264
+SPARC_INS_UMULCC = 265
+SPARC_INS_UMULXHI = 266
+SPARC_INS_UMUL = 267
+SPARC_INS_UNIMP = 268
+SPARC_INS_FCMPED = 269
+SPARC_INS_FCMPEQ = 270
+SPARC_INS_FCMPES = 271
+SPARC_INS_WR = 272
+SPARC_INS_XMULX = 273
+SPARC_INS_XMULXHI = 274
+SPARC_INS_XNORCC = 275
+SPARC_INS_XNOR = 276
+SPARC_INS_XORCC = 277
+SPARC_INS_XOR = 278
+SPARC_INS_MAX = 279
+
+# Group of SPARC instructions
+
+SPARC_GRP_INVALID = 0
+SPARC_GRP_HARDQUAD = 1
+SPARC_GRP_V9 = 2
+SPARC_GRP_VIS = 3
+SPARC_GRP_VIS2 = 4
+SPARC_GRP_VIS3 = 5
+SPARC_GRP_32BIT = 6
+SPARC_GRP_64BIT = 7
+SPARC_GRP_JUMP = 8
+SPARC_GRP_MAX = 9
diff --git a/bindings/python/capstone/systemz.py b/bindings/python/capstone/systemz.py
new file mode 100644
index 0000000..7317757
--- /dev/null
+++ b/bindings/python/capstone/systemz.py
@@ -0,0 +1,50 @@
+# Capstone Python bindings, by Nguyen Anh Quynnh <aquynh@gmail.com>
+
+import ctypes, copy
+from .sysz_const import *
+
+# define the API
+class SyszOpMem(ctypes.Structure):
+    _fields_ = (
+        ('base', ctypes.c_uint8),
+        ('index', ctypes.c_uint8),
+        ('length', ctypes.c_uint64),
+        ('disp', ctypes.c_int64),
+    )
+
+class SyszOpValue(ctypes.Union):
+    _fields_ = (
+        ('reg', ctypes.c_uint),
+        ('imm', ctypes.c_int64),
+        ('mem', SyszOpMem),
+    )
+
+class SyszOp(ctypes.Structure):
+    _fields_ = (
+        ('type', ctypes.c_uint),
+        ('value', SyszOpValue),
+    )
+
+    @property
+    def imm(self):
+        return self.value.imm
+
+    @property
+    def reg(self):
+        return self.value.reg
+
+    @property
+    def mem(self):
+        return self.value.mem
+
+
+class CsSysz(ctypes.Structure):
+    _fields_ = (
+        ('cc', ctypes.c_uint),
+        ('op_count', ctypes.c_uint8),
+        ('operands', SyszOp * 6),
+    )
+
+def get_arch_info(a):
+    return (a.cc, copy.deepcopy(a.operands[:a.op_count]))
+
diff --git a/bindings/python/capstone/sysz_const.py b/bindings/python/capstone/sysz_const.py
new file mode 100644
index 0000000..c0d30e3
--- /dev/null
+++ b/bindings/python/capstone/sysz_const.py
@@ -0,0 +1,760 @@
+# For Capstone Engine. AUTO-GENERATED FILE, DO NOT EDIT [sysz_const.py]
+
+# Enums corresponding to SystemZ condition codes
+
+SYSZ_CC_INVALID = 0
+SYSZ_CC_O = 1
+SYSZ_CC_H = 2
+SYSZ_CC_NLE = 3
+SYSZ_CC_L = 4
+SYSZ_CC_NHE = 5
+SYSZ_CC_LH = 6
+SYSZ_CC_NE = 7
+SYSZ_CC_E = 8
+SYSZ_CC_NLH = 9
+SYSZ_CC_HE = 10
+SYSZ_CC_NL = 11
+SYSZ_CC_LE = 12
+SYSZ_CC_NH = 13
+SYSZ_CC_NO = 14
+
+# Operand type for instruction's operands
+
+SYSZ_OP_INVALID = 0
+SYSZ_OP_REG = 1
+SYSZ_OP_ACREG = 2
+SYSZ_OP_IMM = 3
+SYSZ_OP_MEM = 4
+
+# SystemZ registers
+
+SYSZ_REG_INVALID = 0
+SYSZ_REG_0 = 1
+SYSZ_REG_1 = 2
+SYSZ_REG_2 = 3
+SYSZ_REG_3 = 4
+SYSZ_REG_4 = 5
+SYSZ_REG_5 = 6
+SYSZ_REG_6 = 7
+SYSZ_REG_7 = 8
+SYSZ_REG_8 = 9
+SYSZ_REG_9 = 10
+SYSZ_REG_10 = 11
+SYSZ_REG_11 = 12
+SYSZ_REG_12 = 13
+SYSZ_REG_13 = 14
+SYSZ_REG_14 = 15
+SYSZ_REG_15 = 16
+SYSZ_REG_CC = 17
+SYSZ_REG_F0 = 18
+SYSZ_REG_F1 = 19
+SYSZ_REG_F2 = 20
+SYSZ_REG_F3 = 21
+SYSZ_REG_F4 = 22
+SYSZ_REG_F5 = 23
+SYSZ_REG_F6 = 24
+SYSZ_REG_F7 = 25
+SYSZ_REG_F8 = 26
+SYSZ_REG_F9 = 27
+SYSZ_REG_F10 = 28
+SYSZ_REG_F11 = 29
+SYSZ_REG_F12 = 30
+SYSZ_REG_F13 = 31
+SYSZ_REG_F14 = 32
+SYSZ_REG_F15 = 33
+SYSZ_REG_R0L = 34
+SYSZ_REG_MAX = 35
+
+# SystemZ instruction
+
+SYSZ_INS_INVALID = 0
+SYSZ_INS_A = 1
+SYSZ_INS_ADB = 2
+SYSZ_INS_ADBR = 3
+SYSZ_INS_AEB = 4
+SYSZ_INS_AEBR = 5
+SYSZ_INS_AFI = 6
+SYSZ_INS_AG = 7
+SYSZ_INS_AGF = 8
+SYSZ_INS_AGFI = 9
+SYSZ_INS_AGFR = 10
+SYSZ_INS_AGHI = 11
+SYSZ_INS_AGHIK = 12
+SYSZ_INS_AGR = 13
+SYSZ_INS_AGRK = 14
+SYSZ_INS_AGSI = 15
+SYSZ_INS_AH = 16
+SYSZ_INS_AHI = 17
+SYSZ_INS_AHIK = 18
+SYSZ_INS_AHY = 19
+SYSZ_INS_AIH = 20
+SYSZ_INS_AL = 21
+SYSZ_INS_ALC = 22
+SYSZ_INS_ALCG = 23
+SYSZ_INS_ALCGR = 24
+SYSZ_INS_ALCR = 25
+SYSZ_INS_ALFI = 26
+SYSZ_INS_ALG = 27
+SYSZ_INS_ALGF = 28
+SYSZ_INS_ALGFI = 29
+SYSZ_INS_ALGFR = 30
+SYSZ_INS_ALGHSIK = 31
+SYSZ_INS_ALGR = 32
+SYSZ_INS_ALGRK = 33
+SYSZ_INS_ALHSIK = 34
+SYSZ_INS_ALR = 35
+SYSZ_INS_ALRK = 36
+SYSZ_INS_ALY = 37
+SYSZ_INS_AR = 38
+SYSZ_INS_ARK = 39
+SYSZ_INS_ASI = 40
+SYSZ_INS_AXBR = 41
+SYSZ_INS_AY = 42
+SYSZ_INS_BCR = 43
+SYSZ_INS_BRC = 44
+SYSZ_INS_BRCL = 45
+SYSZ_INS_CGIJ = 46
+SYSZ_INS_CGRJ = 47
+SYSZ_INS_CIJ = 48
+SYSZ_INS_CLGIJ = 49
+SYSZ_INS_CLGRJ = 50
+SYSZ_INS_CLIJ = 51
+SYSZ_INS_CLRJ = 52
+SYSZ_INS_CRJ = 53
+SYSZ_INS_BER = 54
+SYSZ_INS_JE = 55
+SYSZ_INS_JGE = 56
+SYSZ_INS_LOCE = 57
+SYSZ_INS_LOCGE = 58
+SYSZ_INS_LOCGRE = 59
+SYSZ_INS_LOCRE = 60
+SYSZ_INS_STOCE = 61
+SYSZ_INS_STOCGE = 62
+SYSZ_INS_BHR = 63
+SYSZ_INS_BHER = 64
+SYSZ_INS_JHE = 65
+SYSZ_INS_JGHE = 66
+SYSZ_INS_LOCHE = 67
+SYSZ_INS_LOCGHE = 68
+SYSZ_INS_LOCGRHE = 69
+SYSZ_INS_LOCRHE = 70
+SYSZ_INS_STOCHE = 71
+SYSZ_INS_STOCGHE = 72
+SYSZ_INS_JH = 73
+SYSZ_INS_JGH = 74
+SYSZ_INS_LOCH = 75
+SYSZ_INS_LOCGH = 76
+SYSZ_INS_LOCGRH = 77
+SYSZ_INS_LOCRH = 78
+SYSZ_INS_STOCH = 79
+SYSZ_INS_STOCGH = 80
+SYSZ_INS_CGIJNLH = 81
+SYSZ_INS_CGRJNLH = 82
+SYSZ_INS_CIJNLH = 83
+SYSZ_INS_CLGIJNLH = 84
+SYSZ_INS_CLGRJNLH = 85
+SYSZ_INS_CLIJNLH = 86
+SYSZ_INS_CLRJNLH = 87
+SYSZ_INS_CRJNLH = 88
+SYSZ_INS_CGIJE = 89
+SYSZ_INS_CGRJE = 90
+SYSZ_INS_CIJE = 91
+SYSZ_INS_CLGIJE = 92
+SYSZ_INS_CLGRJE = 93
+SYSZ_INS_CLIJE = 94
+SYSZ_INS_CLRJE = 95
+SYSZ_INS_CRJE = 96
+SYSZ_INS_CGIJNLE = 97
+SYSZ_INS_CGRJNLE = 98
+SYSZ_INS_CIJNLE = 99
+SYSZ_INS_CLGIJNLE = 100
+SYSZ_INS_CLGRJNLE = 101
+SYSZ_INS_CLIJNLE = 102
+SYSZ_INS_CLRJNLE = 103
+SYSZ_INS_CRJNLE = 104
+SYSZ_INS_CGIJH = 105
+SYSZ_INS_CGRJH = 106
+SYSZ_INS_CIJH = 107
+SYSZ_INS_CLGIJH = 108
+SYSZ_INS_CLGRJH = 109
+SYSZ_INS_CLIJH = 110
+SYSZ_INS_CLRJH = 111
+SYSZ_INS_CRJH = 112
+SYSZ_INS_CGIJNL = 113
+SYSZ_INS_CGRJNL = 114
+SYSZ_INS_CIJNL = 115
+SYSZ_INS_CLGIJNL = 116
+SYSZ_INS_CLGRJNL = 117
+SYSZ_INS_CLIJNL = 118
+SYSZ_INS_CLRJNL = 119
+SYSZ_INS_CRJNL = 120
+SYSZ_INS_CGIJHE = 121
+SYSZ_INS_CGRJHE = 122
+SYSZ_INS_CIJHE = 123
+SYSZ_INS_CLGIJHE = 124
+SYSZ_INS_CLGRJHE = 125
+SYSZ_INS_CLIJHE = 126
+SYSZ_INS_CLRJHE = 127
+SYSZ_INS_CRJHE = 128
+SYSZ_INS_CGIJNHE = 129
+SYSZ_INS_CGRJNHE = 130
+SYSZ_INS_CIJNHE = 131
+SYSZ_INS_CLGIJNHE = 132
+SYSZ_INS_CLGRJNHE = 133
+SYSZ_INS_CLIJNHE = 134
+SYSZ_INS_CLRJNHE = 135
+SYSZ_INS_CRJNHE = 136
+SYSZ_INS_CGIJL = 137
+SYSZ_INS_CGRJL = 138
+SYSZ_INS_CIJL = 139
+SYSZ_INS_CLGIJL = 140
+SYSZ_INS_CLGRJL = 141
+SYSZ_INS_CLIJL = 142
+SYSZ_INS_CLRJL = 143
+SYSZ_INS_CRJL = 144
+SYSZ_INS_CGIJNH = 145
+SYSZ_INS_CGRJNH = 146
+SYSZ_INS_CIJNH = 147
+SYSZ_INS_CLGIJNH = 148
+SYSZ_INS_CLGRJNH = 149
+SYSZ_INS_CLIJNH = 150
+SYSZ_INS_CLRJNH = 151
+SYSZ_INS_CRJNH = 152
+SYSZ_INS_CGIJLE = 153
+SYSZ_INS_CGRJLE = 154
+SYSZ_INS_CIJLE = 155
+SYSZ_INS_CLGIJLE = 156
+SYSZ_INS_CLGRJLE = 157
+SYSZ_INS_CLIJLE = 158
+SYSZ_INS_CLRJLE = 159
+SYSZ_INS_CRJLE = 160
+SYSZ_INS_CGIJNE = 161
+SYSZ_INS_CGRJNE = 162
+SYSZ_INS_CIJNE = 163
+SYSZ_INS_CLGIJNE = 164
+SYSZ_INS_CLGRJNE = 165
+SYSZ_INS_CLIJNE = 166
+SYSZ_INS_CLRJNE = 167
+SYSZ_INS_CRJNE = 168
+SYSZ_INS_CGIJLH = 169
+SYSZ_INS_CGRJLH = 170
+SYSZ_INS_CIJLH = 171
+SYSZ_INS_CLGIJLH = 172
+SYSZ_INS_CLGRJLH = 173
+SYSZ_INS_CLIJLH = 174
+SYSZ_INS_CLRJLH = 175
+SYSZ_INS_CRJLH = 176
+SYSZ_INS_BLR = 177
+SYSZ_INS_BLER = 178
+SYSZ_INS_JLE = 179
+SYSZ_INS_JGLE = 180
+SYSZ_INS_LOCLE = 181
+SYSZ_INS_LOCGLE = 182
+SYSZ_INS_LOCGRLE = 183
+SYSZ_INS_LOCRLE = 184
+SYSZ_INS_STOCLE = 185
+SYSZ_INS_STOCGLE = 186
+SYSZ_INS_BLHR = 187
+SYSZ_INS_JLH = 188
+SYSZ_INS_JGLH = 189
+SYSZ_INS_LOCLH = 190
+SYSZ_INS_LOCGLH = 191
+SYSZ_INS_LOCGRLH = 192
+SYSZ_INS_LOCRLH = 193
+SYSZ_INS_STOCLH = 194
+SYSZ_INS_STOCGLH = 195
+SYSZ_INS_JL = 196
+SYSZ_INS_JGL = 197
+SYSZ_INS_LOCL = 198
+SYSZ_INS_LOCGL = 199
+SYSZ_INS_LOCGRL = 200
+SYSZ_INS_LOCRL = 201
+SYSZ_INS_LOC = 202
+SYSZ_INS_LOCG = 203
+SYSZ_INS_LOCGR = 204
+SYSZ_INS_LOCR = 205
+SYSZ_INS_STOCL = 206
+SYSZ_INS_STOCGL = 207
+SYSZ_INS_BNER = 208
+SYSZ_INS_JNE = 209
+SYSZ_INS_JGNE = 210
+SYSZ_INS_LOCNE = 211
+SYSZ_INS_LOCGNE = 212
+SYSZ_INS_LOCGRNE = 213
+SYSZ_INS_LOCRNE = 214
+SYSZ_INS_STOCNE = 215
+SYSZ_INS_STOCGNE = 216
+SYSZ_INS_BNHR = 217
+SYSZ_INS_BNHER = 218
+SYSZ_INS_JNHE = 219
+SYSZ_INS_JGNHE = 220
+SYSZ_INS_LOCNHE = 221
+SYSZ_INS_LOCGNHE = 222
+SYSZ_INS_LOCGRNHE = 223
+SYSZ_INS_LOCRNHE = 224
+SYSZ_INS_STOCNHE = 225
+SYSZ_INS_STOCGNHE = 226
+SYSZ_INS_JNH = 227
+SYSZ_INS_JGNH = 228
+SYSZ_INS_LOCNH = 229
+SYSZ_INS_LOCGNH = 230
+SYSZ_INS_LOCGRNH = 231
+SYSZ_INS_LOCRNH = 232
+SYSZ_INS_STOCNH = 233
+SYSZ_INS_STOCGNH = 234
+SYSZ_INS_BNLR = 235
+SYSZ_INS_BNLER = 236
+SYSZ_INS_JNLE = 237
+SYSZ_INS_JGNLE = 238
+SYSZ_INS_LOCNLE = 239
+SYSZ_INS_LOCGNLE = 240
+SYSZ_INS_LOCGRNLE = 241
+SYSZ_INS_LOCRNLE = 242
+SYSZ_INS_STOCNLE = 243
+SYSZ_INS_STOCGNLE = 244
+SYSZ_INS_BNLHR = 245
+SYSZ_INS_JNLH = 246
+SYSZ_INS_JGNLH = 247
+SYSZ_INS_LOCNLH = 248
+SYSZ_INS_LOCGNLH = 249
+SYSZ_INS_LOCGRNLH = 250
+SYSZ_INS_LOCRNLH = 251
+SYSZ_INS_STOCNLH = 252
+SYSZ_INS_STOCGNLH = 253
+SYSZ_INS_JNL = 254
+SYSZ_INS_JGNL = 255
+SYSZ_INS_LOCNL = 256
+SYSZ_INS_LOCGNL = 257
+SYSZ_INS_LOCGRNL = 258
+SYSZ_INS_LOCRNL = 259
+SYSZ_INS_STOCNL = 260
+SYSZ_INS_STOCGNL = 261
+SYSZ_INS_BNOR = 262
+SYSZ_INS_JNO = 263
+SYSZ_INS_JGNO = 264
+SYSZ_INS_LOCNO = 265
+SYSZ_INS_LOCGNO = 266
+SYSZ_INS_LOCGRNO = 267
+SYSZ_INS_LOCRNO = 268
+SYSZ_INS_STOCNO = 269
+SYSZ_INS_STOCGNO = 270
+SYSZ_INS_BOR = 271
+SYSZ_INS_JO = 272
+SYSZ_INS_JGO = 273
+SYSZ_INS_LOCO = 274
+SYSZ_INS_LOCGO = 275
+SYSZ_INS_LOCGRO = 276
+SYSZ_INS_LOCRO = 277
+SYSZ_INS_STOCO = 278
+SYSZ_INS_STOCGO = 279
+SYSZ_INS_STOC = 280
+SYSZ_INS_STOCG = 281
+SYSZ_INS_BASR = 282
+SYSZ_INS_BR = 283
+SYSZ_INS_BRAS = 284
+SYSZ_INS_BRASL = 285
+SYSZ_INS_J = 286
+SYSZ_INS_JG = 287
+SYSZ_INS_BRCT = 288
+SYSZ_INS_BRCTG = 289
+SYSZ_INS_C = 290
+SYSZ_INS_CDB = 291
+SYSZ_INS_CDBR = 292
+SYSZ_INS_CDFBR = 293
+SYSZ_INS_CDGBR = 294
+SYSZ_INS_CDLFBR = 295
+SYSZ_INS_CDLGBR = 296
+SYSZ_INS_CEB = 297
+SYSZ_INS_CEBR = 298
+SYSZ_INS_CEFBR = 299
+SYSZ_INS_CEGBR = 300
+SYSZ_INS_CELFBR = 301
+SYSZ_INS_CELGBR = 302
+SYSZ_INS_CFDBR = 303
+SYSZ_INS_CFEBR = 304
+SYSZ_INS_CFI = 305
+SYSZ_INS_CFXBR = 306
+SYSZ_INS_CG = 307
+SYSZ_INS_CGDBR = 308
+SYSZ_INS_CGEBR = 309
+SYSZ_INS_CGF = 310
+SYSZ_INS_CGFI = 311
+SYSZ_INS_CGFR = 312
+SYSZ_INS_CGFRL = 313
+SYSZ_INS_CGH = 314
+SYSZ_INS_CGHI = 315
+SYSZ_INS_CGHRL = 316
+SYSZ_INS_CGHSI = 317
+SYSZ_INS_CGR = 318
+SYSZ_INS_CGRL = 319
+SYSZ_INS_CGXBR = 320
+SYSZ_INS_CH = 321
+SYSZ_INS_CHF = 322
+SYSZ_INS_CHHSI = 323
+SYSZ_INS_CHI = 324
+SYSZ_INS_CHRL = 325
+SYSZ_INS_CHSI = 326
+SYSZ_INS_CHY = 327
+SYSZ_INS_CIH = 328
+SYSZ_INS_CL = 329
+SYSZ_INS_CLC = 330
+SYSZ_INS_CLFDBR = 331
+SYSZ_INS_CLFEBR = 332
+SYSZ_INS_CLFHSI = 333
+SYSZ_INS_CLFI = 334
+SYSZ_INS_CLFXBR = 335
+SYSZ_INS_CLG = 336
+SYSZ_INS_CLGDBR = 337
+SYSZ_INS_CLGEBR = 338
+SYSZ_INS_CLGF = 339
+SYSZ_INS_CLGFI = 340
+SYSZ_INS_CLGFR = 341
+SYSZ_INS_CLGFRL = 342
+SYSZ_INS_CLGHRL = 343
+SYSZ_INS_CLGHSI = 344
+SYSZ_INS_CLGR = 345
+SYSZ_INS_CLGRL = 346
+SYSZ_INS_CLGXBR = 347
+SYSZ_INS_CLHF = 348
+SYSZ_INS_CLHHSI = 349
+SYSZ_INS_CLHRL = 350
+SYSZ_INS_CLI = 351
+SYSZ_INS_CLIH = 352
+SYSZ_INS_CLIY = 353
+SYSZ_INS_CLR = 354
+SYSZ_INS_CLRL = 355
+SYSZ_INS_CLST = 356
+SYSZ_INS_CLY = 357
+SYSZ_INS_CPSDR = 358
+SYSZ_INS_CR = 359
+SYSZ_INS_CRL = 360
+SYSZ_INS_CS = 361
+SYSZ_INS_CSG = 362
+SYSZ_INS_CSY = 363
+SYSZ_INS_CXBR = 364
+SYSZ_INS_CXFBR = 365
+SYSZ_INS_CXGBR = 366
+SYSZ_INS_CXLFBR = 367
+SYSZ_INS_CXLGBR = 368
+SYSZ_INS_CY = 369
+SYSZ_INS_DDB = 370
+SYSZ_INS_DDBR = 371
+SYSZ_INS_DEB = 372
+SYSZ_INS_DEBR = 373
+SYSZ_INS_DL = 374
+SYSZ_INS_DLG = 375
+SYSZ_INS_DLGR = 376
+SYSZ_INS_DLR = 377
+SYSZ_INS_DSG = 378
+SYSZ_INS_DSGF = 379
+SYSZ_INS_DSGFR = 380
+SYSZ_INS_DSGR = 381
+SYSZ_INS_DXBR = 382
+SYSZ_INS_EAR = 383
+SYSZ_INS_FIDBR = 384
+SYSZ_INS_FIDBRA = 385
+SYSZ_INS_FIEBR = 386
+SYSZ_INS_FIEBRA = 387
+SYSZ_INS_FIXBR = 388
+SYSZ_INS_FIXBRA = 389
+SYSZ_INS_FLOGR = 390
+SYSZ_INS_IC = 391
+SYSZ_INS_ICY = 392
+SYSZ_INS_IIHF = 393
+SYSZ_INS_IIHH = 394
+SYSZ_INS_IIHL = 395
+SYSZ_INS_IILF = 396
+SYSZ_INS_IILH = 397
+SYSZ_INS_IILL = 398
+SYSZ_INS_IPM = 399
+SYSZ_INS_L = 400
+SYSZ_INS_LA = 401
+SYSZ_INS_LAA = 402
+SYSZ_INS_LAAG = 403
+SYSZ_INS_LAAL = 404
+SYSZ_INS_LAALG = 405
+SYSZ_INS_LAN = 406
+SYSZ_INS_LANG = 407
+SYSZ_INS_LAO = 408
+SYSZ_INS_LAOG = 409
+SYSZ_INS_LARL = 410
+SYSZ_INS_LAX = 411
+SYSZ_INS_LAXG = 412
+SYSZ_INS_LAY = 413
+SYSZ_INS_LB = 414
+SYSZ_INS_LBH = 415
+SYSZ_INS_LBR = 416
+SYSZ_INS_LCDBR = 417
+SYSZ_INS_LCEBR = 418
+SYSZ_INS_LCGFR = 419
+SYSZ_INS_LCGR = 420
+SYSZ_INS_LCR = 421
+SYSZ_INS_LCXBR = 422
+SYSZ_INS_LD = 423
+SYSZ_INS_LDEB = 424
+SYSZ_INS_LDEBR = 425
+SYSZ_INS_LDGR = 426
+SYSZ_INS_LDR = 427
+SYSZ_INS_LDXBR = 428
+SYSZ_INS_LDY = 429
+SYSZ_INS_LE = 430
+SYSZ_INS_LEDBR = 431
+SYSZ_INS_LER = 432
+SYSZ_INS_LEXBR = 433
+SYSZ_INS_LEY = 434
+SYSZ_INS_LFH = 435
+SYSZ_INS_LG = 436
+SYSZ_INS_LGB = 437
+SYSZ_INS_LGBR = 438
+SYSZ_INS_LGDR = 439
+SYSZ_INS_LGF = 440
+SYSZ_INS_LGFI = 441
+SYSZ_INS_LGFR = 442
+SYSZ_INS_LGFRL = 443
+SYSZ_INS_LGH = 444
+SYSZ_INS_LGHI = 445
+SYSZ_INS_LGHR = 446
+SYSZ_INS_LGHRL = 447
+SYSZ_INS_LGR = 448
+SYSZ_INS_LGRL = 449
+SYSZ_INS_LH = 450
+SYSZ_INS_LHH = 451
+SYSZ_INS_LHI = 452
+SYSZ_INS_LHR = 453
+SYSZ_INS_LHRL = 454
+SYSZ_INS_LHY = 455
+SYSZ_INS_LLC = 456
+SYSZ_INS_LLCH = 457
+SYSZ_INS_LLCR = 458
+SYSZ_INS_LLGC = 459
+SYSZ_INS_LLGCR = 460
+SYSZ_INS_LLGF = 461
+SYSZ_INS_LLGFR = 462
+SYSZ_INS_LLGFRL = 463
+SYSZ_INS_LLGH = 464
+SYSZ_INS_LLGHR = 465
+SYSZ_INS_LLGHRL = 466
+SYSZ_INS_LLH = 467
+SYSZ_INS_LLHH = 468
+SYSZ_INS_LLHR = 469
+SYSZ_INS_LLHRL = 470
+SYSZ_INS_LLIHF = 471
+SYSZ_INS_LLIHH = 472
+SYSZ_INS_LLIHL = 473
+SYSZ_INS_LLILF = 474
+SYSZ_INS_LLILH = 475
+SYSZ_INS_LLILL = 476
+SYSZ_INS_LMG = 477
+SYSZ_INS_LNDBR = 478
+SYSZ_INS_LNEBR = 479
+SYSZ_INS_LNGFR = 480
+SYSZ_INS_LNGR = 481
+SYSZ_INS_LNR = 482
+SYSZ_INS_LNXBR = 483
+SYSZ_INS_LPDBR = 484
+SYSZ_INS_LPEBR = 485
+SYSZ_INS_LPGFR = 486
+SYSZ_INS_LPGR = 487
+SYSZ_INS_LPR = 488
+SYSZ_INS_LPXBR = 489
+SYSZ_INS_LR = 490
+SYSZ_INS_LRL = 491
+SYSZ_INS_LRV = 492
+SYSZ_INS_LRVG = 493
+SYSZ_INS_LRVGR = 494
+SYSZ_INS_LRVR = 495
+SYSZ_INS_LT = 496
+SYSZ_INS_LTDBR = 497
+SYSZ_INS_LTEBR = 498
+SYSZ_INS_LTG = 499
+SYSZ_INS_LTGF = 500
+SYSZ_INS_LTGFR = 501
+SYSZ_INS_LTGR = 502
+SYSZ_INS_LTR = 503
+SYSZ_INS_LTXBR = 504
+SYSZ_INS_LXDB = 505
+SYSZ_INS_LXDBR = 506
+SYSZ_INS_LXEB = 507
+SYSZ_INS_LXEBR = 508
+SYSZ_INS_LXR = 509
+SYSZ_INS_LY = 510
+SYSZ_INS_LZDR = 511
+SYSZ_INS_LZER = 512
+SYSZ_INS_LZXR = 513
+SYSZ_INS_MADB = 514
+SYSZ_INS_MADBR = 515
+SYSZ_INS_MAEB = 516
+SYSZ_INS_MAEBR = 517
+SYSZ_INS_MDB = 518
+SYSZ_INS_MDBR = 519
+SYSZ_INS_MDEB = 520
+SYSZ_INS_MDEBR = 521
+SYSZ_INS_MEEB = 522
+SYSZ_INS_MEEBR = 523
+SYSZ_INS_MGHI = 524
+SYSZ_INS_MH = 525
+SYSZ_INS_MHI = 526
+SYSZ_INS_MHY = 527
+SYSZ_INS_MLG = 528
+SYSZ_INS_MLGR = 529
+SYSZ_INS_MS = 530
+SYSZ_INS_MSDB = 531
+SYSZ_INS_MSDBR = 532
+SYSZ_INS_MSEB = 533
+SYSZ_INS_MSEBR = 534
+SYSZ_INS_MSFI = 535
+SYSZ_INS_MSG = 536
+SYSZ_INS_MSGF = 537
+SYSZ_INS_MSGFI = 538
+SYSZ_INS_MSGFR = 539
+SYSZ_INS_MSGR = 540
+SYSZ_INS_MSR = 541
+SYSZ_INS_MSY = 542
+SYSZ_INS_MVC = 543
+SYSZ_INS_MVGHI = 544
+SYSZ_INS_MVHHI = 545
+SYSZ_INS_MVHI = 546
+SYSZ_INS_MVI = 547
+SYSZ_INS_MVIY = 548
+SYSZ_INS_MVST = 549
+SYSZ_INS_MXBR = 550
+SYSZ_INS_MXDB = 551
+SYSZ_INS_MXDBR = 552
+SYSZ_INS_N = 553
+SYSZ_INS_NC = 554
+SYSZ_INS_NG = 555
+SYSZ_INS_NGR = 556
+SYSZ_INS_NGRK = 557
+SYSZ_INS_NI = 558
+SYSZ_INS_NIHF = 559
+SYSZ_INS_NIHH = 560
+SYSZ_INS_NIHL = 561
+SYSZ_INS_NILF = 562
+SYSZ_INS_NILH = 563
+SYSZ_INS_NILL = 564
+SYSZ_INS_NIY = 565
+SYSZ_INS_NR = 566
+SYSZ_INS_NRK = 567
+SYSZ_INS_NY = 568
+SYSZ_INS_O = 569
+SYSZ_INS_OC = 570
+SYSZ_INS_OG = 571
+SYSZ_INS_OGR = 572
+SYSZ_INS_OGRK = 573
+SYSZ_INS_OI = 574
+SYSZ_INS_OIHF = 575
+SYSZ_INS_OIHH = 576
+SYSZ_INS_OIHL = 577
+SYSZ_INS_OILF = 578
+SYSZ_INS_OILH = 579
+SYSZ_INS_OILL = 580
+SYSZ_INS_OIY = 581
+SYSZ_INS_OR = 582
+SYSZ_INS_ORK = 583
+SYSZ_INS_OY = 584
+SYSZ_INS_PFD = 585
+SYSZ_INS_PFDRL = 586
+SYSZ_INS_RISBG = 587
+SYSZ_INS_RISBHG = 588
+SYSZ_INS_RISBLG = 589
+SYSZ_INS_RLL = 590
+SYSZ_INS_RLLG = 591
+SYSZ_INS_RNSBG = 592
+SYSZ_INS_ROSBG = 593
+SYSZ_INS_RXSBG = 594
+SYSZ_INS_S = 595
+SYSZ_INS_SDB = 596
+SYSZ_INS_SDBR = 597
+SYSZ_INS_SEB = 598
+SYSZ_INS_SEBR = 599
+SYSZ_INS_SG = 600
+SYSZ_INS_SGF = 601
+SYSZ_INS_SGFR = 602
+SYSZ_INS_SGR = 603
+SYSZ_INS_SGRK = 604
+SYSZ_INS_SH = 605
+SYSZ_INS_SHY = 606
+SYSZ_INS_SL = 607
+SYSZ_INS_SLB = 608
+SYSZ_INS_SLBG = 609
+SYSZ_INS_SLBR = 610
+SYSZ_INS_SLFI = 611
+SYSZ_INS_SLG = 612
+SYSZ_INS_SLBGR = 613
+SYSZ_INS_SLGF = 614
+SYSZ_INS_SLGFI = 615
+SYSZ_INS_SLGFR = 616
+SYSZ_INS_SLGR = 617
+SYSZ_INS_SLGRK = 618
+SYSZ_INS_SLL = 619
+SYSZ_INS_SLLG = 620
+SYSZ_INS_SLLK = 621
+SYSZ_INS_SLR = 622
+SYSZ_INS_SLRK = 623
+SYSZ_INS_SLY = 624
+SYSZ_INS_SQDB = 625
+SYSZ_INS_SQDBR = 626
+SYSZ_INS_SQEB = 627
+SYSZ_INS_SQEBR = 628
+SYSZ_INS_SQXBR = 629
+SYSZ_INS_SR = 630
+SYSZ_INS_SRA = 631
+SYSZ_INS_SRAG = 632
+SYSZ_INS_SRAK = 633
+SYSZ_INS_SRK = 634
+SYSZ_INS_SRL = 635
+SYSZ_INS_SRLG = 636
+SYSZ_INS_SRLK = 637
+SYSZ_INS_SRST = 638
+SYSZ_INS_ST = 639
+SYSZ_INS_STC = 640
+SYSZ_INS_STCH = 641
+SYSZ_INS_STCY = 642
+SYSZ_INS_STD = 643
+SYSZ_INS_STDY = 644
+SYSZ_INS_STE = 645
+SYSZ_INS_STEY = 646
+SYSZ_INS_STFH = 647
+SYSZ_INS_STG = 648
+SYSZ_INS_STGRL = 649
+SYSZ_INS_STH = 650
+SYSZ_INS_STHH = 651
+SYSZ_INS_STHRL = 652
+SYSZ_INS_STHY = 653
+SYSZ_INS_STMG = 654
+SYSZ_INS_STRL = 655
+SYSZ_INS_STRV = 656
+SYSZ_INS_STRVG = 657
+SYSZ_INS_STY = 658
+SYSZ_INS_SXBR = 659
+SYSZ_INS_SY = 660
+SYSZ_INS_TM = 661
+SYSZ_INS_TMHH = 662
+SYSZ_INS_TMHL = 663
+SYSZ_INS_TMLH = 664
+SYSZ_INS_TMLL = 665
+SYSZ_INS_TMY = 666
+SYSZ_INS_X = 667
+SYSZ_INS_XC = 668
+SYSZ_INS_XG = 669
+SYSZ_INS_XGR = 670
+SYSZ_INS_XGRK = 671
+SYSZ_INS_XI = 672
+SYSZ_INS_XIHF = 673
+SYSZ_INS_XILF = 674
+SYSZ_INS_XIY = 675
+SYSZ_INS_XR = 676
+SYSZ_INS_XRK = 677
+SYSZ_INS_XY = 678
+SYSZ_INS_MAX = 679
+
+# Group of SystemZ instructions
+
+SYSZ_GRP_INVALID = 0
+SYSZ_GRP_FEATUREDISTINCTOPS = 1
+SYSZ_GRP_FEATUREFPEXTENSION = 2
+SYSZ_GRP_FEATUREHIGHWORD = 3
+SYSZ_GRP_FEATUREINTERLOCKEDACCESS1 = 4
+SYSZ_GRP_FEATURELOADSTOREONCOND = 5
+SYSZ_GRP_JUMP = 6
+SYSZ_GRP_MAX = 7
diff --git a/bindings/python/pyx/ccapstone.pyx b/bindings/python/pyx/ccapstone.pyx
index 2a048e4..c116e53 100644
--- a/bindings/python/pyx/ccapstone.pyx
+++ b/bindings/python/pyx/ccapstone.pyx
@@ -2,7 +2,7 @@
 
 cimport pyx.ccapstone as cc
 import capstone, ctypes
-from capstone import arm, x86, mips, ppc, arm64, CsError
+from capstone import arm, x86, mips, ppc, arm64, sparc, systemz, CsError
 
 _diet = cc.cs_support(capstone.CS_SUPPORT_DIET)
 
@@ -36,6 +36,10 @@
         elif arch == capstone.CS_ARCH_PPC:
             (self.bc, self.bh, self.update_cr0, self.operands) = \
                 ppc.get_arch_info(detail.arch.ppc)
+        elif arch == capstone.CS_ARCH_SPARC:
+            (self.cc, self.hint, self.operands) = sparc.get_arch_info(detail.arch.sparc)
+        elif arch == capstone.CS_ARCH_SYSZ:
+            (self.cc, self.operands) = systemz.get_arch_info(detail.arch.sysz)
 
 
 cdef class CsInsn(object):
@@ -100,6 +104,9 @@
     # return list of all implicit registers being read.
     @property
     def regs_read(self):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide @regs_read
             raise CsError(capstone.CS_ERR_DIET)
@@ -113,6 +120,9 @@
     # return list of all implicit registers being modified
     @property
     def regs_write(self):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide @regs_write
             raise CsError(capstone.CS_ERR_DIET)
@@ -126,6 +136,9 @@
     # return list of semantic groups this instruction belongs to.
     @property
     def groups(self):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide @groups
             raise CsError(capstone.CS_ERR_DIET)
@@ -142,6 +155,9 @@
 
     # get the register name, given the register ID
     def reg_name(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide register's name
             raise CsError(capstone.CS_ERR_DIET)
@@ -158,6 +174,9 @@
 
     # verify if this insn belong to group with id as @group_id
     def group(self, group_id):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide @groups
             raise CsError(capstone.CS_ERR_DIET)
@@ -166,6 +185,9 @@
 
     # verify if this instruction implicitly read register @reg_id
     def reg_read(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide @regs_read
             raise CsError(capstone.CS_ERR_DIET)
@@ -174,6 +196,9 @@
 
     # verify if this instruction implicitly modified register @reg_id
     def reg_write(self, reg_id):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         if _diet:
             # Diet engine cannot provide @regs_write
             raise CsError(capstone.CS_ERR_DIET)
@@ -182,6 +207,9 @@
 
     # return number of operands having same operand type @op_type
     def op_count(self, op_type):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         c = 0
         for op in self._detail.operands:
             if op.type == op_type:
@@ -190,6 +218,9 @@
 
     # get the operand at position @position of all operands having the same type @op_type
     def op_find(self, op_type, position):
+        if self._raw.id == 0:
+            raise CsError(capstone.CS_ERR_SKIPDATA)
+
         c = 0
         for op in self._detail.operands:
             if op.type == op_type:
@@ -271,7 +302,7 @@
 
     archs = { "arm": capstone.CS_ARCH_ARM, "arm64": capstone.CS_ARCH_ARM64, \
         "mips": capstone.CS_ARCH_MIPS, "ppc": capstone.CS_ARCH_PPC, \
-        "x86": capstone.CS_ARCH_X86 }
+        "sparc": capstone.CS_ARCH_SPARC, "sysz": capstone.CS_ARCH_SYSZ)
 
     all_archs = ""
     keys = archs.keys()
@@ -280,6 +311,11 @@
         if cc.cs_support(archs[k]):
             all_archs += "-%s" %k
 
+    if cs_support(CS_ARCH_X86):
+        all_archs += "-x86"
+        if cs_support(CS_SUPPORT_X86_REDUCE):
+            all_archs += "_compact"
+
     (major, minor, _combined) = capstone.cs_version()
 
     return "Cython-%s%s-c%u.%u-b%u.%u" %(diet, all_archs, major, minor, capstone.CS_API_MAJOR, capstone.CS_API_MINOR)
diff --git a/bindings/python/setup.py b/bindings/python/setup.py
index 74750c1..fbf7ce5 100644
--- a/bindings/python/setup.py
+++ b/bindings/python/setup.py
@@ -2,7 +2,7 @@
 
 from distutils.core import setup
 
-VERSION = '2.1'
+VERSION = '2.2'
 
 # clean package directory first
 #import os.path, shutil, sys
diff --git a/bindings/python/setup_cython.py b/bindings/python/setup_cython.py
index c0f3fd5..5d8b056 100644
--- a/bindings/python/setup_cython.py
+++ b/bindings/python/setup_cython.py
@@ -3,7 +3,7 @@
 from distutils.command.install_lib import install_lib as _install
 from Cython.Distutils import build_ext
 
-VERSION = '2.1'
+VERSION = '2.2'
 
 compile_args = ['-O3', '-fomit-frame-pointer']
 
diff --git a/bindings/python/test.py b/bindings/python/test.py
index 1408a69..f471f3f 100755
--- a/bindings/python/test.py
+++ b/bindings/python/test.py
@@ -7,6 +7,7 @@
 import sys
 _python3 = sys.version_info.major == 3
 
+
 X86_CODE16 = b"\x8d\x4c\x32\x08\x01\xd8\x81\xc6\x34\x12\x00\x00"
 X86_CODE32 = b"\x8d\x4c\x32\x08\x01\xd8\x81\xc6\x34\x12\x00\x00"
 X86_CODE64 = b"\x55\x48\x8b\x05\xb8\x13\x00\x00"
@@ -18,6 +19,9 @@
 MIPS_CODE2 = b"\x56\x34\x21\x34\xc2\x17\x01\x00"
 ARM64_CODE = b"\x21\x7c\x02\x9b\x21\x7c\x00\x53\x00\x40\x21\x4b\xe1\x0b\x40\xb9"
 PPC_CODE = b"\x80\x20\x00\x00\x80\x3f\x00\x00\x10\x43\x23\x0e\xd0\x44\x00\x80\x4c\x43\x22\x02\x2d\x03\x00\x80\x7c\x43\x20\x14\x7c\x43\x20\x93\x4f\x20\x00\x21\x4c\xc8\x00\x21"
+SPARC_CODE = b"\x80\xa0\x40\x02\x85\xc2\x60\x08\x85\xe8\x20\x01\x81\xe8\x00\x00\x90\x10\x20\x01\xd5\xf6\x10\x16\x21\x00\x00\x0a\x86\x00\x40\x02\x01\x00\x00\x00\x12\xbf\xff\xff\x10\xbf\xff\xff\xa0\x02\x00\x09\x0d\xbf\xff\xff\xd4\x20\x60\x00\xd4\x4e\x00\x16\x2a\xc2\x80\x03"
+SPARCV9_CODE = b"\x81\xa8\x0a\x24\x89\xa0\x10\x20\x89\xa0\x1a\x60\x89\xa0\x00\xe0"
+SYSZ_CODE = b"\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
 
 all_tests = (
         (CS_ARCH_X86, CS_MODE_16, X86_CODE16, "X86 16bit (Intel syntax)", 0),
@@ -33,6 +37,9 @@
         (CS_ARCH_ARM64, CS_MODE_ARM, ARM64_CODE, "ARM-64", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, PPC_CODE, "PPC-64", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, PPC_CODE, "PPC-64, print register with number only", CS_OPT_SYNTAX_NOREGNAME),
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN, SPARC_CODE, "Sparc", 0),
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN + CS_MODE_V9, SPARCV9_CODE, "SparcV9", 0),
+        (CS_ARCH_SYSZ, 0, SYSZ_CODE, "SystemZ", 0),
 )
 
 
diff --git a/bindings/python/test_arm.py b/bindings/python/test_arm.py
index bd9ceac..afebfcf 100755
--- a/bindings/python/test_arm.py
+++ b/bindings/python/test_arm.py
@@ -25,6 +25,10 @@
         # print address, mnemonic and operands
         print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
 
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
         if len(insn.operands) > 0:
             print("\top_count: %u" % len(insn.operands))
             c = 0
diff --git a/bindings/python/test_arm64.py b/bindings/python/test_arm64.py
index 9782b69..651055b 100755
--- a/bindings/python/test_arm64.py
+++ b/bindings/python/test_arm64.py
@@ -17,6 +17,10 @@
         # print address, mnemonic and operands
         print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
 
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
         if len(insn.operands) > 0:
             print("\top_count: %u" % len(insn.operands))
             c = -1
diff --git a/bindings/python/test_detail.py b/bindings/python/test_detail.py
index 4edaae4..04b8e73 100755
--- a/bindings/python/test_detail.py
+++ b/bindings/python/test_detail.py
@@ -15,6 +15,9 @@
 MIPS_CODE2 = b"\x56\x34\x21\x34\xc2\x17\x01\x00"
 ARM64_CODE = b"\x21\x7c\x02\x9b\x21\x7c\x00\x53\x00\x40\x21\x4b\xe1\x0b\x40\xb9"
 PPC_CODE = b"\x80\x20\x00\x00\x80\x3f\x00\x00\x10\x43\x23\x0e\xd0\x44\x00\x80\x4c\x43\x22\x02\x2d\x03\x00\x80\x7c\x43\x20\x14\x7c\x43\x20\x93\x4f\x20\x00\x21\x4c\xc8\x00\x21"
+SPARC_CODE = b"\x80\xa0\x40\x02\x85\xc2\x60\x08\x85\xe8\x20\x01\x81\xe8\x00\x00\x90\x10\x20\x01\xd5\xf6\x10\x16\x21\x00\x00\x0a\x86\x00\x40\x02\x01\x00\x00\x00\x12\xbf\xff\xff\x10\xbf\xff\xff\xa0\x02\x00\x09\x0d\xbf\xff\xff\xd4\x20\x60\x00\xd4\x4e\x00\x16\x2a\xc2\x80\x03"
+SPARCV9_CODE = b"\x81\xa8\x0a\x24\x89\xa0\x10\x20\x89\xa0\x1a\x60\x89\xa0\x00\xe0"
+SYSZ_CODE = b"\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
 
 all_tests = (
         (CS_ARCH_X86, CS_MODE_16, X86_CODE16, "X86 16bit (Intel syntax)", 0),
@@ -29,12 +32,19 @@
         (CS_ARCH_MIPS, CS_MODE_32 + CS_MODE_BIG_ENDIAN, MIPS_CODE, "MIPS-32 (Big-endian)", 0),
         (CS_ARCH_MIPS, CS_MODE_64 + CS_MODE_LITTLE_ENDIAN, MIPS_CODE2, "MIPS-64-EL (Little-endian)", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, PPC_CODE, "PPC-64", 0),
-        )
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN, SPARC_CODE, "Sparc", 0),
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN + CS_MODE_V9, SPARCV9_CODE, "SparcV9", 0),
+        (CS_ARCH_SYSZ, 0, SYSZ_CODE, "SystemZ", 0),
+)
 
 
 # ## Test class Cs
 def test_class():
     def print_detail(insn):
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
         if len(insn.regs_read) > 0:
             print("\tImplicit registers read: ", end=''),
             for m in insn.regs_read:
diff --git a/bindings/python/test_mips.py b/bindings/python/test_mips.py
index 87b01b9..ec1f1a3 100755
--- a/bindings/python/test_mips.py
+++ b/bindings/python/test_mips.py
@@ -20,6 +20,10 @@
         # print address, mnemonic and operands
         print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
 
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
         if len(insn.operands) > 0:
             print("\top_count: %u" % len(insn.operands))
             c = -1
diff --git a/bindings/python/test_ppc.py b/bindings/python/test_ppc.py
index 74265a1..cb005b8 100755
--- a/bindings/python/test_ppc.py
+++ b/bindings/python/test_ppc.py
@@ -17,6 +17,10 @@
         # print address, mnemonic and operands
         print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
 
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
         if len(insn.operands) > 0:
             print("\top_count: %u" % len(insn.operands))
             c = 0
diff --git a/bindings/python/test_skipdata.py b/bindings/python/test_skipdata.py
new file mode 100755
index 0000000..9f23678
--- /dev/null
+++ b/bindings/python/test_skipdata.py
@@ -0,0 +1,74 @@
+#!/usr/bin/env python
+
+# Capstone Python bindings, by Nguyen Anh Quynnh <aquynh@gmail.com>
+
+from __future__ import print_function
+from capstone import *
+import binascii
+
+from test import to_x, to_hex, to_x_32
+
+X86_CODE32 = b"\x8d\x4c\x32\x08\x01\xd8\x81\xc6\x34\x12\x00\x00\x00\x91\x92"
+RANDOM_CODE = b"\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
+
+all_tests = (
+        (CS_ARCH_X86, CS_MODE_32, X86_CODE32, "X86 32 (Intel syntax)", 0),
+        (CS_ARCH_ARM, CS_MODE_ARM, RANDOM_CODE, "Arm", 0),
+)
+
+
+# ## Test cs_disasm_quick()
+def test_cs_disasm_quick():
+    for (arch, mode, code, comment, syntax) in all_tests:
+        print('*' * 40)
+        print("Platform: %s" % comment)
+        print("Disasm:"),
+        print(to_hex(code))
+        for insn in cs_disasm_quick(arch, mode, code, 0x1000):
+            print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
+        print
+
+
+# Sample callback for SKIPDATA option
+def testcb(offset, userdata):
+    # always skip 2 bytes of data
+    return 2
+
+
+# ## Test class Cs
+def test_class():
+    for (arch, mode, code, comment, syntax) in all_tests:
+        print('*' * 16)
+        print("Platform: %s" %comment)
+        print("Code: %s" % to_hex(code))
+        print("Disasm:")
+
+        try:
+            md = Cs(arch, mode)
+
+            if syntax != 0:
+                md.syntax = syntax
+
+            md.skipdata = True
+
+            # Default "data" instruction's name is ".byte". To rename it to "db", just uncomment
+            # the code below.
+            # md.skipdata_setup = ("db", None, None)
+            # NOTE: This example ignores SKIPDATA's callback (first None) & user_data (second None)
+
+            # To customize the SKIPDATA callback, uncomment the line below.
+            # md.skipdata_setup = (".db", CS_SKIPDATA_CALLBACK(testcb), None)
+
+            for insn in md.disasm(code, 0x1000):
+                #bytes = binascii.hexlify(insn.bytes)
+                #print("0x%x:\t%s\t%s\t// hex-code: %s" %(insn.address, insn.mnemonic, insn.op_str, bytes))
+                print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
+
+            print("0x%x:" % (insn.address + insn.size))
+            print
+        except CsError as e:
+            print("ERROR: %s" % e)
+
+
+if __name__ == '__main__':
+    test_class()
diff --git a/bindings/python/test_sparc.py b/bindings/python/test_sparc.py
new file mode 100755
index 0000000..5788916
--- /dev/null
+++ b/bindings/python/test_sparc.py
@@ -0,0 +1,70 @@
+#!/usr/bin/env python
+
+# Capstone Python bindings, by Nguyen Anh Quynnh <aquynh@gmail.com>
+
+from __future__ import print_function
+from capstone import *
+from capstone.sparc import *
+
+from test import to_x, to_hex, to_x_32
+
+SPARC_CODE = b"\x80\xa0\x40\x02\x85\xc2\x60\x08\x85\xe8\x20\x01\x81\xe8\x00\x00\x90\x10\x20\x01\xd5\xf6\x10\x16\x21\x00\x00\x0a\x86\x00\x40\x02\x01\x00\x00\x00\x12\xbf\xff\xff\x10\xbf\xff\xff\xa0\x02\x00\x09\x0d\xbf\xff\xff\xd4\x20\x60\x00\xd4\x4e\x00\x16\x2a\xc2\x80\x03"
+SPARCV9_CODE = b"\x81\xa8\x0a\x24\x89\xa0\x10\x20\x89\xa0\x1a\x60\x89\xa0\x00\xe0"
+
+all_tests = (
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN, SPARC_CODE, "Sparc"),
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN+CS_MODE_V9, SPARCV9_CODE, "SparcV9"),
+)
+
+# ## Test class Cs
+def test_class():
+    def print_insn_detail(insn):
+        # print address, mnemonic and operands
+        print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
+
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
+        if len(insn.operands) > 0:
+            print("\top_count: %u" % len(insn.operands))
+            c = 0
+            for i in insn.operands:
+                if i.type == SPARC_OP_REG:
+                    print("\t\toperands[%u].type: REG = %s" % (c, insn.reg_name(i.reg)))
+                if i.type == SPARC_OP_IMM:
+                    print("\t\toperands[%u].type: IMM = 0x%s" % (c, to_x_32(i.imm)))
+                if i.type == SPARC_OP_MEM:
+                    print("\t\toperands[%u].type: MEM" % c)
+                    if i.mem.base != 0:
+                        print("\t\t\toperands[%u].mem.base: REG = %s" \
+                            % (c, insn.reg_name(i.mem.base)))
+                    if i.mem.disp != 0:
+                        print("\t\t\toperands[%u].mem.disp: 0x%s" \
+                            % (c, to_x_32(i.mem.disp)))
+                c += 1
+
+        if insn.cc:
+            print("\tConditional code: %u" % insn.cc)
+        if insn.hint:
+            print("\tBranch hint: %u" % insn.hint)
+
+    for (arch, mode, code, comment) in all_tests:
+        print("*" * 16)
+        print("Platform: %s" % comment)
+        print("Code: %s" % to_hex(code))
+        print("Disasm:")
+
+        try:
+            md = Cs(arch, mode)
+            md.detail = True
+            for insn in md.disasm(code, 0x1000):
+                print_insn_detail(insn)
+                print
+            print("0x%x:\n" % (insn.address + insn.size))
+        except CsError as e:
+            print("ERROR: %s" %e)
+
+
+if __name__ == '__main__':
+    test_class()
diff --git a/bindings/python/test_systemz.py b/bindings/python/test_systemz.py
new file mode 100755
index 0000000..0715880
--- /dev/null
+++ b/bindings/python/test_systemz.py
@@ -0,0 +1,74 @@
+#!/usr/bin/env python
+
+# Capstone Python bindings, by Nguyen Anh Quynnh <aquynh@gmail.com>
+
+from __future__ import print_function
+from capstone import *
+from capstone.systemz import *
+
+from test import to_x, to_hex, to_x_32
+
+SYSZ_CODE = b"\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
+
+all_tests = (
+        (CS_ARCH_SYSZ, 0, SYSZ_CODE, "SystemZ"),
+)
+
+# ## Test class Cs
+def test_class():
+    def print_insn_detail(insn):
+        # print address, mnemonic and operands
+        print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
+
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
+        if len(insn.operands) > 0:
+            print("\top_count: %u" % len(insn.operands))
+            c = 0
+            for i in insn.operands:
+                if i.type == SYSZ_OP_REG:
+                    print("\t\toperands[%u].type: REG = %s" % (c, insn.reg_name(i.reg)))
+                if i.type == SYSZ_OP_ACREG:
+                    print("\t\toperands[%u].type: ACREG = %u" % (c, i.reg))
+                if i.type == SYSZ_OP_IMM:
+                    print("\t\toperands[%u].type: IMM = 0x%s" % (c, to_x(i.imm)))
+                if i.type == SYSZ_OP_MEM:
+                    print("\t\toperands[%u].type: MEM" % c)
+                    if i.mem.base != 0:
+                        print("\t\t\toperands[%u].mem.base: REG = %s" \
+                            % (c, insn.reg_name(i.mem.base)))
+                    if i.mem.index != 0:
+                        print("\t\t\toperands[%u].mem.index: REG = %s" \
+                            % (c, insn.reg_name(i.mem.index)))
+                    if i.mem.length != 0:
+                        print("\t\t\toperands[%u].mem.length: 0x%s" \
+                            % (c, to_x(i.mem.length)))
+                    if i.mem.disp != 0:
+                        print("\t\t\toperands[%u].mem.disp: 0x%s" \
+                            % (c, to_x(i.mem.disp)))
+                c += 1
+
+        if insn.cc:
+            print("\tConditional code: %u" % insn.cc)
+
+    for (arch, mode, code, comment) in all_tests:
+        print("*" * 16)
+        print("Platform: %s" %comment)
+        print("Code: %s" % to_hex(code))
+        print("Disasm:")
+
+        try:
+            md = Cs(arch, mode)
+            md.detail = True
+            for insn in md.disasm(code, 0x1000):
+                print_insn_detail(insn)
+                print
+            print("0x%x:\n" % (insn.address + insn.size))
+        except CsError as e:
+            print("ERROR: %s" %e)
+
+
+if __name__ == '__main__':
+    test_class()
diff --git a/bindings/python/test_x86.py b/bindings/python/test_x86.py
index 05c50ed..5e0f663 100755
--- a/bindings/python/test_x86.py
+++ b/bindings/python/test_x86.py
@@ -29,6 +29,10 @@
         # print address, mnemonic and operands
         print("0x%x:\t%s\t%s" % (insn.address, insn.mnemonic, insn.op_str))
 
+        # "data" instruction generated by SKIPDATA option has no detail
+        if insn.id == 0:
+            return
+
         # print instruction prefix
         print_string_hex("\tPrefix:", insn.prefix)
 
diff --git a/config.mk b/config.mk
index 437c148..46c108d 100644
--- a/config.mk
+++ b/config.mk
@@ -18,6 +18,12 @@
 # Comment out the line below if you don't want to support PowerPC
 CAPSTONE_ARCHS += powerpc
 
+# Comment out the line below if you don't want to support Sparc
+CAPSTONE_ARCHS += sparc
+
+# Comment out the line below if you don't want to support SystemZ
+CAPSTONE_ARCHS += systemz
+
 # Comment out the line below if you don't want to support Intel (16/32/64-bit)
 CAPSTONE_ARCHS += x86
 
@@ -45,3 +51,27 @@
 # will not be updated (i.e empty), thus become irrelevant.
 
 CAPSTONE_DIET = no
+
+
+################################################################################
+# Change 'CAPSTONE_X86_REDUCE = no' to 'CAPSTONE_X86_REDUCE = yes' to remove
+# non-critical instruction sets of X86, making the binary size smaller by ~60%.
+# This is desired in special cases, such as OS kernel, where these kind of
+# instructions are not used.
+#
+# The list of instruction sets to be removed includes:
+# - Floating Point Unit (FPU)
+# - MultiMedia eXtension (MMX)
+# - Streaming SIMD Extensions (SSE)
+# - 3DNow
+# - Advanced Vector Extensions (AVX)
+# - Fused Multiply Add Operations (FMA)
+# - eXtended Operations (XOP)
+# - Transactional Synchronization Extensions (TSX)
+#
+# Due to this removal, the related instructions are nolonger supported.
+#
+# By default, Capstone is compiled with 'CAPSTONE_X86_REDUCE = no',
+# thus supports complete X86 instructions.
+
+CAPSTONE_X86_REDUCE = no
diff --git a/cs.c b/cs.c
index bdacee8..c627657 100644
--- a/cs.c
+++ b/cs.c
@@ -17,6 +17,9 @@
 #define INSN_CACHE_SIZE 8
 #endif
 
+// default SKIPDATA mnemonic
+#define SKIPDATA_MNEM ".byte"
+
 cs_err (*arch_init[MAX_ARCH])(cs_struct *) = { NULL };
 cs_err (*arch_option[MAX_ARCH]) (cs_struct *, cs_opt_type, size_t value) = { NULL };
 void (*arch_destroy[MAX_ARCH]) (cs_struct *) = { NULL };
@@ -26,6 +29,8 @@
 extern void Mips_enable(void);
 extern void X86_enable(void);
 extern void PPC_enable(void);
+extern void Sparc_enable(void);
+extern void SystemZ_enable(void);
 
 static void archs_enable(void)
 {
@@ -43,12 +48,18 @@
 #ifdef CAPSTONE_HAS_MIPS
 	Mips_enable();
 #endif
-#ifdef CAPSTONE_HAS_X86
-	X86_enable();
-#endif
 #ifdef CAPSTONE_HAS_POWERPC
 	PPC_enable();
 #endif
+#ifdef CAPSTONE_HAS_SPARC
+	Sparc_enable();
+#endif
+#ifdef CAPSTONE_HAS_SYSZ
+	SystemZ_enable();
+#endif
+#ifdef CAPSTONE_HAS_X86
+	X86_enable();
+#endif
 
 	initialized = true;
 }
@@ -88,7 +99,8 @@
 	if (query == CS_ARCH_ALL)
 		return all_arch == ((1 << CS_ARCH_ARM) | (1 << CS_ARCH_ARM64) |
 				(1 << CS_ARCH_MIPS) | (1 << CS_ARCH_X86) |
-				(1 << CS_ARCH_PPC));
+				(1 << CS_ARCH_PPC) | (1 << CS_ARCH_SPARC) |
+				(1 << CS_ARCH_SYSZ));
 
 	if ((unsigned int)query < CS_ARCH_MAX)
 		return all_arch & (1 << query);
@@ -101,6 +113,14 @@
 #endif
 	}
 
+	if (query == CS_SUPPORT_X86_REDUCE) {
+#if defined(CAPSTONE_HAS_X86) && defined(CAPSTONE_X86_REDUCE)
+		return true;
+#else
+		return false;
+#endif
+	}
+
 	// unsupported query
 	return false;
 }
@@ -142,6 +162,8 @@
 			return "Different API version between core & binding (CS_ERR_VERSION)";
 		case CS_ERR_DIET:
 			return "Information irrelevant in diet engine (CS_ERR_DIET)";
+		case CS_ERR_SKIPDATA:
+			return "Information irrelevant for 'data' instruction in SKIPDATA mode (CS_ERR_SKIPDATA)";
 	}
 }
 
@@ -170,6 +192,9 @@
 		// by default, do not break instruction into details
 		ud->detail = CS_OPT_OFF;
 
+		// default skipdata setup
+		ud->skipdata_setup.mnemonic = SKIPDATA_MNEM;
+
 		cs_err err = arch_init[ud->arch](ud);
 		if (err) {
 			cs_mem_free(ud);
@@ -270,6 +295,36 @@
 #endif
 }
 
+// how many bytes will we skip when encountering data (CS_OPT_SKIPDATA)?
+// this very much depends on instruction alignment requirement of each arch.
+static uint8_t skipdata_size(cs_struct *handle)
+{
+	switch(handle->arch) {
+		default:
+			// should never reach
+			return -1;
+		case CS_ARCH_ARM:
+			// skip 2 bytes on Thumb mode.
+			if (handle->mode & CS_MODE_THUMB)
+				return 2;
+			// otherwise, skip 4 bytes
+			return 4;
+		case CS_ARCH_ARM64:
+		case CS_ARCH_MIPS:
+		case CS_ARCH_PPC:
+		case CS_ARCH_SPARC:
+			// skip 4 bytes
+			return 4;
+		case CS_ARCH_SYSZ:
+			// SystemZ instruction's length can be 2, 4 or 6 bytes,
+			// so we just skip 2 bytes
+			return 2;
+		case CS_ARCH_X86:
+			// X86 has no restriction on instruction alignment
+			return 1;
+	}
+}
+
 cs_err cs_option(csh ud, cs_opt_type type, size_t value)
 {
 	archs_enable();
@@ -292,9 +347,25 @@
 	if (!handle)
 		return CS_ERR_CSH;
 
-	if (type == CS_OPT_DETAIL) {
-		handle->detail = value;
-		return CS_ERR_OK;
+	switch(type) {
+		default:
+			break;
+		case CS_OPT_DETAIL:
+			handle->detail = value;
+			return CS_ERR_OK;
+		case CS_OPT_SKIPDATA:
+			handle->skipdata = (value == CS_OPT_ON);
+			if (handle->skipdata) {
+				if (handle->skipdata_size == 0) {
+					// set the default skipdata size
+					handle->skipdata_size = skipdata_size(handle);
+				}
+			}
+			return CS_ERR_OK;
+		case CS_OPT_SKIPDATA_SETUP:
+			if (value)
+				handle->skipdata_setup = *((cs_opt_skipdata *)value);
+			return CS_ERR_OK;
 	}
 
 	return arch_option[handle->arch](handle, type, value);
@@ -313,6 +384,27 @@
 		return &cache[f - 1];
 }
 
+// generate @op_str for data instruction of SKIPDATA
+static void skipdata_opstr(char *opstr, const uint8_t *buffer, size_t size)
+{
+	char *p = opstr;
+	int len;
+	size_t i;
+
+	if (!size) {
+		opstr[0] = '\0';
+		return;
+	}
+
+	len = sprintf(p, "0x%02x", buffer[0]);
+	p+= len;
+
+	for(i = 1; i < size; i++) {
+		len = sprintf(p, ", 0x%02x", buffer[i]);
+		p+= len;
+	}
+}
+
 // dynamicly allocate memory to contain disasm insn
 // NOTE: caller must free() the allocated memory itself to avoid memory leaking
 size_t cs_disasm_ex(csh ud, const uint8_t *buffer, size_t size, uint64_t offset, size_t count, cs_insn **insn)
@@ -326,6 +418,9 @@
 	void *total = NULL;
 	size_t total_size = 0;
 	bool r;
+	void *tmp;
+	size_t skipdata_bytes;
+	uint64_t offset_org;
 
 	if (!handle) {
 		// FIXME: how to handle this case:
@@ -340,6 +435,7 @@
 
 	memset(insn_cache, 0, sizeof(insn_cache));
 
+	offset_org = offset;
 	while (size > 0) {
 		MCInst_Init(&mci);
 		mci.csh = handle;
@@ -367,11 +463,8 @@
 
 			if (!handle->check_combine || !handle->check_combine(handle, &insn_cache[f])) {
 				f++;
-
 				if (f == ARR_SIZE(insn_cache)) {
 					// resize total to contain newly disasm insns
-					void *tmp;
-
 					total_size += (sizeof(cs_insn) * INSN_CACHE_SIZE);
 					tmp = cs_mem_realloc(total, total_size);
 					if (tmp == NULL) {	// insufficient memory
@@ -419,8 +512,57 @@
 			}
 		} else	{
 			// encounter a broken instruction
-			// XXX: TODO: JOXEAN continue here
-			break;
+			// if there is no request to skip data, or remaining data is too small,
+			// then bail out
+			if (!handle->skipdata || handle->skipdata_size > size)
+				break;
+
+			if (handle->skipdata_setup.callback) {
+				skipdata_bytes = handle->skipdata_setup.callback(offset - offset_org,
+						handle->skipdata_setup.user_data);
+				if (skipdata_bytes > size)
+					// remaining data is not enough
+					break;
+
+				if (!skipdata_bytes)
+					// user requested not to skip data, so bail out
+					break;
+			} else
+				skipdata_bytes = handle->skipdata_size;
+
+			// we have to skip some amount of data, depending on arch & mode
+			insn_cache[f].id = 0;	// invalid ID for this "data" instruction
+			insn_cache[f].address = offset;
+			insn_cache[f].size = skipdata_bytes;
+			memcpy(insn_cache[f].bytes, buffer, skipdata_bytes);
+			strncpy(insn_cache[f].mnemonic, handle->skipdata_setup.mnemonic,
+					sizeof(insn_cache[f].mnemonic) - 1);
+			skipdata_opstr(insn_cache[f].op_str, buffer, skipdata_bytes);
+			insn_cache[f].detail = NULL;
+
+			f++;
+			if (f == ARR_SIZE(insn_cache)) {
+				// resize total to contain newly disasm insns
+
+				total_size += (sizeof(cs_insn) * INSN_CACHE_SIZE);
+				tmp = cs_mem_realloc(total, total_size);
+				if (tmp == NULL) {	// insufficient memory
+					cs_mem_free(total);
+					handle->errnum = CS_ERR_MEM;
+					return 0;
+				}
+
+				total = tmp;
+				memcpy((void*)((uintptr_t)total + total_size - sizeof(insn_cache)), insn_cache, sizeof(insn_cache));
+
+				// reset f back to 0
+				f = 0;
+			}
+
+			buffer += skipdata_bytes;
+			size -= skipdata_bytes;
+			offset += skipdata_bytes;
+			c++;
 		}
 	}
 
@@ -576,6 +718,16 @@
 				if (insn->detail->ppc.operands[i].type == (ppc_op_type)op_type)
 					count++;
 			break;
+		case CS_ARCH_SPARC:
+			for (i = 0; i < insn->detail->sparc.op_count; i++)
+				if (insn->detail->sparc.operands[i].type == (sparc_op_type)op_type)
+					count++;
+			break;
+		case CS_ARCH_SYSZ:
+			for (i = 0; i < insn->detail->sysz.op_count; i++)
+				if (insn->detail->sysz.operands[i].type == (sysz_op_type)op_type)
+					count++;
+			break;
 	}
 
 	return count;
@@ -641,6 +793,22 @@
 					return i;
 			}
 			break;
+		case CS_ARCH_SPARC:
+			for (i = 0; i < insn->detail->sparc.op_count; i++) {
+				if (insn->detail->sparc.operands[i].type == (sparc_op_type)op_type)
+					count++;
+				if (count == post)
+					return i;
+			}
+			break;
+		case CS_ARCH_SYSZ:
+			for (i = 0; i < insn->detail->sysz.op_count; i++) {
+				if (insn->detail->sysz.operands[i].type == (sysz_op_type)op_type)
+					count++;
+				if (count == post)
+					return i;
+			}
+			break;
 	}
 
 	return -1;
diff --git a/cs_priv.h b/cs_priv.h
index ee1b981..f2fec45 100644
--- a/cs_priv.h
+++ b/cs_priv.h
@@ -25,6 +25,9 @@
 
 typedef void (*CombineInsn_t)(cs_struct *h, cs_insn *insn, cs_insn *prev);
 
+// return register name, given register ID
+typedef char *(*GetRegisterName_t)(unsigned RegNo);
+
 // for ARM only
 typedef struct ARM_ITStatus {
 	unsigned char ITStates[128];	// FIXME
@@ -46,12 +49,16 @@
 	cs_err errnum;
 	ARM_ITStatus ITBlock;	// for Arm only
 	cs_opt_value detail;
-	int syntax;	// asm syntax for simple printer such as PPC
+	int syntax;	// asm syntax for simple printer such as ARM, Mips & PPC
 	bool doing_mem;	// handling memory operand in InstPrinter code
 	unsigned short *insn_cache;	// index caching for mapping.c
 	CheckCombineInsn_t check_combine;
 	CombineInsn_t combine;
+	GetRegisterName_t get_regname;
 	uint8_t prev_prefix;	// save previous prefix for combining instructions - X86 only.
+	bool skipdata;	// set this to True if we skip data when disassembling
+	uint8_t skipdata_size;	// how many bytes to skip
+	cs_opt_skipdata skipdata_setup;	// user-defined skipdata setup
 };
 
 #define MAX_ARCH 8
diff --git a/docs/README b/docs/README
index 1222d4b..f86bd37 100644
--- a/docs/README
+++ b/docs/README
@@ -31,3 +31,11 @@
 * Build embedded engine for firmware/OS kernel.
 
 	http://capstone-engine.org/embed.html
+
+* SKIPDATA mode to keep disassembling after hitting a broken instruction.
+
+	http://capstone-engine.org/skipdata.html
+
+* Build X86-reduce engine for firmware/OS kernel.
+
+	http://capstone-engine.org/x86reduce.html
diff --git a/include/capstone.h b/include/capstone.h
index c3612ca..eb4d6d0 100644
--- a/include/capstone.h
+++ b/include/capstone.h
@@ -21,7 +21,7 @@
 
 // Capstone API version
 #define CS_API_MAJOR 2
-#define CS_API_MINOR 1
+#define CS_API_MINOR 2
 
 // Macro to create combined version which can be compared to
 // result of cs_version() API.
@@ -37,12 +37,22 @@
 	CS_ARCH_MIPS,		// Mips architecture
 	CS_ARCH_X86,		// X86 architecture (including x86 & x86-64)
 	CS_ARCH_PPC,		// PowerPC architecture
+	CS_ARCH_SPARC,		// Sparc architecture
+	CS_ARCH_SYSZ,		// SystemZ architecture
 	CS_ARCH_MAX,
 	CS_ARCH_ALL = 0xFFFF,
 } cs_arch;
 
+// Support value to verify diet mode of the engine.
+// If cs_support(CS_SUPPORT_DIET) return True, the engine was compiled
+// in diet mode.
 #define CS_SUPPORT_DIET (CS_ARCH_ALL + 1)
 
+// Support value to verify X86 reduce mode of the engine.
+// If cs_support(CS_SUPPORT_X86_REDUCE) return True, the engine was compiled
+// in X86 reduce mode.
+#define CS_SUPPORT_X86_REDUCE (CS_ARCH_ALL + 2)
+
 // Mode type
 typedef enum cs_mode {
 	CS_MODE_LITTLE_ENDIAN = 0,	// little endian mode (default mode)
@@ -53,7 +63,7 @@
 	CS_MODE_THUMB = 1 << 4,	// ARM's Thumb mode, including Thumb-2
 	CS_MODE_MICRO = 1 << 4, // MicroMips mode (MIPS architecture)
 	CS_MODE_N64 = 1 << 5, // Nintendo-64 mode (MIPS architecture)
-
+	CS_MODE_V9 = 1 << 4, // SparcV9 mode (Sparc architecture)
 	CS_MODE_BIG_ENDIAN = 1 << 31	// big endian mode
 } cs_mode;
 
@@ -80,24 +90,63 @@
 	CS_OPT_DETAIL,	// Break down instruction structure into details
 	CS_OPT_MODE,	// Change engine's mode at run-time
 	CS_OPT_MEM,	// User-defined dynamic memory related functions
+	CS_OPT_SKIPDATA, // Skip data when disassembling. Then engine is in SKIPDATA mode.
+	CS_OPT_SKIPDATA_SETUP, // Setup user-defined function for SKIPDATA option
 } cs_opt_type;
 
 // Runtime option value (associated with option type above)
 typedef enum cs_opt_value {
-	CS_OPT_OFF = 0,  // Turn OFF an option - default option for CS_OPT_DETAIL.
-	CS_OPT_ON = 3, // Turn ON an option (CS_OPT_DETAIL).
+	CS_OPT_OFF = 0,  // Turn OFF an option - default option of CS_OPT_DETAIL, CS_OPT_SKIPDATA.
+	CS_OPT_ON = 3, // Turn ON an option (CS_OPT_DETAIL, CS_OPT_SKIPDATA).
 	CS_OPT_SYNTAX_DEFAULT = 0, // Default asm syntax (CS_OPT_SYNTAX).
 	CS_OPT_SYNTAX_INTEL, // X86 Intel asm syntax - default on X86 (CS_OPT_SYNTAX).
 	CS_OPT_SYNTAX_ATT,   // X86 ATT asm syntax (CS_OPT_SYNTAX).
-	CS_OPT_SYNTAX_NOREGNAME, // PPC asm syntax: Prints register name with only number (CS_OPT_SYNTAX)
+	CS_OPT_SYNTAX_NOREGNAME, // Prints register name with only number (CS_OPT_SYNTAX)
 } cs_opt_value;
 
+// User-defined callback function for SKIPDATA option
+// @offset: the position of the currently-examining data in the input buffer
+// 		passed to cs_disasm_ex().
+// @user_data: user-data passed to cs_option() via @user_data field in
+//		cs_opt_skipdata struct below.
+// @return: return number of bytes to skip, or 0 to immediately stop disassembling.
+typedef size_t (*cs_skipdata_cb_t)(size_t offset, void* user_data);
+
+// User-customized setup for SKIPDATA option
+typedef struct cs_opt_skipdata {
+	// Capstone considers data to skip as special "instructions".
+	// User can specify the string for this instruction's "mnemonic" here.
+	// By default (if @mnemonic is NULL), Capstone use ".db".
+	const char *mnemonic;
+
+	// User-defined callback function to be called when Capstone hits data.
+	// If the returned value from this callback is positive (>0), Capstone
+	// will skip exactly that number of bytes & continue. Otherwise, if
+	// the callback returns 0, Capstone stops disassembling and returns
+	// immediately from cs_disasm_ex()
+	// NOTE: if this callback pointer is NULL, Capstone would skip a number
+	// of bytes depending on architectures, as following:
+	// Arm:     2 bytes (Thumb mode) or 4 bytes.
+	// Arm64:   4 bytes.
+	// Mips:    4 bytes.
+	// PowerPC: 4 bytes.
+	// Sparc:   4 bytes.
+	// SystemZ: 2 bytes.
+	// X86:     1 bytes.
+	cs_skipdata_cb_t callback; 	// default value is NULL
+
+	// User-defined data to be passed to @callback function pointer.
+	void *user_data;
+} cs_opt_skipdata;
+
 
 #include "arm.h"
 #include "arm64.h"
 #include "mips.h"
-#include "x86.h"
 #include "ppc.h"
+#include "sparc.h"
+#include "systemz.h"
+#include "x86.h"
 
 // NOTE: All information in cs_detail is only available when CS_OPT_DETAIL = CS_OPT_ON
 typedef struct cs_detail {
@@ -117,6 +166,8 @@
 		cs_arm arm;		// ARM architecture (including Thumb/Thumb2)
 		cs_mips mips;	// MIPS architecture
 		cs_ppc ppc;	// PowerPC architecture
+		cs_sparc sparc;	// Sparc architecture
+		cs_sysz sysz;	// SystemZ architecture
 	};
 } cs_detail;
 
@@ -148,8 +199,10 @@
 	char op_str[160];
 
 	// Pointer to cs_detail.
-	// NOTE: detail pointer is only valid (not NULL) when CS_OP_DETAIL = CS_OPT_ON
-	// Otherwise, if CS_OPT_DETAIL = CS_OPT_OFF, @detail = NULL
+	// NOTE: detail pointer is only valid (not NULL) when both requirements below are met:
+	// (1) CS_OP_DETAIL = CS_OPT_ON
+	// (2) If engine is in Skipdata mode (CS_OP_SKIPDATA option set to CS_OPT_ON), then
+	//   the current instruction is not the "data" instruction (which clearly has no detail).
 	cs_detail *detail;
 } cs_insn;
 
@@ -163,17 +216,18 @@
 // All type of errors encountered by Capstone API.
 // These are values returned by cs_errno()
 typedef enum cs_err {
-	CS_ERR_OK = 0,	// No error: everything was fine
-	CS_ERR_MEM,	// Out-Of-Memory error: cs_open(), cs_disasm_ex()
-	CS_ERR_ARCH,	// Unsupported architecture: cs_open()
-	CS_ERR_HANDLE,	// Invalid handle: cs_op_count(), cs_op_index()
-	CS_ERR_CSH,	    // Invalid csh argument: cs_close(), cs_errno(), cs_option()
-	CS_ERR_MODE,	// Invalid/unsupported mode: cs_open()
-	CS_ERR_OPTION,	// Invalid/unsupported option: cs_option()
-	CS_ERR_DETAIL,	// Information is unavailable because detail option is OFF
+	CS_ERR_OK = 0,   // No error: everything was fine
+	CS_ERR_MEM,      // Out-Of-Memory error: cs_open(), cs_disasm_ex()
+	CS_ERR_ARCH,     // Unsupported architecture: cs_open()
+	CS_ERR_HANDLE,   // Invalid handle: cs_op_count(), cs_op_index()
+	CS_ERR_CSH,	     // Invalid csh argument: cs_close(), cs_errno(), cs_option()
+	CS_ERR_MODE,     // Invalid/unsupported mode: cs_open()
+	CS_ERR_OPTION,   // Invalid/unsupported option: cs_option()
+	CS_ERR_DETAIL,   // Information is unavailable because detail option is OFF
 	CS_ERR_MEMSETUP, // Dynamic memory management uninitialized (see CS_OPT_MEM)
-	CS_ERR_VERSION, // Unsupported version (bindings)
-	CS_ERR_DIET,	// Access irrelevant data in "diet" engine
+	CS_ERR_VERSION,  // Unsupported version (bindings)
+	CS_ERR_DIET,     // Access irrelevant data in "diet" engine
+	CS_ERR_SKIPDATA, // Access irrelevant data for "data" instruction in SKIPDATA mode
 } cs_err;
 
 /*
diff --git a/include/sparc.h b/include/sparc.h
new file mode 100644
index 0000000..91779cd
--- /dev/null
+++ b/include/sparc.h
@@ -0,0 +1,507 @@
+#ifndef CAPSTONE_SPARC_H
+#define CAPSTONE_SPARC_H
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2014> */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdint.h>
+#include <stdbool.h>
+
+#ifdef _MSC_VER
+#pragma warning(disable:4201)
+#endif
+
+//> Enums corresponding to Sparc condition codes, both icc's and fcc's.
+typedef enum sparc_cc {
+	SPARC_CC_INVALID = 0,	// invalid CC (default)
+	//> Integer condition codes
+	SPARC_CC_ICC_A   =  8,  // Always
+	SPARC_CC_ICC_N   =  0,  // Never
+	SPARC_CC_ICC_NE  =  9,  // Not Equal
+	SPARC_CC_ICC_E   =  1,  // Equal
+	SPARC_CC_ICC_G   = 10,  // Greater
+	SPARC_CC_ICC_LE  =  2,  // Less or Equal
+	SPARC_CC_ICC_GE  = 11,  // Greater or Equal
+	SPARC_CC_ICC_L   =  3,  // Less
+	SPARC_CC_ICC_GU  = 12,  // Greater Unsigned
+	SPARC_CC_ICC_LEU =  4,  // Less or Equal Unsigned
+	SPARC_CC_ICC_CC  = 13,  // Carry Clear/Great or Equal Unsigned
+	SPARC_CC_ICC_CS  =  5,  // Carry Set/Less Unsigned
+	SPARC_CC_ICC_POS = 14,  // Positive
+	SPARC_CC_ICC_NEG =  6,  // Negative
+	SPARC_CC_ICC_VC  = 15,  // Overflow Clear
+	SPARC_CC_ICC_VS  =  7,  // Overflow Set
+
+	//> Floating condition codes
+	SPARC_CC_FCC_A   =  8+16,  // Always
+	SPARC_CC_FCC_N   =  0+16,  // Never
+	SPARC_CC_FCC_U   =  7+16,  // Unordered
+	SPARC_CC_FCC_G   =  6+16,  // Greater
+	SPARC_CC_FCC_UG  =  5+16,  // Unordered or Greater
+	SPARC_CC_FCC_L   =  4+16,  // Less
+	SPARC_CC_FCC_UL  =  3+16,  // Unordered or Less
+	SPARC_CC_FCC_LG  =  2+16,  // Less or Greater
+	SPARC_CC_FCC_NE  =  1+16,  // Not Equal
+	SPARC_CC_FCC_E   =  9+16,  // Equal
+	SPARC_CC_FCC_UE  = 10+16,  // Unordered or Equal
+	SPARC_CC_FCC_GE  = 11+16,  // Greater or Equal
+	SPARC_CC_FCC_UGE = 12+16,  // Unordered or Greater or Equal
+	SPARC_CC_FCC_LE  = 13+16,  // Less or Equal
+	SPARC_CC_FCC_ULE = 14+16,  // Unordered or Less or Equal
+	SPARC_CC_FCC_O   = 15+16,  // Ordered
+} sparc_cc;
+
+//> Branch hint
+typedef enum sparc_hint {
+	SPARC_HINT_INVALID = 0,	// no hint
+	SPARC_HINT_A	= 1 << 0,	// annul delay slot instruction
+	SPARC_HINT_PT	= 1 << 1,	// branch taken
+	SPARC_HINT_PN	= 1 << 2,	// branch NOT taken
+} sparc_hint;
+
+//> Operand type for instruction's operands
+typedef enum sparc_op_type {
+	SPARC_OP_INVALID = 0,	// Uninitialized.
+	SPARC_OP_REG,	// Register operand.
+	SPARC_OP_IMM,	// Immediate operand.
+	SPARC_OP_MEM,	// Memory operand
+} sparc_op_type;
+
+// Instruction's operand referring to memory
+// This is associated with SPARC_OP_MEM operand type above
+typedef struct sparc_op_mem {
+	uint8_t base;	// base register
+	uint8_t index;	// index register
+	int32_t disp;	// displacement/offset value
+} sparc_op_mem;
+
+// Instruction operand
+typedef struct cs_sparc_op {
+	sparc_op_type type;	// operand type
+	union {
+		unsigned int reg;	// register value for REG operand
+		int32_t imm;		// immediate value for IMM operand
+		sparc_op_mem mem;		// base/disp value for MEM operand
+	};
+} cs_sparc_op;
+
+// Instruction structure
+typedef struct cs_sparc {
+	sparc_cc cc;	// code condition for this insn
+	sparc_hint hint;	// branch hint: encoding as bitwise OR of SPARC_HINT_*.
+	// Number of operands of this instruction, 
+	// or 0 when instruction has no operand.
+	uint8_t op_count;
+	cs_sparc_op operands[4]; // operands for this instruction.
+} cs_sparc;
+
+//> SPARC registers
+typedef enum sparc_reg {
+	SPARC_REG_INVALID = 0,
+
+	SPARC_REG_F0,
+	SPARC_REG_F1,
+	SPARC_REG_F2,
+	SPARC_REG_F3,
+	SPARC_REG_F4,
+	SPARC_REG_F5,
+	SPARC_REG_F6,
+	SPARC_REG_F7,
+	SPARC_REG_F8,
+	SPARC_REG_F9,
+	SPARC_REG_F10,
+	SPARC_REG_F11,
+	SPARC_REG_F12,
+	SPARC_REG_F13,
+	SPARC_REG_F14,
+	SPARC_REG_F15,
+	SPARC_REG_F16,
+	SPARC_REG_F17,
+	SPARC_REG_F18,
+	SPARC_REG_F19,
+	SPARC_REG_F20,
+	SPARC_REG_F21,
+	SPARC_REG_F22,
+	SPARC_REG_F23,
+	SPARC_REG_F24,
+	SPARC_REG_F25,
+	SPARC_REG_F26,
+	SPARC_REG_F27,
+	SPARC_REG_F28,
+	SPARC_REG_F29,
+	SPARC_REG_F30,
+	SPARC_REG_F31,
+	SPARC_REG_F32,
+	SPARC_REG_F34,
+	SPARC_REG_F36,
+	SPARC_REG_F38,
+	SPARC_REG_F40,
+	SPARC_REG_F42,
+	SPARC_REG_F44,
+	SPARC_REG_F46,
+	SPARC_REG_F48,
+	SPARC_REG_F50,
+	SPARC_REG_F52,
+	SPARC_REG_F54,
+	SPARC_REG_F56,
+	SPARC_REG_F58,
+	SPARC_REG_F60,
+	SPARC_REG_F62,
+	SPARC_REG_FCC0,	// Floating condition codes
+	SPARC_REG_FCC1,
+	SPARC_REG_FCC2,
+	SPARC_REG_FCC3,
+	SPARC_REG_FP,
+	SPARC_REG_G0,
+	SPARC_REG_G1,
+	SPARC_REG_G2,
+	SPARC_REG_G3,
+	SPARC_REG_G4,
+	SPARC_REG_G5,
+	SPARC_REG_G6,
+	SPARC_REG_G7,
+	SPARC_REG_I0,
+	SPARC_REG_I1,
+	SPARC_REG_I2,
+	SPARC_REG_I3,
+	SPARC_REG_I4,
+	SPARC_REG_I5,
+	SPARC_REG_I7,
+	SPARC_REG_ICC,	// Integer condition codes
+	SPARC_REG_L0,
+	SPARC_REG_L1,
+	SPARC_REG_L2,
+	SPARC_REG_L3,
+	SPARC_REG_L4,
+	SPARC_REG_L5,
+	SPARC_REG_L6,
+	SPARC_REG_L7,
+	SPARC_REG_O0,
+	SPARC_REG_O1,
+	SPARC_REG_O2,
+	SPARC_REG_O3,
+	SPARC_REG_O4,
+	SPARC_REG_O5,
+	SPARC_REG_O7,
+	SPARC_REG_SP,
+	SPARC_REG_Y,
+
+	SPARC_REG_MAX,   // <-- mark the end of the list of registers
+
+	// extras
+	SPARC_REG_O6 = SPARC_REG_SP,
+	SPARC_REG_I6 = SPARC_REG_FP,
+} sparc_reg;
+
+//> SPARC instruction
+typedef enum sparc_insn {
+	SPARC_INS_INVALID = 0,
+
+	SPARC_INS_ADDCC,
+	SPARC_INS_ADDX,
+	SPARC_INS_ADDXCC,
+	SPARC_INS_ADDXC,
+	SPARC_INS_ADDXCCC,
+	SPARC_INS_ADD,
+	SPARC_INS_ALIGNADDR,
+	SPARC_INS_ALIGNADDRL,
+	SPARC_INS_ANDCC,
+	SPARC_INS_ANDNCC,
+	SPARC_INS_ANDN,
+	SPARC_INS_AND,
+	SPARC_INS_ARRAY16,
+	SPARC_INS_ARRAY32,
+	SPARC_INS_ARRAY8,
+	SPARC_INS_BA,
+	SPARC_INS_B,
+	SPARC_INS_JMP,
+	SPARC_INS_BMASK,
+	SPARC_INS_FB,
+	SPARC_INS_BRGEZ,
+	SPARC_INS_BRGZ,
+	SPARC_INS_BRLEZ,
+	SPARC_INS_BRLZ,
+	SPARC_INS_BRNZ,
+	SPARC_INS_BRZ,
+	SPARC_INS_BSHUFFLE,
+	SPARC_INS_CALL,
+	SPARC_INS_CASX,
+	SPARC_INS_CAS,
+	SPARC_INS_CMASK16,
+	SPARC_INS_CMASK32,
+	SPARC_INS_CMASK8,
+	SPARC_INS_CMP,
+	SPARC_INS_EDGE16,
+	SPARC_INS_EDGE16L,
+	SPARC_INS_EDGE16LN,
+	SPARC_INS_EDGE16N,
+	SPARC_INS_EDGE32,
+	SPARC_INS_EDGE32L,
+	SPARC_INS_EDGE32LN,
+	SPARC_INS_EDGE32N,
+	SPARC_INS_EDGE8,
+	SPARC_INS_EDGE8L,
+	SPARC_INS_EDGE8LN,
+	SPARC_INS_EDGE8N,
+	SPARC_INS_FABSD,
+	SPARC_INS_FABSQ,
+	SPARC_INS_FABSS,
+	SPARC_INS_FADDD,
+	SPARC_INS_FADDQ,
+	SPARC_INS_FADDS,
+	SPARC_INS_FALIGNDATA,
+	SPARC_INS_FAND,
+	SPARC_INS_FANDNOT1,
+	SPARC_INS_FANDNOT1S,
+	SPARC_INS_FANDNOT2,
+	SPARC_INS_FANDNOT2S,
+	SPARC_INS_FANDS,
+	SPARC_INS_FCHKSM16,
+	SPARC_INS_FCMPD,
+	SPARC_INS_FCMPEQ16,
+	SPARC_INS_FCMPEQ32,
+	SPARC_INS_FCMPGT16,
+	SPARC_INS_FCMPGT32,
+	SPARC_INS_FCMPLE16,
+	SPARC_INS_FCMPLE32,
+	SPARC_INS_FCMPNE16,
+	SPARC_INS_FCMPNE32,
+	SPARC_INS_FCMPQ,
+	SPARC_INS_FCMPS,
+	SPARC_INS_FDIVD,
+	SPARC_INS_FDIVQ,
+	SPARC_INS_FDIVS,
+	SPARC_INS_FDMULQ,
+	SPARC_INS_FDTOI,
+	SPARC_INS_FDTOQ,
+	SPARC_INS_FDTOS,
+	SPARC_INS_FDTOX,
+	SPARC_INS_FEXPAND,
+	SPARC_INS_FHADDD,
+	SPARC_INS_FHADDS,
+	SPARC_INS_FHSUBD,
+	SPARC_INS_FHSUBS,
+	SPARC_INS_FITOD,
+	SPARC_INS_FITOQ,
+	SPARC_INS_FITOS,
+	SPARC_INS_FLCMPD,
+	SPARC_INS_FLCMPS,
+	SPARC_INS_FLUSHW,
+	SPARC_INS_FMEAN16,
+	SPARC_INS_FMOVD,
+	SPARC_INS_FMOVQ,
+	SPARC_INS_FMOVRDGEZ,
+	SPARC_INS_FMOVRQGEZ,
+	SPARC_INS_FMOVRSGEZ,
+	SPARC_INS_FMOVRDGZ,
+	SPARC_INS_FMOVRQGZ,
+	SPARC_INS_FMOVRSGZ,
+	SPARC_INS_FMOVRDLEZ,
+	SPARC_INS_FMOVRQLEZ,
+	SPARC_INS_FMOVRSLEZ,
+	SPARC_INS_FMOVRDLZ,
+	SPARC_INS_FMOVRQLZ,
+	SPARC_INS_FMOVRSLZ,
+	SPARC_INS_FMOVRDNZ,
+	SPARC_INS_FMOVRQNZ,
+	SPARC_INS_FMOVRSNZ,
+	SPARC_INS_FMOVRDZ,
+	SPARC_INS_FMOVRQZ,
+	SPARC_INS_FMOVRSZ,
+	SPARC_INS_FMOVS,
+	SPARC_INS_FMUL8SUX16,
+	SPARC_INS_FMUL8ULX16,
+	SPARC_INS_FMUL8X16,
+	SPARC_INS_FMUL8X16AL,
+	SPARC_INS_FMUL8X16AU,
+	SPARC_INS_FMULD,
+	SPARC_INS_FMULD8SUX16,
+	SPARC_INS_FMULD8ULX16,
+	SPARC_INS_FMULQ,
+	SPARC_INS_FMULS,
+	SPARC_INS_FNADDD,
+	SPARC_INS_FNADDS,
+	SPARC_INS_FNAND,
+	SPARC_INS_FNANDS,
+	SPARC_INS_FNEGD,
+	SPARC_INS_FNEGQ,
+	SPARC_INS_FNEGS,
+	SPARC_INS_FNHADDD,
+	SPARC_INS_FNHADDS,
+	SPARC_INS_FNOR,
+	SPARC_INS_FNORS,
+	SPARC_INS_FNOT1,
+	SPARC_INS_FNOT1S,
+	SPARC_INS_FNOT2,
+	SPARC_INS_FNOT2S,
+	SPARC_INS_FONE,
+	SPARC_INS_FONES,
+	SPARC_INS_FOR,
+	SPARC_INS_FORNOT1,
+	SPARC_INS_FORNOT1S,
+	SPARC_INS_FORNOT2,
+	SPARC_INS_FORNOT2S,
+	SPARC_INS_FORS,
+	SPARC_INS_FPACK16,
+	SPARC_INS_FPACK32,
+	SPARC_INS_FPACKFIX,
+	SPARC_INS_FPADD16,
+	SPARC_INS_FPADD16S,
+	SPARC_INS_FPADD32,
+	SPARC_INS_FPADD32S,
+	SPARC_INS_FPADD64,
+	SPARC_INS_FPMERGE,
+	SPARC_INS_FPSUB16,
+	SPARC_INS_FPSUB16S,
+	SPARC_INS_FPSUB32,
+	SPARC_INS_FPSUB32S,
+	SPARC_INS_FQTOD,
+	SPARC_INS_FQTOI,
+	SPARC_INS_FQTOS,
+	SPARC_INS_FQTOX,
+	SPARC_INS_FSLAS16,
+	SPARC_INS_FSLAS32,
+	SPARC_INS_FSLL16,
+	SPARC_INS_FSLL32,
+	SPARC_INS_FSMULD,
+	SPARC_INS_FSQRTD,
+	SPARC_INS_FSQRTQ,
+	SPARC_INS_FSQRTS,
+	SPARC_INS_FSRA16,
+	SPARC_INS_FSRA32,
+	SPARC_INS_FSRC1,
+	SPARC_INS_FSRC1S,
+	SPARC_INS_FSRC2,
+	SPARC_INS_FSRC2S,
+	SPARC_INS_FSRL16,
+	SPARC_INS_FSRL32,
+	SPARC_INS_FSTOD,
+	SPARC_INS_FSTOI,
+	SPARC_INS_FSTOQ,
+	SPARC_INS_FSTOX,
+	SPARC_INS_FSUBD,
+	SPARC_INS_FSUBQ,
+	SPARC_INS_FSUBS,
+	SPARC_INS_FXNOR,
+	SPARC_INS_FXNORS,
+	SPARC_INS_FXOR,
+	SPARC_INS_FXORS,
+	SPARC_INS_FXTOD,
+	SPARC_INS_FXTOQ,
+	SPARC_INS_FXTOS,
+	SPARC_INS_FZERO,
+	SPARC_INS_FZEROS,
+	SPARC_INS_JMPL,
+	SPARC_INS_LDD,
+	SPARC_INS_LD,
+	SPARC_INS_LDQ,
+	SPARC_INS_LDSB,
+	SPARC_INS_LDSH,
+	SPARC_INS_LDSW,
+	SPARC_INS_LDUB,
+	SPARC_INS_LDUH,
+	SPARC_INS_LDX,
+	SPARC_INS_LZCNT,
+	SPARC_INS_MEMBAR,
+	SPARC_INS_MOVDTOX,
+	SPARC_INS_MOV,
+	SPARC_INS_MOVRGEZ,
+	SPARC_INS_MOVRGZ,
+	SPARC_INS_MOVRLEZ,
+	SPARC_INS_MOVRLZ,
+	SPARC_INS_MOVRNZ,
+	SPARC_INS_MOVRZ,
+	SPARC_INS_MOVSTOSW,
+	SPARC_INS_MOVSTOUW,
+	SPARC_INS_MULX,
+	SPARC_INS_NOP,
+	SPARC_INS_ORCC,
+	SPARC_INS_ORNCC,
+	SPARC_INS_ORN,
+	SPARC_INS_OR,
+	SPARC_INS_PDIST,
+	SPARC_INS_PDISTN,
+	SPARC_INS_POPC,
+	SPARC_INS_RD,
+	SPARC_INS_RESTORE,
+	SPARC_INS_RETT,
+	SPARC_INS_SAVE,
+	SPARC_INS_SDIVCC,
+	SPARC_INS_SDIVX,
+	SPARC_INS_SDIV,
+	SPARC_INS_SETHI,
+	SPARC_INS_SHUTDOWN,
+	SPARC_INS_SIAM,
+	SPARC_INS_SLLX,
+	SPARC_INS_SLL,
+	SPARC_INS_SMULCC,
+	SPARC_INS_SMUL,
+	SPARC_INS_SRAX,
+	SPARC_INS_SRA,
+	SPARC_INS_SRLX,
+	SPARC_INS_SRL,
+	SPARC_INS_STBAR,
+	SPARC_INS_STB,
+	SPARC_INS_STD,
+	SPARC_INS_ST,
+	SPARC_INS_STH,
+	SPARC_INS_STQ,
+	SPARC_INS_STX,
+	SPARC_INS_SUBCC,
+	SPARC_INS_SUBX,
+	SPARC_INS_SUBXCC,
+	SPARC_INS_SUB,
+	SPARC_INS_SWAP,
+	SPARC_INS_TA,
+	SPARC_INS_TADDCCTV,
+	SPARC_INS_TADDCC,
+	SPARC_INS_T,
+	SPARC_INS_TSUBCCTV,
+	SPARC_INS_TSUBCC,
+	SPARC_INS_UDIVCC,
+	SPARC_INS_UDIVX,
+	SPARC_INS_UDIV,
+	SPARC_INS_UMULCC,
+	SPARC_INS_UMULXHI,
+	SPARC_INS_UMUL,
+	SPARC_INS_UNIMP,
+	SPARC_INS_FCMPED,
+	SPARC_INS_FCMPEQ,
+	SPARC_INS_FCMPES,
+	SPARC_INS_WR,
+	SPARC_INS_XMULX,
+	SPARC_INS_XMULXHI,
+	SPARC_INS_XNORCC,
+	SPARC_INS_XNOR,
+	SPARC_INS_XORCC,
+	SPARC_INS_XOR,
+
+	SPARC_INS_MAX,   // <-- mark the end of the list of instructions
+} sparc_insn;
+
+//> Group of SPARC instructions
+typedef enum sparc_insn_group {
+	SPARC_GRP_INVALID = 0,
+
+	SPARC_GRP_HARDQUAD,
+	SPARC_GRP_V9,
+	SPARC_GRP_VIS,
+	SPARC_GRP_VIS2,
+	SPARC_GRP_VIS3, 
+	SPARC_GRP_32BIT,
+	SPARC_GRP_64BIT,
+
+	SPARC_GRP_JUMP,	// all jump instructions (conditional+direct+indirect jumps)
+
+	SPARC_GRP_MAX,   // <-- mark the end of the list of groups
+} sparc_insn_group;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/include/systemz.h b/include/systemz.h
new file mode 100644
index 0000000..043f7f3
--- /dev/null
+++ b/include/systemz.h
@@ -0,0 +1,821 @@
+#ifndef CAPSTONE_SYSTEMZ_H
+#define CAPSTONE_SYSTEMZ_H
+
+/* Capstone Disassembly Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2014> */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdint.h>
+#include <stdbool.h>
+
+#ifdef _MSC_VER
+#pragma warning(disable:4201)
+#endif
+
+//> Enums corresponding to SystemZ condition codes
+typedef enum sysz_cc {
+	SYSZ_CC_INVALID = 0,	// invalid CC (default)
+
+	SYSZ_CC_O,
+	SYSZ_CC_H,
+	SYSZ_CC_NLE,
+	SYSZ_CC_L,
+	SYSZ_CC_NHE,
+	SYSZ_CC_LH,
+	SYSZ_CC_NE,
+	SYSZ_CC_E,
+	SYSZ_CC_NLH,
+	SYSZ_CC_HE,
+	SYSZ_CC_NL,
+	SYSZ_CC_LE,
+	SYSZ_CC_NH,
+	SYSZ_CC_NO,
+} sysz_cc;
+
+//> Operand type for instruction's operands
+typedef enum sysz_op_type {
+	SYSZ_OP_INVALID = 0,	// Uninitialized.
+	SYSZ_OP_REG,	// Register operand.
+	SYSZ_OP_ACREG,	// Access register operand.
+	SYSZ_OP_IMM,	// Immediate operand.
+	SYSZ_OP_MEM,	// Memory operand
+} sysz_op_type;
+
+// Instruction's operand referring to memory
+// This is associated with SYSZ_OP_MEM operand type above
+typedef struct sysz_op_mem {
+	uint8_t base;	// base register
+	uint8_t index;	// index register
+	uint64_t length;	// BDLAddr operand
+	int64_t disp;	// displacement/offset value
+} sysz_op_mem;
+
+// Instruction operand
+typedef struct cs_sysz_op {
+	sysz_op_type type;	// operand type
+	union {
+		unsigned int reg;	// register value for REG operand
+		int64_t imm;		// immediate value for IMM operand
+		sysz_op_mem mem;		// base/disp value for MEM operand
+	};
+} cs_sysz_op;
+
+// Instruction structure
+typedef struct cs_sysz {
+	sysz_cc cc;		// Code condition
+	// Number of operands of this instruction, 
+	// or 0 when instruction has no operand.
+	uint8_t op_count;
+	cs_sysz_op operands[6]; // operands for this instruction.
+} cs_sysz;
+
+//> SystemZ registers
+typedef enum sysz_reg {
+	SYSZ_REG_INVALID = 0,
+
+	SYSZ_REG_0, 
+	SYSZ_REG_1, 
+	SYSZ_REG_2, 
+	SYSZ_REG_3, 
+	SYSZ_REG_4, 
+	SYSZ_REG_5, 
+	SYSZ_REG_6, 
+	SYSZ_REG_7, 
+	SYSZ_REG_8, 
+	SYSZ_REG_9, 
+	SYSZ_REG_10,
+	SYSZ_REG_11,
+	SYSZ_REG_12,
+	SYSZ_REG_13,
+	SYSZ_REG_14,
+	SYSZ_REG_15,
+	SYSZ_REG_CC,
+	SYSZ_REG_F0,
+	SYSZ_REG_F1,
+	SYSZ_REG_F2,
+	SYSZ_REG_F3,
+	SYSZ_REG_F4,
+	SYSZ_REG_F5,
+	SYSZ_REG_F6,
+	SYSZ_REG_F7,
+	SYSZ_REG_F8,
+	SYSZ_REG_F9,
+	SYSZ_REG_F10,
+	SYSZ_REG_F11,
+	SYSZ_REG_F12,
+	SYSZ_REG_F13,
+	SYSZ_REG_F14,
+	SYSZ_REG_F15,
+
+	SYSZ_REG_R0L,
+
+	SYSZ_REG_MAX,
+} sysz_reg;
+
+//> SystemZ instruction
+typedef enum sysz_insn {
+	SYSZ_INS_INVALID = 0,
+
+	SYSZ_INS_A,
+	SYSZ_INS_ADB,
+	SYSZ_INS_ADBR,
+	SYSZ_INS_AEB,
+	SYSZ_INS_AEBR,
+	SYSZ_INS_AFI,
+	SYSZ_INS_AG,
+	SYSZ_INS_AGF,
+	SYSZ_INS_AGFI,
+	SYSZ_INS_AGFR,
+	SYSZ_INS_AGHI,
+	SYSZ_INS_AGHIK,
+	SYSZ_INS_AGR,
+	SYSZ_INS_AGRK,
+	SYSZ_INS_AGSI,
+	SYSZ_INS_AH,
+	SYSZ_INS_AHI,
+	SYSZ_INS_AHIK,
+	SYSZ_INS_AHY,
+	SYSZ_INS_AIH,
+	SYSZ_INS_AL,
+	SYSZ_INS_ALC,
+	SYSZ_INS_ALCG,
+	SYSZ_INS_ALCGR,
+	SYSZ_INS_ALCR,
+	SYSZ_INS_ALFI,
+	SYSZ_INS_ALG,
+	SYSZ_INS_ALGF,
+	SYSZ_INS_ALGFI,
+	SYSZ_INS_ALGFR,
+	SYSZ_INS_ALGHSIK,
+	SYSZ_INS_ALGR,
+	SYSZ_INS_ALGRK,
+	SYSZ_INS_ALHSIK,
+	SYSZ_INS_ALR,
+	SYSZ_INS_ALRK,
+	SYSZ_INS_ALY,
+	SYSZ_INS_AR,
+	SYSZ_INS_ARK,
+	SYSZ_INS_ASI,
+	SYSZ_INS_AXBR,
+	SYSZ_INS_AY,
+	SYSZ_INS_BCR,
+	SYSZ_INS_BRC,
+	SYSZ_INS_BRCL,
+	SYSZ_INS_CGIJ,
+	SYSZ_INS_CGRJ,
+	SYSZ_INS_CIJ,
+	SYSZ_INS_CLGIJ,
+	SYSZ_INS_CLGRJ,
+	SYSZ_INS_CLIJ,
+	SYSZ_INS_CLRJ,
+	SYSZ_INS_CRJ,
+	SYSZ_INS_BER,
+	SYSZ_INS_JE,
+	SYSZ_INS_JGE,
+	SYSZ_INS_LOCE,
+	SYSZ_INS_LOCGE,
+	SYSZ_INS_LOCGRE,
+	SYSZ_INS_LOCRE,
+	SYSZ_INS_STOCE,
+	SYSZ_INS_STOCGE,
+	SYSZ_INS_BHR,
+	SYSZ_INS_BHER,
+	SYSZ_INS_JHE,
+	SYSZ_INS_JGHE,
+	SYSZ_INS_LOCHE,
+	SYSZ_INS_LOCGHE,
+	SYSZ_INS_LOCGRHE,
+	SYSZ_INS_LOCRHE,
+	SYSZ_INS_STOCHE,
+	SYSZ_INS_STOCGHE,
+	SYSZ_INS_JH,
+	SYSZ_INS_JGH,
+	SYSZ_INS_LOCH,
+	SYSZ_INS_LOCGH,
+	SYSZ_INS_LOCGRH,
+	SYSZ_INS_LOCRH,
+	SYSZ_INS_STOCH,
+	SYSZ_INS_STOCGH,
+	SYSZ_INS_CGIJNLH,
+	SYSZ_INS_CGRJNLH,
+	SYSZ_INS_CIJNLH,
+	SYSZ_INS_CLGIJNLH,
+	SYSZ_INS_CLGRJNLH,
+	SYSZ_INS_CLIJNLH,
+	SYSZ_INS_CLRJNLH,
+	SYSZ_INS_CRJNLH,
+	SYSZ_INS_CGIJE,
+	SYSZ_INS_CGRJE,
+	SYSZ_INS_CIJE,
+	SYSZ_INS_CLGIJE,
+	SYSZ_INS_CLGRJE,
+	SYSZ_INS_CLIJE,
+	SYSZ_INS_CLRJE,
+	SYSZ_INS_CRJE,
+	SYSZ_INS_CGIJNLE,
+	SYSZ_INS_CGRJNLE,
+	SYSZ_INS_CIJNLE,
+	SYSZ_INS_CLGIJNLE,
+	SYSZ_INS_CLGRJNLE,
+	SYSZ_INS_CLIJNLE,
+	SYSZ_INS_CLRJNLE,
+	SYSZ_INS_CRJNLE,
+	SYSZ_INS_CGIJH,
+	SYSZ_INS_CGRJH,
+	SYSZ_INS_CIJH,
+	SYSZ_INS_CLGIJH,
+	SYSZ_INS_CLGRJH,
+	SYSZ_INS_CLIJH,
+	SYSZ_INS_CLRJH,
+	SYSZ_INS_CRJH,
+	SYSZ_INS_CGIJNL,
+	SYSZ_INS_CGRJNL,
+	SYSZ_INS_CIJNL,
+	SYSZ_INS_CLGIJNL,
+	SYSZ_INS_CLGRJNL,
+	SYSZ_INS_CLIJNL,
+	SYSZ_INS_CLRJNL,
+	SYSZ_INS_CRJNL,
+	SYSZ_INS_CGIJHE,
+	SYSZ_INS_CGRJHE,
+	SYSZ_INS_CIJHE,
+	SYSZ_INS_CLGIJHE,
+	SYSZ_INS_CLGRJHE,
+	SYSZ_INS_CLIJHE,
+	SYSZ_INS_CLRJHE,
+	SYSZ_INS_CRJHE,
+	SYSZ_INS_CGIJNHE,
+	SYSZ_INS_CGRJNHE,
+	SYSZ_INS_CIJNHE,
+	SYSZ_INS_CLGIJNHE,
+	SYSZ_INS_CLGRJNHE,
+	SYSZ_INS_CLIJNHE,
+	SYSZ_INS_CLRJNHE,
+	SYSZ_INS_CRJNHE,
+	SYSZ_INS_CGIJL,
+	SYSZ_INS_CGRJL,
+	SYSZ_INS_CIJL,
+	SYSZ_INS_CLGIJL,
+	SYSZ_INS_CLGRJL,
+	SYSZ_INS_CLIJL,
+	SYSZ_INS_CLRJL,
+	SYSZ_INS_CRJL,
+	SYSZ_INS_CGIJNH,
+	SYSZ_INS_CGRJNH,
+	SYSZ_INS_CIJNH,
+	SYSZ_INS_CLGIJNH,
+	SYSZ_INS_CLGRJNH,
+	SYSZ_INS_CLIJNH,
+	SYSZ_INS_CLRJNH,
+	SYSZ_INS_CRJNH,
+	SYSZ_INS_CGIJLE,
+	SYSZ_INS_CGRJLE,
+	SYSZ_INS_CIJLE,
+	SYSZ_INS_CLGIJLE,
+	SYSZ_INS_CLGRJLE,
+	SYSZ_INS_CLIJLE,
+	SYSZ_INS_CLRJLE,
+	SYSZ_INS_CRJLE,
+	SYSZ_INS_CGIJNE,
+	SYSZ_INS_CGRJNE,
+	SYSZ_INS_CIJNE,
+	SYSZ_INS_CLGIJNE,
+	SYSZ_INS_CLGRJNE,
+	SYSZ_INS_CLIJNE,
+	SYSZ_INS_CLRJNE,
+	SYSZ_INS_CRJNE,
+	SYSZ_INS_CGIJLH,
+	SYSZ_INS_CGRJLH,
+	SYSZ_INS_CIJLH,
+	SYSZ_INS_CLGIJLH,
+	SYSZ_INS_CLGRJLH,
+	SYSZ_INS_CLIJLH,
+	SYSZ_INS_CLRJLH,
+	SYSZ_INS_CRJLH,
+	SYSZ_INS_BLR,
+	SYSZ_INS_BLER,
+	SYSZ_INS_JLE,
+	SYSZ_INS_JGLE,
+	SYSZ_INS_LOCLE,
+	SYSZ_INS_LOCGLE,
+	SYSZ_INS_LOCGRLE,
+	SYSZ_INS_LOCRLE,
+	SYSZ_INS_STOCLE,
+	SYSZ_INS_STOCGLE,
+	SYSZ_INS_BLHR,
+	SYSZ_INS_JLH,
+	SYSZ_INS_JGLH,
+	SYSZ_INS_LOCLH,
+	SYSZ_INS_LOCGLH,
+	SYSZ_INS_LOCGRLH,
+	SYSZ_INS_LOCRLH,
+	SYSZ_INS_STOCLH,
+	SYSZ_INS_STOCGLH,
+	SYSZ_INS_JL,
+	SYSZ_INS_JGL,
+	SYSZ_INS_LOCL,
+	SYSZ_INS_LOCGL,
+	SYSZ_INS_LOCGRL,
+	SYSZ_INS_LOCRL,
+	SYSZ_INS_LOC,
+	SYSZ_INS_LOCG,
+	SYSZ_INS_LOCGR,
+	SYSZ_INS_LOCR,
+	SYSZ_INS_STOCL,
+	SYSZ_INS_STOCGL,
+	SYSZ_INS_BNER,
+	SYSZ_INS_JNE,
+	SYSZ_INS_JGNE,
+	SYSZ_INS_LOCNE,
+	SYSZ_INS_LOCGNE,
+	SYSZ_INS_LOCGRNE,
+	SYSZ_INS_LOCRNE,
+	SYSZ_INS_STOCNE,
+	SYSZ_INS_STOCGNE,
+	SYSZ_INS_BNHR,
+	SYSZ_INS_BNHER,
+	SYSZ_INS_JNHE,
+	SYSZ_INS_JGNHE,
+	SYSZ_INS_LOCNHE,
+	SYSZ_INS_LOCGNHE,
+	SYSZ_INS_LOCGRNHE,
+	SYSZ_INS_LOCRNHE,
+	SYSZ_INS_STOCNHE,
+	SYSZ_INS_STOCGNHE,
+	SYSZ_INS_JNH,
+	SYSZ_INS_JGNH,
+	SYSZ_INS_LOCNH,
+	SYSZ_INS_LOCGNH,
+	SYSZ_INS_LOCGRNH,
+	SYSZ_INS_LOCRNH,
+	SYSZ_INS_STOCNH,
+	SYSZ_INS_STOCGNH,
+	SYSZ_INS_BNLR,
+	SYSZ_INS_BNLER,
+	SYSZ_INS_JNLE,
+	SYSZ_INS_JGNLE,
+	SYSZ_INS_LOCNLE,
+	SYSZ_INS_LOCGNLE,
+	SYSZ_INS_LOCGRNLE,
+	SYSZ_INS_LOCRNLE,
+	SYSZ_INS_STOCNLE,
+	SYSZ_INS_STOCGNLE,
+	SYSZ_INS_BNLHR,
+	SYSZ_INS_JNLH,
+	SYSZ_INS_JGNLH,
+	SYSZ_INS_LOCNLH,
+	SYSZ_INS_LOCGNLH,
+	SYSZ_INS_LOCGRNLH,
+	SYSZ_INS_LOCRNLH,
+	SYSZ_INS_STOCNLH,
+	SYSZ_INS_STOCGNLH,
+	SYSZ_INS_JNL,
+	SYSZ_INS_JGNL,
+	SYSZ_INS_LOCNL,
+	SYSZ_INS_LOCGNL,
+	SYSZ_INS_LOCGRNL,
+	SYSZ_INS_LOCRNL,
+	SYSZ_INS_STOCNL,
+	SYSZ_INS_STOCGNL,
+	SYSZ_INS_BNOR,
+	SYSZ_INS_JNO,
+	SYSZ_INS_JGNO,
+	SYSZ_INS_LOCNO,
+	SYSZ_INS_LOCGNO,
+	SYSZ_INS_LOCGRNO,
+	SYSZ_INS_LOCRNO,
+	SYSZ_INS_STOCNO,
+	SYSZ_INS_STOCGNO,
+	SYSZ_INS_BOR,
+	SYSZ_INS_JO,
+	SYSZ_INS_JGO,
+	SYSZ_INS_LOCO,
+	SYSZ_INS_LOCGO,
+	SYSZ_INS_LOCGRO,
+	SYSZ_INS_LOCRO,
+	SYSZ_INS_STOCO,
+	SYSZ_INS_STOCGO,
+	SYSZ_INS_STOC,
+	SYSZ_INS_STOCG,
+	SYSZ_INS_BASR,
+	SYSZ_INS_BR,
+	SYSZ_INS_BRAS,
+	SYSZ_INS_BRASL,
+	SYSZ_INS_J,
+	SYSZ_INS_JG,
+	SYSZ_INS_BRCT,
+	SYSZ_INS_BRCTG,
+	SYSZ_INS_C,
+	SYSZ_INS_CDB,
+	SYSZ_INS_CDBR,
+	SYSZ_INS_CDFBR,
+	SYSZ_INS_CDGBR,
+	SYSZ_INS_CDLFBR,
+	SYSZ_INS_CDLGBR,
+	SYSZ_INS_CEB,
+	SYSZ_INS_CEBR,
+	SYSZ_INS_CEFBR,
+	SYSZ_INS_CEGBR,
+	SYSZ_INS_CELFBR,
+	SYSZ_INS_CELGBR,
+	SYSZ_INS_CFDBR,
+	SYSZ_INS_CFEBR,
+	SYSZ_INS_CFI,
+	SYSZ_INS_CFXBR,
+	SYSZ_INS_CG,
+	SYSZ_INS_CGDBR,
+	SYSZ_INS_CGEBR,
+	SYSZ_INS_CGF,
+	SYSZ_INS_CGFI,
+	SYSZ_INS_CGFR,
+	SYSZ_INS_CGFRL,
+	SYSZ_INS_CGH,
+	SYSZ_INS_CGHI,
+	SYSZ_INS_CGHRL,
+	SYSZ_INS_CGHSI,
+	SYSZ_INS_CGR,
+	SYSZ_INS_CGRL,
+	SYSZ_INS_CGXBR,
+	SYSZ_INS_CH,
+	SYSZ_INS_CHF,
+	SYSZ_INS_CHHSI,
+	SYSZ_INS_CHI,
+	SYSZ_INS_CHRL,
+	SYSZ_INS_CHSI,
+	SYSZ_INS_CHY,
+	SYSZ_INS_CIH,
+	SYSZ_INS_CL,
+	SYSZ_INS_CLC,
+	SYSZ_INS_CLFDBR,
+	SYSZ_INS_CLFEBR,
+	SYSZ_INS_CLFHSI,
+	SYSZ_INS_CLFI,
+	SYSZ_INS_CLFXBR,
+	SYSZ_INS_CLG,
+	SYSZ_INS_CLGDBR,
+	SYSZ_INS_CLGEBR,
+	SYSZ_INS_CLGF,
+	SYSZ_INS_CLGFI,
+	SYSZ_INS_CLGFR,
+	SYSZ_INS_CLGFRL,
+	SYSZ_INS_CLGHRL,
+	SYSZ_INS_CLGHSI,
+	SYSZ_INS_CLGR,
+	SYSZ_INS_CLGRL,
+	SYSZ_INS_CLGXBR,
+	SYSZ_INS_CLHF,
+	SYSZ_INS_CLHHSI,
+	SYSZ_INS_CLHRL,
+	SYSZ_INS_CLI,
+	SYSZ_INS_CLIH,
+	SYSZ_INS_CLIY,
+	SYSZ_INS_CLR,
+	SYSZ_INS_CLRL,
+	SYSZ_INS_CLST,
+	SYSZ_INS_CLY,
+	SYSZ_INS_CPSDR,
+	SYSZ_INS_CR,
+	SYSZ_INS_CRL,
+	SYSZ_INS_CS,
+	SYSZ_INS_CSG,
+	SYSZ_INS_CSY,
+	SYSZ_INS_CXBR,
+	SYSZ_INS_CXFBR,
+	SYSZ_INS_CXGBR,
+	SYSZ_INS_CXLFBR,
+	SYSZ_INS_CXLGBR,
+	SYSZ_INS_CY,
+	SYSZ_INS_DDB,
+	SYSZ_INS_DDBR,
+	SYSZ_INS_DEB,
+	SYSZ_INS_DEBR,
+	SYSZ_INS_DL,
+	SYSZ_INS_DLG,
+	SYSZ_INS_DLGR,
+	SYSZ_INS_DLR,
+	SYSZ_INS_DSG,
+	SYSZ_INS_DSGF,
+	SYSZ_INS_DSGFR,
+	SYSZ_INS_DSGR,
+	SYSZ_INS_DXBR,
+	SYSZ_INS_EAR,
+	SYSZ_INS_FIDBR,
+	SYSZ_INS_FIDBRA,
+	SYSZ_INS_FIEBR,
+	SYSZ_INS_FIEBRA,
+	SYSZ_INS_FIXBR,
+	SYSZ_INS_FIXBRA,
+	SYSZ_INS_FLOGR,
+	SYSZ_INS_IC,
+	SYSZ_INS_ICY,
+	SYSZ_INS_IIHF,
+	SYSZ_INS_IIHH,
+	SYSZ_INS_IIHL,
+	SYSZ_INS_IILF,
+	SYSZ_INS_IILH,
+	SYSZ_INS_IILL,
+	SYSZ_INS_IPM,
+	SYSZ_INS_L,
+	SYSZ_INS_LA,
+	SYSZ_INS_LAA,
+	SYSZ_INS_LAAG,
+	SYSZ_INS_LAAL,
+	SYSZ_INS_LAALG,
+	SYSZ_INS_LAN,
+	SYSZ_INS_LANG,
+	SYSZ_INS_LAO,
+	SYSZ_INS_LAOG,
+	SYSZ_INS_LARL,
+	SYSZ_INS_LAX,
+	SYSZ_INS_LAXG,
+	SYSZ_INS_LAY,
+	SYSZ_INS_LB,
+	SYSZ_INS_LBH,
+	SYSZ_INS_LBR,
+	SYSZ_INS_LCDBR,
+	SYSZ_INS_LCEBR,
+	SYSZ_INS_LCGFR,
+	SYSZ_INS_LCGR,
+	SYSZ_INS_LCR,
+	SYSZ_INS_LCXBR,
+	SYSZ_INS_LD,
+	SYSZ_INS_LDEB,
+	SYSZ_INS_LDEBR,
+	SYSZ_INS_LDGR,
+	SYSZ_INS_LDR,
+	SYSZ_INS_LDXBR,
+	SYSZ_INS_LDY,
+	SYSZ_INS_LE,
+	SYSZ_INS_LEDBR,
+	SYSZ_INS_LER,
+	SYSZ_INS_LEXBR,
+	SYSZ_INS_LEY,
+	SYSZ_INS_LFH,
+	SYSZ_INS_LG,
+	SYSZ_INS_LGB,
+	SYSZ_INS_LGBR,
+	SYSZ_INS_LGDR,
+	SYSZ_INS_LGF,
+	SYSZ_INS_LGFI,
+	SYSZ_INS_LGFR,
+	SYSZ_INS_LGFRL,
+	SYSZ_INS_LGH,
+	SYSZ_INS_LGHI,
+	SYSZ_INS_LGHR,
+	SYSZ_INS_LGHRL,
+	SYSZ_INS_LGR,
+	SYSZ_INS_LGRL,
+	SYSZ_INS_LH,
+	SYSZ_INS_LHH,
+	SYSZ_INS_LHI,
+	SYSZ_INS_LHR,
+	SYSZ_INS_LHRL,
+	SYSZ_INS_LHY,
+	SYSZ_INS_LLC,
+	SYSZ_INS_LLCH,
+	SYSZ_INS_LLCR,
+	SYSZ_INS_LLGC,
+	SYSZ_INS_LLGCR,
+	SYSZ_INS_LLGF,
+	SYSZ_INS_LLGFR,
+	SYSZ_INS_LLGFRL,
+	SYSZ_INS_LLGH,
+	SYSZ_INS_LLGHR,
+	SYSZ_INS_LLGHRL,
+	SYSZ_INS_LLH,
+	SYSZ_INS_LLHH,
+	SYSZ_INS_LLHR,
+	SYSZ_INS_LLHRL,
+	SYSZ_INS_LLIHF,
+	SYSZ_INS_LLIHH,
+	SYSZ_INS_LLIHL,
+	SYSZ_INS_LLILF,
+	SYSZ_INS_LLILH,
+	SYSZ_INS_LLILL,
+	SYSZ_INS_LMG,
+	SYSZ_INS_LNDBR,
+	SYSZ_INS_LNEBR,
+	SYSZ_INS_LNGFR,
+	SYSZ_INS_LNGR,
+	SYSZ_INS_LNR,
+	SYSZ_INS_LNXBR,
+	SYSZ_INS_LPDBR,
+	SYSZ_INS_LPEBR,
+	SYSZ_INS_LPGFR,
+	SYSZ_INS_LPGR,
+	SYSZ_INS_LPR,
+	SYSZ_INS_LPXBR,
+	SYSZ_INS_LR,
+	SYSZ_INS_LRL,
+	SYSZ_INS_LRV,
+	SYSZ_INS_LRVG,
+	SYSZ_INS_LRVGR,
+	SYSZ_INS_LRVR,
+	SYSZ_INS_LT,
+	SYSZ_INS_LTDBR,
+	SYSZ_INS_LTEBR,
+	SYSZ_INS_LTG,
+	SYSZ_INS_LTGF,
+	SYSZ_INS_LTGFR,
+	SYSZ_INS_LTGR,
+	SYSZ_INS_LTR,
+	SYSZ_INS_LTXBR,
+	SYSZ_INS_LXDB,
+	SYSZ_INS_LXDBR,
+	SYSZ_INS_LXEB,
+	SYSZ_INS_LXEBR,
+	SYSZ_INS_LXR,
+	SYSZ_INS_LY,
+	SYSZ_INS_LZDR,
+	SYSZ_INS_LZER,
+	SYSZ_INS_LZXR,
+	SYSZ_INS_MADB,
+	SYSZ_INS_MADBR,
+	SYSZ_INS_MAEB,
+	SYSZ_INS_MAEBR,
+	SYSZ_INS_MDB,
+	SYSZ_INS_MDBR,
+	SYSZ_INS_MDEB,
+	SYSZ_INS_MDEBR,
+	SYSZ_INS_MEEB,
+	SYSZ_INS_MEEBR,
+	SYSZ_INS_MGHI,
+	SYSZ_INS_MH,
+	SYSZ_INS_MHI,
+	SYSZ_INS_MHY,
+	SYSZ_INS_MLG,
+	SYSZ_INS_MLGR,
+	SYSZ_INS_MS,
+	SYSZ_INS_MSDB,
+	SYSZ_INS_MSDBR,
+	SYSZ_INS_MSEB,
+	SYSZ_INS_MSEBR,
+	SYSZ_INS_MSFI,
+	SYSZ_INS_MSG,
+	SYSZ_INS_MSGF,
+	SYSZ_INS_MSGFI,
+	SYSZ_INS_MSGFR,
+	SYSZ_INS_MSGR,
+	SYSZ_INS_MSR,
+	SYSZ_INS_MSY,
+	SYSZ_INS_MVC,
+	SYSZ_INS_MVGHI,
+	SYSZ_INS_MVHHI,
+	SYSZ_INS_MVHI,
+	SYSZ_INS_MVI,
+	SYSZ_INS_MVIY,
+	SYSZ_INS_MVST,
+	SYSZ_INS_MXBR,
+	SYSZ_INS_MXDB,
+	SYSZ_INS_MXDBR,
+	SYSZ_INS_N,
+	SYSZ_INS_NC,
+	SYSZ_INS_NG,
+	SYSZ_INS_NGR,
+	SYSZ_INS_NGRK,
+	SYSZ_INS_NI,
+	SYSZ_INS_NIHF,
+	SYSZ_INS_NIHH,
+	SYSZ_INS_NIHL,
+	SYSZ_INS_NILF,
+	SYSZ_INS_NILH,
+	SYSZ_INS_NILL,
+	SYSZ_INS_NIY,
+	SYSZ_INS_NR,
+	SYSZ_INS_NRK,
+	SYSZ_INS_NY,
+	SYSZ_INS_O,
+	SYSZ_INS_OC,
+	SYSZ_INS_OG,
+	SYSZ_INS_OGR,
+	SYSZ_INS_OGRK,
+	SYSZ_INS_OI,
+	SYSZ_INS_OIHF,
+	SYSZ_INS_OIHH,
+	SYSZ_INS_OIHL,
+	SYSZ_INS_OILF,
+	SYSZ_INS_OILH,
+	SYSZ_INS_OILL,
+	SYSZ_INS_OIY,
+	SYSZ_INS_OR,
+	SYSZ_INS_ORK,
+	SYSZ_INS_OY,
+	SYSZ_INS_PFD,
+	SYSZ_INS_PFDRL,
+	SYSZ_INS_RISBG,
+	SYSZ_INS_RISBHG,
+	SYSZ_INS_RISBLG,
+	SYSZ_INS_RLL,
+	SYSZ_INS_RLLG,
+	SYSZ_INS_RNSBG,
+	SYSZ_INS_ROSBG,
+	SYSZ_INS_RXSBG,
+	SYSZ_INS_S,
+	SYSZ_INS_SDB,
+	SYSZ_INS_SDBR,
+	SYSZ_INS_SEB,
+	SYSZ_INS_SEBR,
+	SYSZ_INS_SG,
+	SYSZ_INS_SGF,
+	SYSZ_INS_SGFR,
+	SYSZ_INS_SGR,
+	SYSZ_INS_SGRK,
+	SYSZ_INS_SH,
+	SYSZ_INS_SHY,
+	SYSZ_INS_SL,
+	SYSZ_INS_SLB,
+	SYSZ_INS_SLBG,
+	SYSZ_INS_SLBR,
+	SYSZ_INS_SLFI,
+	SYSZ_INS_SLG,
+	SYSZ_INS_SLBGR,
+	SYSZ_INS_SLGF,
+	SYSZ_INS_SLGFI,
+	SYSZ_INS_SLGFR,
+	SYSZ_INS_SLGR,
+	SYSZ_INS_SLGRK,
+	SYSZ_INS_SLL,
+	SYSZ_INS_SLLG,
+	SYSZ_INS_SLLK,
+	SYSZ_INS_SLR,
+	SYSZ_INS_SLRK,
+	SYSZ_INS_SLY,
+	SYSZ_INS_SQDB,
+	SYSZ_INS_SQDBR,
+	SYSZ_INS_SQEB,
+	SYSZ_INS_SQEBR,
+	SYSZ_INS_SQXBR,
+	SYSZ_INS_SR,
+	SYSZ_INS_SRA,
+	SYSZ_INS_SRAG,
+	SYSZ_INS_SRAK,
+	SYSZ_INS_SRK,
+	SYSZ_INS_SRL,
+	SYSZ_INS_SRLG,
+	SYSZ_INS_SRLK,
+	SYSZ_INS_SRST,
+	SYSZ_INS_ST,
+	SYSZ_INS_STC,
+	SYSZ_INS_STCH,
+	SYSZ_INS_STCY,
+	SYSZ_INS_STD,
+	SYSZ_INS_STDY,
+	SYSZ_INS_STE,
+	SYSZ_INS_STEY,
+	SYSZ_INS_STFH,
+	SYSZ_INS_STG,
+	SYSZ_INS_STGRL,
+	SYSZ_INS_STH,
+	SYSZ_INS_STHH,
+	SYSZ_INS_STHRL,
+	SYSZ_INS_STHY,
+	SYSZ_INS_STMG,
+	SYSZ_INS_STRL,
+	SYSZ_INS_STRV,
+	SYSZ_INS_STRVG,
+	SYSZ_INS_STY,
+	SYSZ_INS_SXBR,
+	SYSZ_INS_SY,
+	SYSZ_INS_TM,
+	SYSZ_INS_TMHH,
+	SYSZ_INS_TMHL,
+	SYSZ_INS_TMLH,
+	SYSZ_INS_TMLL,
+	SYSZ_INS_TMY,
+	SYSZ_INS_X,
+	SYSZ_INS_XC,
+	SYSZ_INS_XG,
+	SYSZ_INS_XGR,
+	SYSZ_INS_XGRK,
+	SYSZ_INS_XI,
+	SYSZ_INS_XIHF,
+	SYSZ_INS_XILF,
+	SYSZ_INS_XIY,
+	SYSZ_INS_XR,
+	SYSZ_INS_XRK,
+	SYSZ_INS_XY,
+	SYSZ_INS_MAX,   // <-- mark the end of the list of instructions
+} sysz_insn;
+
+//> Group of SystemZ instructions
+typedef enum sysz_insn_group {
+	SYSZ_GRP_INVALID = 0,
+	SYSZ_GRP_FEATUREDISTINCTOPS,
+	SYSZ_GRP_FEATUREFPEXTENSION,
+	SYSZ_GRP_FEATUREHIGHWORD,
+	SYSZ_GRP_FEATUREINTERLOCKEDACCESS1,
+	SYSZ_GRP_FEATURELOADSTOREONCOND,
+
+	SYSZ_GRP_JUMP,	// all jump instructions (conditional+direct+indirect jumps)
+
+	SYSZ_GRP_MAX,   // <-- mark the end of the list of groups
+} sysz_insn_group;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/make.sh b/make.sh
index bf6405f..1dd9665 100755
--- a/make.sh
+++ b/make.sh
@@ -61,11 +61,12 @@
   "cross-win64" ) CROSS=x86_64-w64-mingw32- build;;
   "cygwin-mingw32" ) CROSS=i686-pc-mingw32- build;;
   "cygwin-mingw64" ) CROSS=x86_64-w64-mingw32- build;;
+  "cross-android" ) CROSS=arm-linux-androideabi- build;;
   "clang" ) CC=clang build;;
   "gcc" ) CC=gcc build;;
   "ios" ) build_iOS;;
   "ios_armv7" ) build_iOS armv7;;
   "ios_armv7s" ) build_iOS armv7s;;
   "ios_arm64" ) build_iOS arm64;;
-  * ) echo "Usage: make.sh [nix32|cross-win32|cross-win64|cygwin-mingw32|cygwin-mingw64|clang|gcc|ios|ios_armv7|ios_armv7s|ios_arm64|install|uninstall]"; exit 1;;
+  * ) echo "Usage: make.sh [nix32|cross-win32|cross-win64|cygwin-mingw32|cygwin-mingw64|ios|ios_armv7|ios_armv7s|ios_arm64|cross-android|clang|gcc|install|uninstall]"; exit 1;;
 esac
diff --git a/pkgconfig.mk b/pkgconfig.mk
index 12ce136..c295230 100644
--- a/pkgconfig.mk
+++ b/pkgconfig.mk
@@ -3,7 +3,7 @@
 
 # version major & minor 
 PKG_MAJOR = 2
-PKG_MINOR = 1
+PKG_MINOR = 2
 
 # version bugfix level. Example: PKG_EXTRA = 1
-PKG_EXTRA = 2
+PKG_EXTRA =
diff --git a/suite/benchmark.py b/suite/benchmark.py
index 449deae..65a3639 100755
--- a/suite/benchmark.py
+++ b/suite/benchmark.py
@@ -33,6 +33,8 @@
         (CS_ARCH_ARM64, CS_MODE_ARM, "ARM-64 (AArch64)", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, "PPC", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, "PPC, print register with number only", CS_OPT_SYNTAX_NOREGNAME),
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN, "Sparc", 0),
+        (CS_ARCH_SYSZ, 0, "SystemZ", 0),
         )
 
 
diff --git a/suite/fuzz.py b/suite/fuzz.py
index 7ca6461..dcbcae3 100755
--- a/suite/fuzz.py
+++ b/suite/fuzz.py
@@ -39,6 +39,8 @@
         (CS_ARCH_ARM64, CS_MODE_ARM, "ARM-64 (AArch64)", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, "PPC", 0),
         (CS_ARCH_PPC, CS_MODE_BIG_ENDIAN, "PPC, print register with number only", CS_OPT_SYNTAX_NOREGNAME),
+        (CS_ARCH_SPARC, CS_MODE_BIG_ENDIAN, "Sparc", 0),
+        (CS_ARCH_SYSZ, 0, "SystemZ", 0),
         )
 
 
diff --git a/suite/test_c.sh b/suite/test_c.sh
index 23330a4..1b78b46 100755
--- a/suite/test_c.sh
+++ b/suite/test_c.sh
@@ -9,4 +9,5 @@
 ../tests/test_arm64 >> /tmp/$1
 ../tests/test_mips >> /tmp/$1
 ../tests/test_ppc >> /tmp/$1
+../tests/test_sparc >> /tmp/$1
 ../tests/test_x86 >> /tmp/$1
diff --git a/suite/test_python.sh b/suite/test_python.sh
index 94d0bcd..b3cfa5c 100755
--- a/suite/test_python.sh
+++ b/suite/test_python.sh
@@ -9,4 +9,5 @@
 ../bindings/python/test_arm64.py >> /tmp/$1
 ../bindings/python/test_mips.py >> /tmp/$1
 ../bindings/python/test_ppc.py >> /tmp/$1
+../bindings/python/test_sparc.py >> /tmp/$1
 ../bindings/python/test_x86.py >> /tmp/$1
diff --git a/tests/Makefile b/tests/Makefile
index 5b6950f..169b2c9 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -1,5 +1,5 @@
 # Capstone Disassembler Engine
-# By Nguyen Anh Quynh <aquynh@gmail.com>, 2013>
+# By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014
 
 include ../config.mk
 
@@ -38,7 +38,7 @@
 
 .PHONY: all clean
 
-SOURCES = test.c test_detail.c
+SOURCES = test.c test_detail.c test_skipdata.c
 ifneq (,$(findstring arm,$(CAPSTONE_ARCHS)))
 SOURCES += test_arm.c
 endif
@@ -51,6 +51,12 @@
 ifneq (,$(findstring powerpc,$(CAPSTONE_ARCHS)))
 SOURCES += test_ppc.c
 endif
+ifneq (,$(findstring sparc,$(CAPSTONE_ARCHS)))
+SOURCES += test_sparc.c
+endif
+ifneq (,$(findstring systemz,$(CAPSTONE_ARCHS)))
+SOURCES += test_systemz.c
+endif
 ifneq (,$(findstring x86,$(CAPSTONE_ARCHS)))
 SOURCES += test_x86.c
 endif
diff --git a/tests/test.c b/tests/test.c
index 9f32e08..0261b76 100644
--- a/tests/test.c
+++ b/tests/test.c
@@ -47,6 +47,9 @@
 //#define ARM64_CODE "\xe1\x0b\x40\xb9"	// ldr		w1, [sp, #0x8]
 #define ARM64_CODE "\x21\x7c\x02\x9b\x21\x7c\x00\x53\x00\x40\x21\x4b\xe1\x0b\x40\xb9"
 #define PPC_CODE "\x80\x20\x00\x00\x80\x3f\x00\x00\x10\x43\x23\x0e\xd0\x44\x00\x80\x4c\x43\x22\x02\x2d\x03\x00\x80\x7c\x43\x20\x14\x7c\x43\x20\x93\x4f\x20\x00\x21\x4c\xc8\x00\x21"
+#define SPARC_CODE "\x80\xa0\x40\x02\x85\xc2\x60\x08\x85\xe8\x20\x01\x81\xe8\x00\x00\x90\x10\x20\x01\xd5\xf6\x10\x16\x21\x00\x00\x0a\x86\x00\x40\x02\x01\x00\x00\x00\x12\xbf\xff\xff\x10\xbf\xff\xff\xa0\x02\x00\x09\x0d\xbf\xff\xff\xd4\x20\x60\x00\xd4\x4e\x00\x16\x2a\xc2\x80\x03"
+#define SPARCV9_CODE "\x81\xa8\x0a\x24\x89\xa0\x10\x20\x89\xa0\x1a\x60\x89\xa0\x00\xe0"
+#define SYSZ_CODE "\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
 
 	struct platform platforms[] = {
 		{ 
@@ -144,15 +147,40 @@
 			.opt_value = CS_OPT_SYNTAX_NOREGNAME,
 			.comment = "PPC-64, print register with number only"
 		},
+		{
+			.arch = CS_ARCH_SPARC,
+			.mode = CS_MODE_BIG_ENDIAN,
+			.code = (unsigned char*)SPARC_CODE,
+			.size = sizeof(SPARC_CODE) - 1,
+			.comment = "Sparc"
+		},
+		{
+			.arch = CS_ARCH_SPARC,
+			.mode = CS_MODE_BIG_ENDIAN + CS_MODE_V9,
+			.code = (unsigned char*)SPARCV9_CODE,
+			.size = sizeof(SPARCV9_CODE) - 1,
+			.comment = "SparcV9"
+		},
+		{
+			.arch = CS_ARCH_SYSZ,
+			.mode = 0,
+			.code = (unsigned char*)SYSZ_CODE,
+			.size = sizeof(SYSZ_CODE) - 1,
+			.comment = "SystemZ"
+		},
 	};
 
 	csh handle;
 	uint64_t address = 0x1000;
 	cs_insn *insn;
 	int i;
+	size_t count;
+	cs_err err;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
-		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
+		printf("****************\n");
+		printf("Platform: %s\n", platforms[i].comment);
+		err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
 		if (err) {
 			printf("Failed on cs_open() with error returned: %u\n", err);
 			continue;
@@ -161,15 +189,13 @@
 		if (platforms[i].opt_type)
 			cs_option(handle, platforms[i].opt_type, platforms[i].opt_value);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
 		if (count) {
-			printf("****************\n");
-			printf("Platform: %s\n", platforms[i].comment);
+			size_t j;
+
 			print_string_hex(platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
-
 			for (j = 0; j < count; j++) {
 				printf("0x%"PRIx64":\t%s\t\t%s\n",
 						insn[j].address, insn[j].mnemonic, insn[j].op_str);
diff --git a/tests/test_arm.c b/tests/test_arm.c
index 6bb8969..29f8107 100644
--- a/tests/test_arm.c
+++ b/tests/test_arm.c
@@ -15,6 +15,7 @@
 	unsigned char *code;
 	size_t size;
 	char *comment;
+	int syntax;
 };
 
 static void print_string_hex(char *comment, unsigned char *str, int len)
@@ -31,12 +32,18 @@
 
 static void print_insn_detail(cs_insn *ins)
 {
-	cs_arm *arm = &(ins->detail->arm);
+	cs_arm *arm;
+	int i;
+
+	// detail can be NULL on "data" instruction if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	arm = &(ins->detail->arm);
 
 	if (arm->op_count)
 		printf("\top_count: %u\n", arm->op_count);
 
-	int i;
 	for (i = 0; i < arm->op_count; i++) {
 		cs_arm_op *op = &(arm->operands[i]);
 		switch((int)op->type) {
@@ -184,13 +191,15 @@
 			.mode = CS_MODE_THUMB,
 			.code = (unsigned char *)THUMB_CODE2,
 			.size = sizeof(THUMB_CODE2) - 1,
-			.comment = "Thumb-2"
+			.comment = "Thumb-2 & register named with numbers",
+			.syntax = CS_OPT_SYNTAX_NOREGNAME
 		},
 	};
 
 	uint64_t address = 0x1000;
 	cs_insn *insn;
 	int i;
+	size_t count;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
 		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
@@ -201,14 +210,17 @@
 
 		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		if (platforms[i].syntax)
+			cs_option(handle, CS_OPT_SYNTAX, platforms[i].syntax);
+
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
 		if (count) {
+			size_t j;
 			printf("****************\n");
 			printf("Platform: %s\n", platforms[i].comment);
 			print_string_hex("Code:", platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
 			for (j = 0; j < count; j++) {
 				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
 				print_insn_detail(&insn[j]);
diff --git a/tests/test_arm64.c b/tests/test_arm64.c
index 8b44e17..13a9516 100644
--- a/tests/test_arm64.c
+++ b/tests/test_arm64.c
@@ -31,9 +31,14 @@
 
 static void print_insn_detail(cs_insn *ins)
 {
-	cs_arm64 *arm64 = &(ins->detail->arm64);
+	cs_arm64 *arm64;
 	int i;
 
+	// detail can be NULL if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	arm64 = &(ins->detail->arm64);
 	if (arm64->op_count)
 		printf("\top_count: %u\n", arm64->op_count);
 
@@ -149,6 +154,7 @@
 	uint64_t address = 0x2c;
 	cs_insn *insn;
 	int i;
+	size_t count;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
 		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
@@ -159,14 +165,15 @@
 
 		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
 		if (count) {
+			size_t j;
+
 			printf("****************\n");
 			printf("Platform: %s\n", platforms[i].comment);
 			print_string_hex("Code:", platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
 			for (j = 0; j < count; j++) {
 				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
 				print_insn_detail(&insn[j]);
diff --git a/tests/test_detail.c b/tests/test_detail.c
index a320ba1..02cf4dc 100644
--- a/tests/test_detail.c
+++ b/tests/test_detail.c
@@ -53,6 +53,9 @@
 //#define THUMB_CODE "\x0a\xbf" // itet eq
 //#define X86_CODE32 "\x77\x04"	// ja +6
 #define PPC_CODE "\x80\x20\x00\x00\x80\x3f\x00\x00\x10\x43\x23\x0e\xd0\x44\x00\x80\x4c\x43\x22\x02\x2d\x03\x00\x80\x7c\x43\x20\x14\x7c\x43\x20\x93\x4f\x20\x00\x21\x4c\xc8\x00\x21"
+#define SPARC_CODE "\x80\xa0\x40\x02\x85\xc2\x60\x08\x85\xe8\x20\x01\x81\xe8\x00\x00\x90\x10\x20\x01\xd5\xf6\x10\x16\x21\x00\x00\x0a\x86\x00\x40\x02\x01\x00\x00\x00\x12\xbf\xff\xff\x10\xbf\xff\xff\xa0\x02\x00\x09\x0d\xbf\xff\xff\xd4\x20\x60\x00\xd4\x4e\x00\x16\x2a\xc2\x80\x03"
+#define SPARCV9_CODE "\x81\xa8\x0a\x24\x89\xa0\x10\x20\x89\xa0\x1a\x60\x89\xa0\x00\xe0"
+#define SYSZ_CODE "\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
 
 	struct platform platforms[] = {
 		{
@@ -141,15 +144,40 @@
 			.size = sizeof(PPC_CODE) - 1,
 			.comment = "PPC-64"
 		},
+		{
+			.arch = CS_ARCH_SPARC,
+			.mode = CS_MODE_BIG_ENDIAN,
+			.code = (unsigned char*)SPARC_CODE,
+			.size = sizeof(SPARC_CODE) - 1,
+			.comment = "Sparc"
+		},
+		{
+			.arch = CS_ARCH_SPARC,
+			.mode = CS_MODE_BIG_ENDIAN + CS_MODE_V9,
+			.code = (unsigned char*)SPARCV9_CODE,
+			.size = sizeof(SPARCV9_CODE) - 1,
+			.comment = "SparcV9"
+		},
+		{
+			.arch = CS_ARCH_SYSZ,
+			.mode = 0,
+			.code = (unsigned char*)SYSZ_CODE,
+			.size = sizeof(SYSZ_CODE) - 1,
+			.comment = "SystemZ"
+		},
 	};
 
 	csh handle;
 	uint64_t address = 0x1000;
 	cs_insn *all_insn;
 	int i;
+	size_t count;
+	cs_err err;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
-		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
+		printf("****************\n");
+		printf("Platform: %s\n", platforms[i].comment);
+		err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
 		if (err) {
 			printf("Failed on cs_open() with error returned: %u\n", err);
 			continue;
@@ -160,15 +188,14 @@
 
 		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &all_insn);
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &all_insn);
 		if (count) {
-			printf("****************\n");
-			printf("Platform: %s\n", platforms[i].comment);
+			size_t j;
+			int n;
+
 			print_string_hex(platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
-			int n;
 			for (j = 0; j < count; j++) {
 				cs_insn *i = &(all_insn[j]);
 				printf("0x%"PRIx64":\t%s\t\t%s // insn-ID: %u, insn-mnem: %s\n",
@@ -177,6 +204,10 @@
 
 				// print implicit registers used by this instruction
 				cs_detail *detail = i->detail;
+				// detail can be NULL on "data" instruction since we turned on SKIPDATA option above.
+				if (!detail)
+					continue;
+
 				if (detail->regs_read_count > 0) {
 					printf("\tImplicit registers read: ");
 					for (n = 0; n < detail->regs_read_count; n++) {
diff --git a/tests/test_mips.c b/tests/test_mips.c
index fb6ea96..a58e405 100644
--- a/tests/test_mips.c
+++ b/tests/test_mips.c
@@ -31,12 +31,17 @@
 
 static void print_insn_detail(cs_insn *ins)
 {
-	cs_mips *mips = &(ins->detail->mips);
+	int i;
+	cs_mips *mips;
 
+	// detail can be NULL on "data" instruction if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	mips = &(ins->detail->mips);
 	if (mips->op_count)
 		printf("\top_count: %u\n", mips->op_count);
 
-	int i;
 	for (i = 0; i < mips->op_count; i++) {
 		cs_mips_op *op = &(mips->operands[i]);
 		switch((int)op->type) {
@@ -96,6 +101,7 @@
 	uint64_t address = 0x1000;
 	cs_insn *insn;
 	int i;
+	size_t count;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
 		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
@@ -106,14 +112,15 @@
 
 		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
 		if (count) {
+			size_t j;
+
 			printf("****************\n");
 			printf("Platform: %s\n", platforms[i].comment);
 			print_string_hex("Code:", platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
 			for (j = 0; j < count; j++) {
 				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
 				print_insn_detail(&insn[j]);
diff --git a/tests/test_ppc.c b/tests/test_ppc.c
index 548e0c5..f7beebb 100644
--- a/tests/test_ppc.c
+++ b/tests/test_ppc.c
@@ -30,12 +30,17 @@
 
 static void print_insn_detail(cs_insn *ins)
 {
-	cs_ppc *ppc = &(ins->detail->ppc);
+	cs_ppc *ppc;
+	int i;
 
+	// detail can be NULL on "data" instruction if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	ppc = &(ins->detail->ppc);
 	if (ppc->op_count)
 		printf("\top_count: %u\n", ppc->op_count);
 
-	int i;
 	for (i = 0; i < ppc->op_count; i++) {
 		cs_ppc_op *op = &(ppc->operands[i]);
 		switch((int)op->type) {
@@ -88,6 +93,7 @@
 	uint64_t address = 0x1000;
 	cs_insn *insn;
 	int i;
+	size_t count;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
 		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
@@ -98,14 +104,15 @@
 
 		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
 		if (count) {
+			size_t j;
+
 			printf("****************\n");
 			printf("Platform: %s\n", platforms[i].comment);
 			print_string_hex("Code:", platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
 			for (j = 0; j < count; j++) {
 				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
 				print_insn_detail(&insn[j]);
diff --git a/tests/test_skipdata.c b/tests/test_skipdata.c
new file mode 100644
index 0000000..5597830
--- /dev/null
+++ b/tests/test_skipdata.c
@@ -0,0 +1,148 @@
+/* Capstone Disassembler Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <inttypes.h>
+
+#include <capstone.h>
+
+struct platform {
+	cs_arch arch;
+	cs_mode mode;
+	unsigned char *code;
+	size_t size;
+	char *comment;
+	cs_opt_type opt_type;
+	cs_opt_value opt_value;
+};
+
+static void print_string_hex(unsigned char *str, int len)
+{
+	unsigned char *c;
+
+	printf("Code: ");
+	for (c = str; c < str + len; c++) {
+		printf("0x%02x ", *c & 0xff);
+	}
+	printf("\n");
+}
+
+static size_t mycallback(size_t offset, void *p)
+{
+	// always skip 2 bytes when encountering data
+	return 2;
+}
+
+static void test()
+{
+#define X86_CODE32 "\x8d\x4c\x32\x08\x01\xd8\x81\xc6\x34\x12\x00\x00\x00\x91\x92"
+#define RANDOM_CODE "\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78"
+
+	struct platform platforms[] = {
+		{
+			.arch = CS_ARCH_X86,
+			.mode = CS_MODE_32,
+			.code = (unsigned char*)X86_CODE32,
+			.size = sizeof(X86_CODE32) - 1,
+			.comment = "X86 32 (Intel syntax)"
+		},
+		{ 
+			.arch = CS_ARCH_ARM,
+			.mode = CS_MODE_ARM,
+			.code = (unsigned char*)RANDOM_CODE,
+			.size = sizeof(RANDOM_CODE) - 1,
+			.comment = "Arm"
+		},
+	};
+
+	csh handle;
+	uint64_t address = 0x1000;
+	cs_insn *insn;
+	int i;
+	size_t count;
+	cs_opt_skipdata skipdata = {
+		// rename default "data" instruction from ".byte" to "db"
+		.mnemonic = "db",
+	};
+	cs_err err;
+
+	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
+		printf("****************\n");
+		printf("Platform: %s\n", platforms[i].comment);
+		err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
+		if (err) {
+			printf("Failed on cs_open() with error returned: %u\n", err);
+			continue;
+		}
+
+		if (platforms[i].opt_type)
+			cs_option(handle, platforms[i].opt_type, platforms[i].opt_value);
+
+		// turn on SKIPDATA mode
+		cs_option(handle, CS_OPT_SKIPDATA, CS_OPT_ON);
+
+		// Default "data" instruction's name is ".byte". To rename it to "db",
+		// just uncomment the code below.
+		// cs_option(handle, CS_OPT_SKIPDATA_SETUP, (size_t)&skipdata);
+
+		// Uncomment 2 lines below to customize SKIPDATA mode with our callback
+		// skipdata.callback = &mycallback;
+		// cs_option(handle, CS_OPT_SKIPDATA_SETUP, (size_t)&skipdata);
+
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		if (count) {
+			size_t j;
+
+			print_string_hex(platforms[i].code, platforms[i].size);
+			printf("Disasm:\n");
+
+			for (j = 0; j < count; j++) {
+				printf("0x%"PRIx64":\t%s\t\t%s\n",
+						insn[j].address, insn[j].mnemonic, insn[j].op_str);
+			}
+
+			// print out the next offset, after the last insn
+			printf("0x%"PRIx64":\n", insn[j-1].address + insn[j-1].size);
+
+			// free memory allocated by cs_disasm_ex()
+			cs_free(insn, count);
+		} else {
+			printf("****************\n");
+			printf("Platform: %s\n", platforms[i].comment);
+			print_string_hex(platforms[i].code, platforms[i].size);
+			printf("ERROR: Failed to disasm given code!\n");
+		}
+
+		printf("\n");
+
+		cs_close(&handle);
+	}
+}
+
+int main()
+{
+	test();
+
+#if 0
+	#define offsetof(st, m) __builtin_offsetof(st, m)
+
+	cs_insn insn;
+	printf("size: %lu\n", sizeof(insn));
+	printf("@id: %lu\n", offsetof(cs_insn, id));
+	printf("@address: %lu\n", offsetof(cs_insn, address));
+	printf("@size: %lu\n", offsetof(cs_insn, size));
+	printf("@bytes: %lu\n", offsetof(cs_insn, bytes));
+	printf("@mnemonic: %lu\n", offsetof(cs_insn, mnemonic));
+	printf("@op_str: %lu\n", offsetof(cs_insn, op_str));
+	printf("@regs_read: %lu\n", offsetof(cs_insn, regs_read));
+	printf("@regs_read_count: %lu\n", offsetof(cs_insn, regs_read_count));
+	printf("@regs_write: %lu\n", offsetof(cs_insn, regs_write));
+	printf("@regs_write_count: %lu\n", offsetof(cs_insn, regs_write_count));
+	printf("@groups: %lu\n", offsetof(cs_insn, groups));
+	printf("@groups_count: %lu\n", offsetof(cs_insn, groups_count));
+	printf("@arch: %lu\n", offsetof(cs_insn, x86));
+#endif
+
+	return 0;
+}
diff --git a/tests/test_sparc.c b/tests/test_sparc.c
new file mode 100644
index 0000000..1de86d8
--- /dev/null
+++ b/tests/test_sparc.c
@@ -0,0 +1,151 @@
+/* Capstone Disassembler Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>
+#include <inttypes.h>
+
+#include <capstone.h>
+
+struct platform {
+	cs_arch arch;
+	cs_mode mode;
+	unsigned char *code;
+	size_t size;
+	char *comment;
+};
+
+static csh handle;
+
+static void print_string_hex(char *comment, unsigned char *str, int len)
+{
+	unsigned char *c;
+
+	printf("%s", comment);
+	for (c = str; c < str + len; c++) {
+		printf("0x%02x ", *c & 0xff);
+	}
+
+	printf("\n");
+}
+
+static void print_insn_detail(cs_insn *ins)
+{
+	cs_sparc *sparc;
+	int i;
+
+	// detail can be NULL on "data" instruction if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	sparc = &(ins->detail->sparc);
+	if (sparc->op_count)
+		printf("\top_count: %u\n", sparc->op_count);
+
+	for (i = 0; i < sparc->op_count; i++) {
+		cs_sparc_op *op = &(sparc->operands[i]);
+		switch((int)op->type) {
+			default:
+				break;
+			case SPARC_OP_REG:
+				printf("\t\toperands[%u].type: REG = %s\n", i, cs_reg_name(handle, op->reg));
+				break;
+			case SPARC_OP_IMM:
+				printf("\t\toperands[%u].type: IMM = 0x%x\n", i, op->imm);
+				break;
+			case SPARC_OP_MEM:
+				printf("\t\toperands[%u].type: MEM\n", i);
+				if (op->mem.base != X86_REG_INVALID)
+					printf("\t\t\toperands[%u].mem.base: REG = %s\n",
+							i, cs_reg_name(handle, op->mem.base));
+				if (op->mem.index != X86_REG_INVALID)
+					printf("\t\t\toperands[%u].mem.index: REG = %s\n",
+							i, cs_reg_name(handle, op->mem.index));
+				if (op->mem.disp != 0)
+					printf("\t\t\toperands[%u].mem.disp: 0x%x\n", i, op->mem.disp);
+
+				break;
+		}
+	}
+
+	if (sparc->cc != 0)
+		printf("\tCode condition: %u\n", sparc->cc);
+
+	if (sparc->hint != 0)
+		printf("\tHint code: %u\n", sparc->hint);
+
+	printf("\n");
+}
+
+static void test()
+{
+#define SPARC_CODE "\x80\xa0\x40\x02\x85\xc2\x60\x08\x85\xe8\x20\x01\x81\xe8\x00\x00\x90\x10\x20\x01\xd5\xf6\x10\x16\x21\x00\x00\x0a\x86\x00\x40\x02\x01\x00\x00\x00\x12\xbf\xff\xff\x10\xbf\xff\xff\xa0\x02\x00\x09\x0d\xbf\xff\xff\xd4\x20\x60\x00\xd4\x4e\x00\x16\x2a\xc2\x80\x03"
+
+#define SPARCV9_CODE "\x81\xa8\x0a\x24\x89\xa0\x10\x20\x89\xa0\x1a\x60\x89\xa0\x00\xe0"
+
+	struct platform platforms[] = {
+		{
+			.arch = CS_ARCH_SPARC,
+			.mode = CS_MODE_BIG_ENDIAN,
+			.code = (unsigned char*)SPARC_CODE,
+			.size = sizeof(SPARC_CODE) - 1,
+			.comment = "Sparc",
+		},
+		{
+			.arch = CS_ARCH_SPARC,
+			.mode = CS_MODE_BIG_ENDIAN + CS_MODE_V9,
+			.code = (unsigned char*)SPARCV9_CODE,
+			.size = sizeof(SPARCV9_CODE) - 1,
+			.comment = "SparcV9"
+		},
+	};
+
+	uint64_t address = 0x1000;
+	cs_insn *insn;
+	int i;
+	size_t count;
+
+	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
+		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
+		if (err) {
+			printf("Failed on cs_open() with error returned: %u\n", err);
+			continue;
+		}
+
+		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
+
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		if (count) {
+			size_t j;
+
+			printf("****************\n");
+			printf("Platform: %s\n", platforms[i].comment);
+			print_string_hex("Code:", platforms[i].code, platforms[i].size);
+			printf("Disasm:\n");
+
+			for (j = 0; j < count; j++) {
+				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
+				print_insn_detail(&insn[j]);
+			}
+			printf("0x%"PRIx64":\n", insn[j-1].address + insn[j-1].size);
+
+			// free memory allocated by cs_disasm_ex()
+			cs_free(insn, count);
+		} else {
+			printf("****************\n");
+			printf("Platform: %s\n", platforms[i].comment);
+			print_string_hex("Code:", platforms[i].code, platforms[i].size);
+			printf("ERROR: Failed to disasm given code!\n");
+		}
+
+		printf("\n");
+
+		cs_close(&handle);
+	}
+}
+
+int main()
+{
+	test();
+
+	return 0;
+}
diff --git a/tests/test_systemz.c b/tests/test_systemz.c
new file mode 100644
index 0000000..be4d24a
--- /dev/null
+++ b/tests/test_systemz.c
@@ -0,0 +1,144 @@
+/* Capstone Disassembler Engine */
+/* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
+
+#include <stdio.h>
+#include <inttypes.h>
+
+#include <capstone.h>
+
+struct platform {
+	cs_arch arch;
+	cs_mode mode;
+	unsigned char *code;
+	size_t size;
+	char *comment;
+};
+
+static csh handle;
+
+static void print_string_hex(char *comment, unsigned char *str, int len)
+{
+	unsigned char *c;
+
+	printf("%s", comment);
+	for (c = str; c < str + len; c++) {
+		printf("0x%02x ", *c & 0xff);
+	}
+
+	printf("\n");
+}
+
+static void print_insn_detail(cs_insn *ins)
+{
+	cs_sysz *sysz;
+	int i;
+
+	// detail can be NULL on "data" instruction if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	sysz = &(ins->detail->sysz);
+	if (sysz->op_count)
+		printf("\top_count: %u\n", sysz->op_count);
+
+	for (i = 0; i < sysz->op_count; i++) {
+		cs_sysz_op *op = &(sysz->operands[i]);
+		switch((int)op->type) {
+			default:
+				break;
+			case SYSZ_OP_REG:
+				printf("\t\toperands[%u].type: REG = %s\n", i, cs_reg_name(handle, op->reg));
+				break;
+			case SYSZ_OP_ACREG:
+				printf("\t\toperands[%u].type: ACREG = %u\n", i, op->reg);
+				break;
+			case SYSZ_OP_IMM:
+				printf("\t\toperands[%u].type: IMM = 0x%"PRIx64"\n", i, op->imm);
+				break;
+			case SYSZ_OP_MEM:
+				printf("\t\toperands[%u].type: MEM\n", i);
+				if (op->mem.base != SYSZ_REG_INVALID)
+					printf("\t\t\toperands[%u].mem.base: REG = %s\n",
+							i, cs_reg_name(handle, op->mem.base));
+				if (op->mem.index != SYSZ_REG_INVALID)
+					printf("\t\t\toperands[%u].mem.index: REG = %s\n",
+							i, cs_reg_name(handle, op->mem.index));
+				if (op->mem.length != 0)
+					printf("\t\t\toperands[%u].mem.length: 0x%"PRIx64"\n", i, op->mem.length);
+				if (op->mem.disp != 0)
+					printf("\t\t\toperands[%u].mem.disp: 0x%"PRIx64"\n", i, op->mem.disp);
+
+				break;
+		}
+	}
+
+	if (sysz->cc != 0)
+		printf("\tCode condition: %u\n", sysz->cc);
+
+	printf("\n");
+}
+
+static void test()
+{
+#define SYSZ_CODE "\xed\x00\x00\x00\x00\x1a\x5a\x0f\x1f\xff\xc2\x09\x80\x00\x00\x00\x07\xf7\xeb\x2a\xff\xff\x7f\x57\xe3\x01\xff\xff\x7f\x57\xeb\x00\xf0\x00\x00\x24\xb2\x4f\x00\x78\xec\x18\x00\x00\xc1\x7f"
+
+	struct platform platforms[] = {
+		{
+			.arch = CS_ARCH_SYSZ,
+			.mode = CS_MODE_BIG_ENDIAN,
+			.code = (unsigned char*)SYSZ_CODE,
+			.size = sizeof(SYSZ_CODE) - 1,
+			.comment = "SystemZ",
+		},
+	};
+
+	uint64_t address = 0x1000;
+	cs_insn *insn;
+	int i;
+	size_t count;
+
+	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
+		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
+		if (err) {
+			printf("Failed on cs_open() with error returned: %u\n", err);
+			continue;
+		}
+
+		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
+
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		if (count) {
+			size_t j;
+
+			printf("****************\n");
+			printf("Platform: %s\n", platforms[i].comment);
+			print_string_hex("Code:", platforms[i].code, platforms[i].size);
+			printf("Disasm:\n");
+
+			for (j = 0; j < count; j++) {
+				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
+				print_insn_detail(&insn[j]);
+			}
+			printf("0x%"PRIx64":\n", insn[j-1].address + insn[j-1].size);
+
+			// free memory allocated by cs_disasm_ex()
+			cs_free(insn, count);
+		} else {
+			printf("****************\n");
+			printf("Platform: %s\n", platforms[i].comment);
+			print_string_hex("Code:", platforms[i].code, platforms[i].size);
+			printf("ERROR: Failed to disasm given code!\n");
+		}
+
+		printf("\n");
+
+		cs_close(&handle);
+	}
+}
+
+int main()
+{
+	test();
+
+	return 0;
+}
diff --git a/tests/test_x86.c b/tests/test_x86.c
index 6086c58..c9624b2 100644
--- a/tests/test_x86.c
+++ b/tests/test_x86.c
@@ -33,8 +33,14 @@
 
 static void print_insn_detail(csh ud, cs_mode mode, cs_insn *ins)
 {
-	int i;
-	cs_x86 *x86 = &(ins->detail->x86);
+	int count, i;
+	cs_x86 *x86;
+
+	// detail can be NULL on "data" instruction if SKIPDATA option is turned ON
+	if (ins->detail == NULL)
+		return;
+
+	x86 = &(ins->detail->x86);
 
 	print_string_hex("\tPrefix:", x86->prefix, 5);
 
@@ -56,7 +62,7 @@
 					cs_reg_name(handle, x86->sib_base));
 	}
 
-	int count = cs_op_count(ud, ins, X86_OP_IMM);
+	count = cs_op_count(ud, ins, X86_OP_IMM);
 	if (count) {
 		printf("\timm_count: %u\n", count);
 		for (i = 1; i < count + 1; i++) {
@@ -163,6 +169,7 @@
 	uint64_t address = 0x1000;
 	cs_insn *insn;
 	int i;
+	size_t count;
 
 	for (i = 0; i < sizeof(platforms)/sizeof(platforms[0]); i++) {
 		cs_err err = cs_open(platforms[i].arch, platforms[i].mode, &handle);
@@ -176,14 +183,15 @@
 
 		cs_option(handle, CS_OPT_DETAIL, CS_OPT_ON);
 
-		size_t count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
+		count = cs_disasm_ex(handle, platforms[i].code, platforms[i].size, address, 0, &insn);
 		if (count) {
+			size_t j;
+
 			printf("****************\n");
 			printf("Platform: %s\n", platforms[i].comment);
 			print_string_hex("Code:", platforms[i].code, platforms[i].size);
 			printf("Disasm:\n");
 
-			size_t j;
 			for (j = 0; j < count; j++) {
 				printf("0x%"PRIx64":\t%s\t%s\n", insn[j].address, insn[j].mnemonic, insn[j].op_str);
 				print_insn_detail(handle, platforms[i].mode, &insn[j]);