2
0
Эх сурвалжийг харах

+ support for assembler instructions with four operands
+ support for insertq, resolves #19910

git-svn-id: trunk@18206 -

florian 14 жил өмнө
parent
commit
8308b46a94

+ 1 - 0
.gitattributes

@@ -11720,6 +11720,7 @@ tests/webtbs/tw19548.pp svneol=native#text/pascal
 tests/webtbs/tw1964.pp svneol=native#text/plain
 tests/webtbs/tw1964.pp svneol=native#text/plain
 tests/webtbs/tw19700.pp svneol=native#text/plain
 tests/webtbs/tw19700.pp svneol=native#text/plain
 tests/webtbs/tw19864.pp svneol=native#text/pascal
 tests/webtbs/tw19864.pp svneol=native#text/pascal
+tests/webtbs/tw19910.pp svneol=native#text/pascal
 tests/webtbs/tw1996.pp svneol=native#text/plain
 tests/webtbs/tw1996.pp svneol=native#text/plain
 tests/webtbs/tw19960.pp svneol=native#text/pascal
 tests/webtbs/tw19960.pp svneol=native#text/pascal
 tests/webtbs/tw19974.pp svneol=native#text/pascal
 tests/webtbs/tw19974.pp svneol=native#text/pascal

+ 1 - 1
compiler/i386/i386nop.inc

@@ -1,2 +1,2 @@
 { don't edit, this file is generated from x86ins.dat }
 { don't edit, this file is generated from x86ins.dat }
-1204;
+1205;

+ 1211 - 1204
compiler/i386/i386tab.inc

@@ -3,8428 +3,8435 @@
   (
   (
     opcode  : A_NONE;
     opcode  : A_NONE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #0;
     code    : #0;
     flags   : if_none
     flags   : if_none
   ),
   ),
   (
   (
     opcode  : A_AAA;
     opcode  : A_AAA;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#55;
     code    : #1#55;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_AAD;
     opcode  : A_AAD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#213#10;
     code    : #2#213#10;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_AAD;
     opcode  : A_AAD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#213#20;
     code    : #1#213#20;
     flags   : if_8086 or if_sb or if_nox86_64
     flags   : if_8086 or if_sb or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_AAM;
     opcode  : A_AAM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#212#10;
     code    : #2#212#10;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_AAM;
     opcode  : A_AAM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#212#20;
     code    : #1#212#20;
     flags   : if_8086 or if_sb or if_nox86_64
     flags   : if_8086 or if_sb or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_AAS;
     opcode  : A_AAS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#63;
     code    : #1#63;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#17#65;
     code    : #208#1#17#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#19#72;
     code    : #208#1#19#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#16#65;
     code    : #1#16#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#18#72;
     code    : #1#18#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#130#13;
     code    : #208#1#131#130#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#21#33;
     code    : #213#1#21#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#130#33;
     code    : #213#1#129#130#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#21#25;
     code    : #212#1#21#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#130#25;
     code    : #212#1#129#130#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#20#17;
     code    : #1#20#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#130#17;
     code    : #1#128#130#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#1#65;
     code    : #208#1#1#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#3#72;
     code    : #208#1#3#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#0#65;
     code    : #1#0#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#2#72;
     code    : #1#2#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#128#13;
     code    : #208#1#131#128#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #208#1#5#33;
     code    : #208#1#5#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#128#33;
     code    : #213#1#129#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#5#25;
     code    : #212#1#5#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#128#25;
     code    : #212#1#129#128#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#4#17;
     code    : #1#4#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#128#17;
     code    : #1#128#128#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#33#65;
     code    : #208#1#33#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#35#72;
     code    : #208#1#35#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#32#65;
     code    : #1#32#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#34#72;
     code    : #1#34#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#132#13;
     code    : #208#1#131#132#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#37#33;
     code    : #213#1#37#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#132#33;
     code    : #213#1#129#132#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#37#25;
     code    : #212#1#37#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#132#25;
     code    : #212#1#129#132#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#36#17;
     code    : #1#36#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#132#17;
     code    : #1#128#132#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ARPL;
     opcode  : A_ARPL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_reg16,ot_none);
+    optypes : (ot_reg16,ot_reg16,ot_none,ot_none);
     code    : #1#99#65;
     code    : #1#99#65;
     flags   : if_286 or if_prot or if_nox86_64
     flags   : if_286 or if_prot or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_ARPL;
     opcode  : A_ARPL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg16,ot_none);
+    optypes : (ot_memory,ot_reg16,ot_none,ot_none);
     code    : #1#99#65;
     code    : #1#99#65;
     flags   : if_286 or if_prot or if_sm or if_nox86_64
     flags   : if_286 or if_prot or if_sm or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_BOUND;
     opcode  : A_BOUND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#1#98#72;
     code    : #208#1#98#72;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_BSF;
     opcode  : A_BSF;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#188#72;
     code    : #208#2#15#188#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BSR;
     opcode  : A_BSR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#189#72;
     code    : #208#2#15#189#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BSWAP;
     opcode  : A_BSWAP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#15#8#200;
     code    : #208#1#15#8#200;
     flags   : if_486
     flags   : if_486
   ),
   ),
   (
   (
     opcode  : A_BT;
     opcode  : A_BT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#163#65;
     code    : #208#2#15#163#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BT;
     opcode  : A_BT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#132#21;
     code    : #208#2#15#186#132#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BTC;
     opcode  : A_BTC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#187#65;
     code    : #208#2#15#187#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BTC;
     opcode  : A_BTC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#135#21;
     code    : #208#2#15#186#135#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BTR;
     opcode  : A_BTR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#179#65;
     code    : #208#2#15#179#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BTR;
     opcode  : A_BTR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#134#21;
     code    : #208#2#15#186#134#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BTS;
     opcode  : A_BTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#171#65;
     code    : #208#2#15#171#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BTS;
     opcode  : A_BTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#133#21;
     code    : #208#2#15#186#133#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #208#1#232#52;
     code    : #208#1#232#52;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_near,ot_none,ot_none);
+    optypes : (ot_immediate or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#232#52;
     code    : #208#1#232#52;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_far,ot_none,ot_none);
+    optypes : (ot_immediate or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#154#28#31;
     code    : #208#1#154#28#31;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#131;
     code    : #208#1#255#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate,ot_none);
+    optypes : (ot_immediate,ot_immediate,ot_none,ot_none);
     code    : #215#1#154#29#24;
     code    : #215#1#154#29#24;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_immediate or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#154#25#24;
     code    : #212#1#154#25#24;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate or ot_bits16,ot_none);
+    optypes : (ot_immediate,ot_immediate or ot_bits16,ot_none,ot_none);
     code    : #212#1#154#25#24;
     code    : #212#1#154#25#24;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_immediate or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#154#33#24;
     code    : #213#1#154#33#24;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate or ot_bits32,ot_none);
+    optypes : (ot_immediate,ot_immediate or ot_bits32,ot_none,ot_none);
     code    : #213#1#154#33#24;
     code    : #213#1#154#33#24;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_CBW;
     opcode  : A_CBW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#152;
     code    : #212#1#152;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CDQ;
     opcode  : A_CDQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#153;
     code    : #213#1#153;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_CLC;
     opcode  : A_CLC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#248;
     code    : #1#248;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CLD;
     opcode  : A_CLD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#252;
     code    : #1#252;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CLI;
     opcode  : A_CLI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#250;
     code    : #1#250;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CLTS;
     opcode  : A_CLTS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#6;
     code    : #2#15#6;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_CMC;
     opcode  : A_CMC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#245;
     code    : #1#245;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#57#65;
     code    : #208#1#57#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#59#72;
     code    : #208#1#59#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#56#65;
     code    : #1#56#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#58#72;
     code    : #1#58#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#135#13;
     code    : #208#1#131#135#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#61#33;
     code    : #213#1#61#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#135#33;
     code    : #213#1#129#135#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#61#25;
     code    : #212#1#61#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#135#25;
     code    : #212#1#129#135#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#60#17;
     code    : #1#60#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#135#17;
     code    : #1#128#135#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none,ot_none);
     code    : #213#1#129#135#33;
     code    : #213#1#129#135#33;
     flags   : if_386 or if_sd
     flags   : if_386 or if_sd
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none,ot_none);
     code    : #212#1#129#135#25;
     code    : #212#1#129#135#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none,ot_none);
     code    : #1#128#135#17;
     code    : #1#128#135#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CMPSB;
     opcode  : A_CMPSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#1#166;
     code    : #218#1#166;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMPSD;
     opcode  : A_CMPSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#213#1#167;
     code    : #218#213#1#167;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_CMPSD;
     opcode  : A_CMPSD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #220#2#15#194#72#22;
     code    : #220#2#15#194#72#22;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_CMPSW;
     opcode  : A_CMPSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#212#1#167;
     code    : #218#212#1#167;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG;
     opcode  : A_CMPXCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#177#65;
     code    : #208#2#15#177#65;
     flags   : if_pent or if_sm
     flags   : if_pent or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG;
     opcode  : A_CMPXCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#176#65;
     code    : #2#15#176#65;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG486;
     opcode  : A_CMPXCHG486;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#167#65;
     code    : #208#2#15#167#65;
     flags   : if_486 or if_sm
     flags   : if_486 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG486;
     opcode  : A_CMPXCHG486;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#166#65;
     code    : #2#15#166#65;
     flags   : if_486 or if_undoc
     flags   : if_486 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG8B;
     opcode  : A_CMPXCHG8B;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#199#129;
     code    : #2#15#199#129;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_CPUID;
     opcode  : A_CPUID;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#162;
     code    : #2#15#162;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_CWD;
     opcode  : A_CWD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#153;
     code    : #212#1#153;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CWDE;
     opcode  : A_CWDE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#152;
     code    : #213#1#152;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_DAA;
     opcode  : A_DAA;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#39;
     code    : #1#39;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_DAS;
     opcode  : A_DAS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#47;
     code    : #1#47;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_DEC;
     opcode  : A_DEC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16 or ot_bits32,ot_none,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_none,ot_none,ot_none);
     code    : #208#8#72;
     code    : #208#8#72;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_DEC;
     opcode  : A_DEC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#129;
     code    : #208#1#255#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_DEC;
     opcode  : A_DEC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#254#129;
     code    : #1#254#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_DIV;
     opcode  : A_DIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#134;
     code    : #208#1#247#134;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_DIV;
     opcode  : A_DIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#134;
     code    : #1#246#134;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_EMMS;
     opcode  : A_EMMS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#119;
     code    : #2#15#119;
     flags   : if_pent or if_mmx
     flags   : if_pent or if_mmx
   ),
   ),
   (
   (
     opcode  : A_ENTER;
     opcode  : A_ENTER;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate,ot_none);
+    optypes : (ot_immediate,ot_immediate,ot_none,ot_none);
     code    : #1#200#24#21;
     code    : #1#200#24#21;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_F2XM1;
     opcode  : A_F2XM1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#240;
     code    : #2#217#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FABS;
     opcode  : A_FABS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#225;
     code    : #2#217#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#128;
     code    : #1#216#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#128;
     code    : #1#220#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#193;
     code    : #2#222#193;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#192;
     code    : #1#220#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#192;
     code    : #1#220#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#192;
     code    : #1#216#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#192;
     code    : #1#216#9#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADDP;
     opcode  : A_FADDP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#193;
     code    : #2#222#193;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADDP;
     opcode  : A_FADDP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#192;
     code    : #1#222#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADDP;
     opcode  : A_FADDP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#192;
     code    : #1#222#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBLD;
     opcode  : A_FBLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#223#132;
     code    : #1#223#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBLD;
     opcode  : A_FBLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#223#132;
     code    : #1#223#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBSTP;
     opcode  : A_FBSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#223#134;
     code    : #1#223#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBSTP;
     opcode  : A_FBSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#223#134;
     code    : #1#223#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCHS;
     opcode  : A_FCHS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#224;
     code    : #2#217#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCLEX;
     opcode  : A_FCLEX;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#226;
     code    : #3#155#219#226;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVB;
     opcode  : A_FCMOVB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#193;
     code    : #2#218#193;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVB;
     opcode  : A_FCMOVB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#192;
     code    : #1#218#8#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVB;
     opcode  : A_FCMOVB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#192;
     code    : #1#218#9#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVBE;
     opcode  : A_FCMOVBE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#209;
     code    : #2#218#209;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVBE;
     opcode  : A_FCMOVBE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#208;
     code    : #1#218#8#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVBE;
     opcode  : A_FCMOVBE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#208;
     code    : #1#218#9#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVE;
     opcode  : A_FCMOVE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#201;
     code    : #2#218#201;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVE;
     opcode  : A_FCMOVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#200;
     code    : #1#218#8#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVE;
     opcode  : A_FCMOVE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#200;
     code    : #1#218#9#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNB;
     opcode  : A_FCMOVNB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#193;
     code    : #2#219#193;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNB;
     opcode  : A_FCMOVNB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#192;
     code    : #1#219#8#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNB;
     opcode  : A_FCMOVNB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#192;
     code    : #1#219#9#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNBE;
     opcode  : A_FCMOVNBE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#209;
     code    : #2#219#209;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNBE;
     opcode  : A_FCMOVNBE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#208;
     code    : #1#219#8#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNBE;
     opcode  : A_FCMOVNBE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#208;
     code    : #1#219#9#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNE;
     opcode  : A_FCMOVNE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#201;
     code    : #2#219#201;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNE;
     opcode  : A_FCMOVNE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#200;
     code    : #1#219#8#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNE;
     opcode  : A_FCMOVNE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#200;
     code    : #1#219#9#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNU;
     opcode  : A_FCMOVNU;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#217;
     code    : #2#219#217;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNU;
     opcode  : A_FCMOVNU;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#216;
     code    : #1#219#8#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNU;
     opcode  : A_FCMOVNU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#216;
     code    : #1#219#9#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVU;
     opcode  : A_FCMOVU;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#217;
     code    : #2#218#217;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVU;
     opcode  : A_FCMOVU;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#216;
     code    : #1#218#8#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVU;
     opcode  : A_FCMOVU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#216;
     code    : #1#218#9#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#130;
     code    : #1#216#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#130;
     code    : #1#220#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#216#209;
     code    : #2#216#209;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#208;
     code    : #1#216#8#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#208;
     code    : #1#216#9#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMI;
     opcode  : A_FCOMI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#241;
     code    : #2#219#241;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMI;
     opcode  : A_FCOMI;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#240;
     code    : #1#219#8#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMI;
     opcode  : A_FCOMI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#240;
     code    : #1#219#9#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMIP;
     opcode  : A_FCOMIP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#223#241;
     code    : #2#223#241;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMIP;
     opcode  : A_FCOMIP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#223#8#240;
     code    : #1#223#8#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMIP;
     opcode  : A_FCOMIP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#223#9#240;
     code    : #1#223#9#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#131;
     code    : #1#216#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#131;
     code    : #1#220#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#216#217;
     code    : #2#216#217;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#216;
     code    : #1#216#8#216;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#216;
     code    : #1#216#9#216;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMPP;
     opcode  : A_FCOMPP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#217;
     code    : #2#222#217;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOS;
     opcode  : A_FCOS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#255;
     code    : #2#217#255;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDECSTP;
     opcode  : A_FDECSTP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#246;
     code    : #2#217#246;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDISI;
     opcode  : A_FDISI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#225;
     code    : #3#155#219#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#134;
     code    : #1#216#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#134;
     code    : #1#220#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#241;
     code    : #2#220#241;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#240;
     code    : #1#220#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#240;
     code    : #1#220#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#240;
     code    : #1#216#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#240;
     code    : #1#216#9#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVP;
     opcode  : A_FDIVP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#241;
     code    : #2#222#241;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVP;
     opcode  : A_FDIVP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#240;
     code    : #1#222#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVP;
     opcode  : A_FDIVP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#240;
     code    : #1#222#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#135;
     code    : #1#216#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#135;
     code    : #1#220#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#249;
     code    : #2#220#249;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#248;
     code    : #1#220#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#248;
     code    : #1#220#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#248;
     code    : #1#216#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#248;
     code    : #1#216#9#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVRP;
     opcode  : A_FDIVRP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#249;
     code    : #2#222#249;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVRP;
     opcode  : A_FDIVRP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#248;
     code    : #1#222#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVRP;
     opcode  : A_FDIVRP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#248;
     code    : #1#222#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FEMMS;
     opcode  : A_FEMMS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#14;
     code    : #2#15#14;
     flags   : if_pent or if_3dnow
     flags   : if_pent or if_3dnow
   ),
   ),
   (
   (
     opcode  : A_FENI;
     opcode  : A_FENI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#224;
     code    : #3#155#219#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FFREE;
     opcode  : A_FFREE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#192;
     code    : #1#221#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIADD;
     opcode  : A_FIADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#128;
     code    : #1#222#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIADD;
     opcode  : A_FIADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#128;
     code    : #1#218#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOM;
     opcode  : A_FICOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#130;
     code    : #1#222#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOM;
     opcode  : A_FICOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#130;
     code    : #1#218#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOMP;
     opcode  : A_FICOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#131;
     code    : #1#222#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOMP;
     opcode  : A_FICOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#131;
     code    : #1#218#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIV;
     opcode  : A_FIDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#134;
     code    : #1#222#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIV;
     opcode  : A_FIDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#134;
     code    : #1#218#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIVR;
     opcode  : A_FIDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#135;
     code    : #1#222#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIVR;
     opcode  : A_FIDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#135;
     code    : #1#218#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FILD;
     opcode  : A_FILD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#128;
     code    : #1#219#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FILD;
     opcode  : A_FILD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#223#128;
     code    : #1#223#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FILD;
     opcode  : A_FILD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#223#133;
     code    : #1#223#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIMUL;
     opcode  : A_FIMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#129;
     code    : #1#222#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIMUL;
     opcode  : A_FIMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#129;
     code    : #1#218#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FINCSTP;
     opcode  : A_FINCSTP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#247;
     code    : #2#217#247;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FINIT;
     opcode  : A_FINIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#227;
     code    : #3#155#219#227;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIST;
     opcode  : A_FIST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#130;
     code    : #1#219#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIST;
     opcode  : A_FIST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#223#130;
     code    : #212#1#223#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTP;
     opcode  : A_FISTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#131;
     code    : #1#219#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTP;
     opcode  : A_FISTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#223#131;
     code    : #212#1#223#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTP;
     opcode  : A_FISTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#223#135;
     code    : #1#223#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTTP;
     opcode  : A_FISTTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#129;
     code    : #1#219#129;
     flags   : if_prescott or if_fpu
     flags   : if_prescott or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTTP;
     opcode  : A_FISTTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#223#129;
     code    : #1#223#129;
     flags   : if_prescott or if_fpu
     flags   : if_prescott or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTTP;
     opcode  : A_FISTTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#129;
     code    : #1#221#129;
     flags   : if_prescott or if_fpu
     flags   : if_prescott or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUB;
     opcode  : A_FISUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#132;
     code    : #1#222#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUB;
     opcode  : A_FISUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#132;
     code    : #1#218#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUBR;
     opcode  : A_FISUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#133;
     code    : #1#222#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUBR;
     opcode  : A_FISUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#133;
     code    : #1#218#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#217#128;
     code    : #1#217#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#128;
     code    : #1#221#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#219#133;
     code    : #1#219#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#217#8#192;
     code    : #1#217#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD1;
     opcode  : A_FLD1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#232;
     code    : #2#217#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDCW;
     opcode  : A_FLDCW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#133;
     code    : #1#217#133;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FLDENV;
     opcode  : A_FLDENV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#132;
     code    : #1#217#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDL2E;
     opcode  : A_FLDL2E;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#234;
     code    : #2#217#234;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDL2T;
     opcode  : A_FLDL2T;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#233;
     code    : #2#217#233;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDLG2;
     opcode  : A_FLDLG2;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#236;
     code    : #2#217#236;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDLN2;
     opcode  : A_FLDLN2;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#237;
     code    : #2#217#237;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDPI;
     opcode  : A_FLDPI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#235;
     code    : #2#217#235;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDZ;
     opcode  : A_FLDZ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#238;
     code    : #2#217#238;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#129;
     code    : #1#216#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#129;
     code    : #1#220#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#201;
     code    : #2#220#201;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#200;
     code    : #1#220#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#200;
     code    : #1#220#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#200;
     code    : #1#216#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#200;
     code    : #1#216#9#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMULP;
     opcode  : A_FMULP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#201;
     code    : #2#222#201;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMULP;
     opcode  : A_FMULP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#200;
     code    : #1#222#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMULP;
     opcode  : A_FMULP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#200;
     code    : #1#222#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNCLEX;
     opcode  : A_FNCLEX;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#226;
     code    : #2#219#226;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNDISI;
     opcode  : A_FNDISI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#225;
     code    : #2#219#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNENI;
     opcode  : A_FNENI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#224;
     code    : #2#219#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNINIT;
     opcode  : A_FNINIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#227;
     code    : #2#219#227;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNOP;
     opcode  : A_FNOP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#208;
     code    : #2#217#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNSAVE;
     opcode  : A_FNSAVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#221#134;
     code    : #1#221#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNSTCW;
     opcode  : A_FNSTCW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#135;
     code    : #1#217#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FNSTENV;
     opcode  : A_FNSTENV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#134;
     code    : #1#217#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNSTSW;
     opcode  : A_FNSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#221#135;
     code    : #1#221#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FNSTSW;
     opcode  : A_FNSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_ax,ot_none,ot_none);
+    optypes : (ot_reg_ax,ot_none,ot_none,ot_none);
     code    : #2#223#224;
     code    : #2#223#224;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPATAN;
     opcode  : A_FPATAN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#243;
     code    : #2#217#243;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPREM;
     opcode  : A_FPREM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#248;
     code    : #2#217#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPREM1;
     opcode  : A_FPREM1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#245;
     code    : #2#217#245;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPTAN;
     opcode  : A_FPTAN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#242;
     code    : #2#217#242;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FRNDINT;
     opcode  : A_FRNDINT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#252;
     code    : #2#217#252;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FRSTOR;
     opcode  : A_FRSTOR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#221#132;
     code    : #1#221#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSAVE;
     opcode  : A_FSAVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#221#134;
     code    : #2#155#221#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSCALE;
     opcode  : A_FSCALE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#253;
     code    : #2#217#253;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSETPM;
     opcode  : A_FSETPM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#228;
     code    : #2#219#228;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSIN;
     opcode  : A_FSIN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#254;
     code    : #2#217#254;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSINCOS;
     opcode  : A_FSINCOS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#251;
     code    : #2#217#251;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSQRT;
     opcode  : A_FSQRT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#250;
     code    : #2#217#250;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FST;
     opcode  : A_FST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#217#130;
     code    : #1#217#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FST;
     opcode  : A_FST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#130;
     code    : #1#221#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FST;
     opcode  : A_FST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#208;
     code    : #1#221#8#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTCW;
     opcode  : A_FSTCW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#217#135;
     code    : #2#155#217#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FSTENV;
     opcode  : A_FSTENV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#217#134;
     code    : #2#155#217#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#217#131;
     code    : #1#217#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#131;
     code    : #1#221#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#219#135;
     code    : #1#219#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#216;
     code    : #1#221#8#216;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTSW;
     opcode  : A_FSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#221#135;
     code    : #2#155#221#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FSTSW;
     opcode  : A_FSTSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#223#224;
     code    : #3#155#223#224;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTSW;
     opcode  : A_FSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_ax,ot_none,ot_none);
+    optypes : (ot_reg_ax,ot_none,ot_none,ot_none);
     code    : #3#155#223#224;
     code    : #3#155#223#224;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#132;
     code    : #1#216#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#132;
     code    : #1#220#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#225;
     code    : #2#220#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#224;
     code    : #1#220#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#224;
     code    : #1#220#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#224;
     code    : #1#216#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#224;
     code    : #1#216#9#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBP;
     opcode  : A_FSUBP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#225;
     code    : #2#222#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBP;
     opcode  : A_FSUBP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#224;
     code    : #1#222#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBP;
     opcode  : A_FSUBP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#224;
     code    : #1#222#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#133;
     code    : #1#216#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#133;
     code    : #1#220#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#233;
     code    : #2#220#233;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#232;
     code    : #1#220#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#232;
     code    : #1#220#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#232;
     code    : #1#216#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#232;
     code    : #1#216#9#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBRP;
     opcode  : A_FSUBRP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#233;
     code    : #2#222#233;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBRP;
     opcode  : A_FSUBRP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#232;
     code    : #1#222#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBRP;
     opcode  : A_FSUBRP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#232;
     code    : #1#222#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FTST;
     opcode  : A_FTST;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#228;
     code    : #2#217#228;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOM;
     opcode  : A_FUCOM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#221#225;
     code    : #2#221#225;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOM;
     opcode  : A_FUCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#224;
     code    : #1#221#8#224;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOM;
     opcode  : A_FUCOM;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#221#9#224;
     code    : #1#221#9#224;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMI;
     opcode  : A_FUCOMI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#233;
     code    : #2#219#233;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMI;
     opcode  : A_FUCOMI;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#232;
     code    : #1#219#8#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMI;
     opcode  : A_FUCOMI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#232;
     code    : #1#219#9#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMIP;
     opcode  : A_FUCOMIP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#223#233;
     code    : #2#223#233;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMIP;
     opcode  : A_FUCOMIP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#223#8#232;
     code    : #1#223#8#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMIP;
     opcode  : A_FUCOMIP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#223#9#232;
     code    : #1#223#9#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMP;
     opcode  : A_FUCOMP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#221#233;
     code    : #2#221#233;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMP;
     opcode  : A_FUCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#232;
     code    : #1#221#8#232;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMP;
     opcode  : A_FUCOMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#221#9#232;
     code    : #1#221#9#232;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMPP;
     opcode  : A_FUCOMPP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#233;
     code    : #2#218#233;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FWAIT;
     opcode  : A_FWAIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#155;
     code    : #1#155;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXAM;
     opcode  : A_FXAM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#229;
     code    : #2#217#229;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#201;
     code    : #2#217#201;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#217#8#200;
     code    : #1#217#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#217#8#200;
     code    : #1#217#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#217#9#200;
     code    : #1#217#9#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXTRACT;
     opcode  : A_FXTRACT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#244;
     code    : #2#217#244;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FYL2X;
     opcode  : A_FYL2X;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#241;
     code    : #2#217#241;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FYL2XP1;
     opcode  : A_FYL2XP1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#249;
     code    : #2#217#249;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_HLT;
     opcode  : A_HLT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#244;
     code    : #1#244;
     flags   : if_8086 or if_priv
     flags   : if_8086 or if_priv
   ),
   ),
   (
   (
     opcode  : A_IBTS;
     opcode  : A_IBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#167#65;
     code    : #208#2#15#167#65;
     flags   : if_386 or if_sm or if_undoc
     flags   : if_386 or if_sm or if_undoc
   ),
   ),
   (
   (
     opcode  : A_ICEBP;
     opcode  : A_ICEBP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_IDIV;
     opcode  : A_IDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#135;
     code    : #208#1#247#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IDIV;
     opcode  : A_IDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#135;
     code    : #1#246#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#175#72;
     code    : #208#2#15#175#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#133;
     code    : #208#1#247#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed,ot_none);
     code    : #208#1#107#72#14;
     code    : #208#1#107#72#14;
     flags   : if_286 or if_sm
     flags   : if_286 or if_sm
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate,ot_none);
     code    : #208#1#105#72#34;
     code    : #208#1#105#72#34;
     flags   : if_286 or if_sm or if_sd or if_ar2
     flags   : if_286 or if_sm or if_sd or if_ar2
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#107#64#13;
     code    : #208#1#107#64#13;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_immediate,ot_none);
+    optypes : (ot_reg32,ot_immediate,ot_none,ot_none);
     code    : #213#1#105#64#33;
     code    : #213#1#105#64#33;
     flags   : if_286 or if_sd
     flags   : if_286 or if_sd
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg16,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed);
+    optypes : (ot_reg16,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed,ot_none);
     code    : #212#1#107#72#14;
     code    : #212#1#107#72#14;
     flags   : if_286 or if_sm
     flags   : if_286 or if_sm
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg16,ot_rm_gpr,ot_immediate);
+    optypes : (ot_reg16,ot_rm_gpr,ot_immediate,ot_none);
     code    : #212#1#105#72#26;
     code    : #212#1#105#72#26;
     flags   : if_286 or if_sm or if_sw or if_ar2
     flags   : if_286 or if_sm or if_sw or if_ar2
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_reg16,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #212#1#107#64#13;
     code    : #212#1#107#64#13;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_immediate,ot_none);
+    optypes : (ot_reg16,ot_immediate,ot_none,ot_none);
     code    : #212#1#105#64#25;
     code    : #212#1#105#64#25;
     flags   : if_286 or if_sw
     flags   : if_286 or if_sw
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#133;
     code    : #1#246#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#228#21;
     code    : #1#228#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_reg_ax or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#229#21;
     code    : #208#1#229#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_reg_dx,ot_none);
+    optypes : (ot_reg_al,ot_reg_dx,ot_none,ot_none);
     code    : #1#236;
     code    : #1#236;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax or ot_bits32,ot_reg_dx,ot_none);
+    optypes : (ot_reg_ax or ot_bits32,ot_reg_dx,ot_none,ot_none);
     code    : #208#1#237;
     code    : #208#1#237;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INC;
     opcode  : A_INC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16 or ot_bits32,ot_none,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_none,ot_none,ot_none);
     code    : #208#8#64;
     code    : #208#8#64;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_INC;
     opcode  : A_INC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#128;
     code    : #208#1#255#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INC;
     opcode  : A_INC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#254#128;
     code    : #1#254#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INSB;
     opcode  : A_INSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#108;
     code    : #1#108;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_INSD;
     opcode  : A_INSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#109;
     code    : #213#1#109;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_INSW;
     opcode  : A_INSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#109;
     code    : #212#1#109;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_INT;
     opcode  : A_INT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#205#20;
     code    : #1#205#20;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_INT01;
     opcode  : A_INT01;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_INT1;
     opcode  : A_INT1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_INT03;
     opcode  : A_INT03;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#204;
     code    : #1#204;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INT3;
     opcode  : A_INT3;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#204;
     code    : #1#204;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INTO;
     opcode  : A_INTO;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#206;
     code    : #1#206;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_INVD;
     opcode  : A_INVD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#8;
     code    : #2#15#8;
     flags   : if_486 or if_priv
     flags   : if_486 or if_priv
   ),
   ),
   (
   (
     opcode  : A_INVLPG;
     opcode  : A_INVLPG;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#135;
     code    : #2#15#1#135;
     flags   : if_486 or if_priv
     flags   : if_486 or if_priv
   ),
   ),
   (
   (
     opcode  : A_IRET;
     opcode  : A_IRET;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#207;
     code    : #215#1#207;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IRETD;
     opcode  : A_IRETD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#207;
     code    : #213#1#207;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_IRETW;
     opcode  : A_IRETW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#207;
     code    : #212#1#207;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JCXZ;
     opcode  : A_JCXZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #200#1#227#40;
     code    : #200#1#227#40;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_JECXZ;
     opcode  : A_JECXZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #201#1#227#40;
     code    : #201#1#227#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits8,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#235#40;
     code    : #1#235#40;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none,ot_none);
     code    : #208#1#233#52;
     code    : #208#1#233#52;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#132;
     code    : #208#1#255#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_short,ot_none,ot_none);
+    optypes : (ot_immediate or ot_short,ot_none,ot_none,ot_none);
     code    : #1#235#40;
     code    : #1#235#40;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_near,ot_none,ot_none);
+    optypes : (ot_immediate or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#233#52;
     code    : #208#1#233#52;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_far,ot_none,ot_none);
+    optypes : (ot_immediate or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#234#28#31;
     code    : #208#1#234#28#31;
     flags   : if_8086 or if_pass2 or if_nox86_64
     flags   : if_8086 or if_pass2 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#132;
     code    : #208#1#255#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#133;
     code    : #208#1#255#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate,ot_none);
+    optypes : (ot_immediate,ot_immediate,ot_none,ot_none);
     code    : #215#1#234#29#24;
     code    : #215#1#234#29#24;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate or ot_bits16,ot_none);
+    optypes : (ot_immediate,ot_immediate or ot_bits16,ot_none,ot_none);
     code    : #212#1#234#25#24;
     code    : #212#1#234#25#24;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate or ot_bits32,ot_none);
+    optypes : (ot_immediate,ot_immediate or ot_bits32,ot_none,ot_none);
     code    : #213#1#234#33#24;
     code    : #213#1#234#33#24;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LAHF;
     opcode  : A_LAHF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#159;
     code    : #1#159;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LAR;
     opcode  : A_LAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#2#72;
     code    : #208#2#15#2#72;
     flags   : if_286 or if_prot or if_sm
     flags   : if_286 or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_LCALL;
     opcode  : A_LCALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LCALL;
     opcode  : A_LCALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LCALL;
     opcode  : A_LCALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#131;
     code    : #208#1#255#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LDS;
     opcode  : A_LDS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#1#197#72;
     code    : #208#1#197#72;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LEA;
     opcode  : A_LEA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#1#141#72;
     code    : #208#1#141#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LEA;
     opcode  : A_LEA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#141#72;
     code    : #208#1#141#72;
     flags   : if_8086 or if_sd
     flags   : if_8086 or if_sd
   ),
   ),
   (
   (
     opcode  : A_LEAVE;
     opcode  : A_LEAVE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#201;
     code    : #1#201;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_LES;
     opcode  : A_LES;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#1#196#72;
     code    : #208#1#196#72;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LFS;
     opcode  : A_LFS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#2#15#180#72;
     code    : #208#2#15#180#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LGDT;
     opcode  : A_LGDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#130;
     code    : #2#15#1#130;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_LGS;
     opcode  : A_LGS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#2#15#181#72;
     code    : #208#2#15#181#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LIDT;
     opcode  : A_LIDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#131;
     code    : #2#15#1#131;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_LJMP;
     opcode  : A_LJMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#133;
     code    : #208#1#255#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LJMP;
     opcode  : A_LJMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#133;
     code    : #208#1#255#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LJMP;
     opcode  : A_LJMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#132;
     code    : #208#1#255#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LLDT;
     opcode  : A_LLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#130;
     code    : #2#15#0#130;
     flags   : if_286 or if_prot or if_priv
     flags   : if_286 or if_prot or if_priv
   ),
   ),
   (
   (
     opcode  : A_LMSW;
     opcode  : A_LMSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#1#134;
     code    : #2#15#1#134;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_LOADALL;
     opcode  : A_LOADALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#7;
     code    : #2#15#7;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_LOADALL286;
     opcode  : A_LOADALL286;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#5;
     code    : #2#15#5;
     flags   : if_286 or if_undoc
     flags   : if_286 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_LOCK;
     opcode  : A_LOCK;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#240;
     code    : #1#240;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_LODSB;
     opcode  : A_LODSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#172;
     code    : #1#172;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LODSD;
     opcode  : A_LODSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#173;
     code    : #213#1#173;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LODSW;
     opcode  : A_LODSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#173;
     code    : #212#1#173;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOP;
     opcode  : A_LOOP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#226#40;
     code    : #202#1#226#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOP;
     opcode  : A_LOOP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_cx,ot_none);
+    optypes : (ot_immediate,ot_reg_cx,ot_none,ot_none);
     code    : #200#1#226#40;
     code    : #200#1#226#40;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LOOP;
     opcode  : A_LOOP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#226#40;
     code    : #201#1#226#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPE;
     opcode  : A_LOOPE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#225#40;
     code    : #202#1#225#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPE;
     opcode  : A_LOOPE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_cx,ot_none);
+    optypes : (ot_immediate,ot_reg_cx,ot_none,ot_none);
     code    : #200#1#225#40;
     code    : #200#1#225#40;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LOOPE;
     opcode  : A_LOOPE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#225#40;
     code    : #201#1#225#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPNE;
     opcode  : A_LOOPNE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#224#40;
     code    : #202#1#224#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPNE;
     opcode  : A_LOOPNE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_cx,ot_none);
+    optypes : (ot_immediate,ot_reg_cx,ot_none,ot_none);
     code    : #200#1#224#40;
     code    : #200#1#224#40;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LOOPNE;
     opcode  : A_LOOPNE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#224#40;
     code    : #201#1#224#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPNZ;
     opcode  : A_LOOPNZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#224#40;
     code    : #202#1#224#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPNZ;
     opcode  : A_LOOPNZ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_cx,ot_none);
+    optypes : (ot_immediate,ot_reg_cx,ot_none,ot_none);
     code    : #200#1#224#40;
     code    : #200#1#224#40;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LOOPNZ;
     opcode  : A_LOOPNZ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#224#40;
     code    : #201#1#224#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPZ;
     opcode  : A_LOOPZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#225#40;
     code    : #202#1#225#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPZ;
     opcode  : A_LOOPZ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_cx,ot_none);
+    optypes : (ot_immediate,ot_reg_cx,ot_none,ot_none);
     code    : #200#1#225#40;
     code    : #200#1#225#40;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_LOOPZ;
     opcode  : A_LOOPZ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#225#40;
     code    : #201#1#225#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LSL;
     opcode  : A_LSL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#3#72;
     code    : #208#2#15#3#72;
     flags   : if_286 or if_prot or if_sm
     flags   : if_286 or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_LSS;
     opcode  : A_LSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#2#15#178#72;
     code    : #208#2#15#178#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LTR;
     opcode  : A_LTR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#131;
     code    : #2#15#0#131;
     flags   : if_286 or if_prot or if_priv
     flags   : if_286 or if_prot or if_priv
   ),
   ),
   (
   (
     opcode  : A_MONITOR;
     opcode  : A_MONITOR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#200;
     code    : #3#15#1#200;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_MONITOR;
     opcode  : A_MONITOR;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg_eax,ot_reg_ecx,ot_reg_edx);
+    optypes : (ot_reg_eax,ot_reg_ecx,ot_reg_edx,ot_none);
     code    : #3#15#1#200;
     code    : #3#15#1#200;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_ax,ot_none);
+    optypes : (ot_mem_offs,ot_reg_ax,ot_none,ot_none);
     code    : #212#1#163#36;
     code    : #212#1#163#36;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_eax,ot_none);
+    optypes : (ot_mem_offs,ot_reg_eax,ot_none,ot_none);
     code    : #213#1#163#36;
     code    : #213#1#163#36;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#137#65;
     code    : #208#1#137#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_mem_offs,ot_none);
+    optypes : (ot_reg_ax,ot_mem_offs,ot_none,ot_none);
     code    : #212#1#161#37;
     code    : #212#1#161#37;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_mem_offs,ot_none);
+    optypes : (ot_reg_eax,ot_mem_offs,ot_none,ot_none);
     code    : #213#1#161#37;
     code    : #213#1#161#37;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#139#72;
     code    : #208#1#139#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_immediate,ot_none);
+    optypes : (ot_reg32,ot_immediate,ot_none,ot_none);
     code    : #213#8#184#33;
     code    : #213#8#184#33;
     flags   : if_386 or if_sd
     flags   : if_386 or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#199#128#33;
     code    : #213#1#199#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_immediate,ot_none);
+    optypes : (ot_reg16,ot_immediate,ot_none,ot_none);
     code    : #212#8#184#25;
     code    : #212#8#184#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#199#128#25;
     code    : #212#1#199#128#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_al,ot_none);
+    optypes : (ot_mem_offs,ot_reg_al,ot_none,ot_none);
     code    : #1#162#36;
     code    : #1#162#36;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#136#65;
     code    : #1#136#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_mem_offs,ot_none);
+    optypes : (ot_reg_al,ot_mem_offs,ot_none,ot_none);
     code    : #1#160#37;
     code    : #1#160#37;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#138#72;
     code    : #1#138#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_immediate,ot_none);
+    optypes : (ot_reg8,ot_immediate,ot_none,ot_none);
     code    : #8#176#17;
     code    : #8#176#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#198#128#17;
     code    : #1#198#128#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_cs,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_cs,ot_none,ot_none);
     code    : #208#1#140#129;
     code    : #208#1#140#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_dess,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_dess,ot_none,ot_none);
     code    : #208#1#140#65;
     code    : #208#1#140#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_fsgs,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_fsgs,ot_none,ot_none);
     code    : #208#1#140#65;
     code    : #208#1#140#65;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dess,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none);
+    optypes : (ot_reg_dess,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none,ot_none);
     code    : #209#1#142#72;
     code    : #209#1#142#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_fsgs,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none);
+    optypes : (ot_reg_fsgs,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none,ot_none);
     code    : #209#1#142#72;
     code    : #209#1#142#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg_cr4,ot_none);
+    optypes : (ot_reg32,ot_reg_cr4,ot_none,ot_none);
     code    : #2#15#32#132;
     code    : #2#15#32#132;
     flags   : if_pent or if_priv or if_nox86_64
     flags   : if_pent or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg_creg,ot_none);
+    optypes : (ot_reg32,ot_reg_creg,ot_none,ot_none);
     code    : #2#15#32#65;
     code    : #2#15#32#65;
     flags   : if_386 or if_priv or if_nox86_64
     flags   : if_386 or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg_dreg,ot_none);
+    optypes : (ot_reg32,ot_reg_dreg,ot_none,ot_none);
     code    : #2#15#33#65;
     code    : #2#15#33#65;
     flags   : if_386 or if_priv or if_nox86_64
     flags   : if_386 or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg_treg,ot_none);
+    optypes : (ot_reg32,ot_reg_treg,ot_none,ot_none);
     code    : #2#15#36#65;
     code    : #2#15#36#65;
     flags   : if_386 or if_priv or if_nox86_64
     flags   : if_386 or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_cr4,ot_reg32,ot_none);
+    optypes : (ot_reg_cr4,ot_reg32,ot_none,ot_none);
     code    : #2#15#34#140;
     code    : #2#15#34#140;
     flags   : if_pent or if_priv or if_nox86_64
     flags   : if_pent or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_creg,ot_reg32,ot_none);
+    optypes : (ot_reg_creg,ot_reg32,ot_none,ot_none);
     code    : #2#15#34#72;
     code    : #2#15#34#72;
     flags   : if_386 or if_priv or if_nox86_64
     flags   : if_386 or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dreg,ot_reg32,ot_none);
+    optypes : (ot_reg_dreg,ot_reg32,ot_none,ot_none);
     code    : #2#15#35#72;
     code    : #2#15#35#72;
     flags   : if_386 or if_priv or if_nox86_64
     flags   : if_386 or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_treg,ot_reg32,ot_none);
+    optypes : (ot_reg_treg,ot_reg32,ot_none,ot_none);
     code    : #2#15#38#72;
     code    : #2#15#38#72;
     flags   : if_386 or if_priv or if_nox86_64
     flags   : if_386 or if_priv or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_rm_gpr or ot_bits32,ot_none);
+    optypes : (ot_mmxreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
     code    : #2#15#110#72;
     code    : #2#15#110#72;
     flags   : if_pent or if_mmx or if_sd
     flags   : if_pent or if_mmx or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_mmxreg,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#126#65;
     code    : #2#15#126#65;
     flags   : if_pent or if_mmx or if_sd
     flags   : if_pent or if_mmx or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
+    optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
     code    : #241#2#15#110#72;
     code    : #241#2#15#110#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#126#65;
     code    : #241#2#15#126#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#111#72;
     code    : #2#15#111#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxrm,ot_mmxreg,ot_none);
+    optypes : (ot_mmxrm,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#127#65;
     code    : #2#15#127#65;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#126#72;
     code    : #219#2#15#126#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#214#65;
     code    : #241#2#15#214#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVSB;
     opcode  : A_MOVSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#164;
     code    : #1#164;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOVSD;
     opcode  : A_MOVSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#165;
     code    : #213#1#165;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVSD;
     opcode  : A_MOVSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#16#72;
     code    : #220#2#15#16#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVSD;
     opcode  : A_MOVSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #220#2#15#17#65;
     code    : #220#2#15#17#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVSW;
     opcode  : A_MOVSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#165;
     code    : #212#1#165;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOVSX;
     opcode  : A_MOVSX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none,ot_none);
     code    : #208#2#15#191#72;
     code    : #208#2#15#191#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVSX;
     opcode  : A_MOVSX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #208#2#15#190#72;
     code    : #208#2#15#190#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVZX;
     opcode  : A_MOVZX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none,ot_none);
     code    : #208#2#15#183#72;
     code    : #208#2#15#183#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVZX;
     opcode  : A_MOVZX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #208#2#15#182#72;
     code    : #208#2#15#182#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MUL;
     opcode  : A_MUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#132;
     code    : #208#1#247#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MUL;
     opcode  : A_MUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#132;
     code    : #1#246#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MWAIT;
     opcode  : A_MWAIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#201;
     code    : #3#15#1#201;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_MWAIT;
     opcode  : A_MWAIT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_reg_ecx,ot_none);
+    optypes : (ot_reg_eax,ot_reg_ecx,ot_none,ot_none);
     code    : #3#15#1#201;
     code    : #3#15#1#201;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_NEG;
     opcode  : A_NEG;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#131;
     code    : #208#1#247#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NEG;
     opcode  : A_NEG;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#131;
     code    : #1#246#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NOP;
     opcode  : A_NOP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#144;
     code    : #1#144;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NOT;
     opcode  : A_NOT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#130;
     code    : #208#1#247#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NOT;
     opcode  : A_NOT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#130;
     code    : #1#246#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#9#65;
     code    : #208#1#9#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#11#72;
     code    : #208#1#11#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#8#65;
     code    : #1#8#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#10#72;
     code    : #1#10#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#129#13;
     code    : #208#1#131#129#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#13#33;
     code    : #213#1#13#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#129#33;
     code    : #213#1#129#129#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#13#25;
     code    : #212#1#13#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#129#25;
     code    : #212#1#129#129#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#12#17;
     code    : #1#12#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#129#17;
     code    : #1#128#129#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_al,ot_none);
+    optypes : (ot_immediate,ot_reg_al,ot_none,ot_none);
     code    : #1#230#20;
     code    : #1#230#20;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ax,ot_none);
+    optypes : (ot_immediate,ot_reg_ax,ot_none,ot_none);
     code    : #212#1#231#20;
     code    : #212#1#231#20;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_eax,ot_none);
+    optypes : (ot_immediate,ot_reg_eax,ot_none,ot_none);
     code    : #213#1#231#20;
     code    : #213#1#231#20;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dx,ot_reg_al,ot_none);
+    optypes : (ot_reg_dx,ot_reg_al,ot_none,ot_none);
     code    : #1#238;
     code    : #1#238;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dx,ot_reg_ax,ot_none);
+    optypes : (ot_reg_dx,ot_reg_ax,ot_none,ot_none);
     code    : #212#1#239;
     code    : #212#1#239;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dx,ot_reg_eax,ot_none);
+    optypes : (ot_reg_dx,ot_reg_eax,ot_none,ot_none);
     code    : #213#1#239;
     code    : #213#1#239;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_OUTSB;
     opcode  : A_OUTSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#110;
     code    : #1#110;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_OUTSD;
     opcode  : A_OUTSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#111;
     code    : #213#1#111;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_OUTSW;
     opcode  : A_OUTSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#111;
     code    : #212#1#111;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_PACKSSDW;
     opcode  : A_PACKSSDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#107#72;
     code    : #2#15#107#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKSSDW;
     opcode  : A_PACKSSDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#107#72;
     code    : #241#2#15#107#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKSSWB;
     opcode  : A_PACKSSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#99#72;
     code    : #2#15#99#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKSSWB;
     opcode  : A_PACKSSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#99#72;
     code    : #241#2#15#99#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKUSWB;
     opcode  : A_PACKUSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#103#72;
     code    : #2#15#103#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKUSWB;
     opcode  : A_PACKUSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#103#72;
     code    : #241#2#15#103#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDB;
     opcode  : A_PADDB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#252#72;
     code    : #2#15#252#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDB;
     opcode  : A_PADDB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#252#72;
     code    : #241#2#15#252#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDD;
     opcode  : A_PADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#254#72;
     code    : #2#15#254#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDD;
     opcode  : A_PADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#254#72;
     code    : #241#2#15#254#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSB;
     opcode  : A_PADDSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#236#72;
     code    : #2#15#236#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSB;
     opcode  : A_PADDSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#236#72;
     code    : #241#2#15#236#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSIW;
     opcode  : A_PADDSIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#81#72;
     code    : #2#15#81#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PADDSW;
     opcode  : A_PADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#237#72;
     code    : #2#15#237#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSW;
     opcode  : A_PADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#237#72;
     code    : #241#2#15#237#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSB;
     opcode  : A_PADDUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#220#72;
     code    : #2#15#220#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSB;
     opcode  : A_PADDUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#220#72;
     code    : #241#2#15#220#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSW;
     opcode  : A_PADDUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#221#72;
     code    : #2#15#221#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSW;
     opcode  : A_PADDUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#221#72;
     code    : #241#2#15#221#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDW;
     opcode  : A_PADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#253#72;
     code    : #2#15#253#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDW;
     opcode  : A_PADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#253#72;
     code    : #241#2#15#253#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAND;
     opcode  : A_PAND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#219#72;
     code    : #2#15#219#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAND;
     opcode  : A_PAND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#219#72;
     code    : #241#2#15#219#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PANDN;
     opcode  : A_PANDN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#223#72;
     code    : #2#15#223#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PANDN;
     opcode  : A_PANDN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#223#72;
     code    : #241#2#15#223#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVEB;
     opcode  : A_PAVEB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#80#72;
     code    : #2#15#80#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PAVGUSB;
     opcode  : A_PAVGUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#191;
     code    : #2#15#15#72#1#191;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQB;
     opcode  : A_PCMPEQB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#116#72;
     code    : #2#15#116#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQB;
     opcode  : A_PCMPEQB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#116#72;
     code    : #241#2#15#116#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQD;
     opcode  : A_PCMPEQD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#118#72;
     code    : #2#15#118#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQD;
     opcode  : A_PCMPEQD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#118#72;
     code    : #241#2#15#118#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQW;
     opcode  : A_PCMPEQW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#117#72;
     code    : #2#15#117#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQW;
     opcode  : A_PCMPEQW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#117#72;
     code    : #241#2#15#117#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTB;
     opcode  : A_PCMPGTB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#100#72;
     code    : #2#15#100#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTB;
     opcode  : A_PCMPGTB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#100#72;
     code    : #241#2#15#100#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTD;
     opcode  : A_PCMPGTD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#102#72;
     code    : #2#15#102#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTD;
     opcode  : A_PCMPGTD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#102#72;
     code    : #241#2#15#102#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTW;
     opcode  : A_PCMPGTW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#101#72;
     code    : #2#15#101#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTW;
     opcode  : A_PCMPGTW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#101#72;
     code    : #241#2#15#101#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PDISTIB;
     opcode  : A_PDISTIB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#84#72;
     code    : #2#15#84#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PF2ID;
     opcode  : A_PF2ID;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#29;
     code    : #2#15#15#72#1#29;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFACC;
     opcode  : A_PFACC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#174;
     code    : #2#15#15#72#1#174;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFADD;
     opcode  : A_PFADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#158;
     code    : #2#15#15#72#1#158;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFCMPEQ;
     opcode  : A_PFCMPEQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#176;
     code    : #2#15#15#72#1#176;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFCMPGE;
     opcode  : A_PFCMPGE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#144;
     code    : #2#15#15#72#1#144;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFCMPGT;
     opcode  : A_PFCMPGT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#160;
     code    : #2#15#15#72#1#160;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFMAX;
     opcode  : A_PFMAX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#164;
     code    : #2#15#15#72#1#164;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFMIN;
     opcode  : A_PFMIN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#148;
     code    : #2#15#15#72#1#148;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFMUL;
     opcode  : A_PFMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#180;
     code    : #2#15#15#72#1#180;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRCP;
     opcode  : A_PFRCP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#150;
     code    : #2#15#15#72#1#150;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRCPIT1;
     opcode  : A_PFRCPIT1;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#166;
     code    : #2#15#15#72#1#166;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRCPIT2;
     opcode  : A_PFRCPIT2;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#182;
     code    : #2#15#15#72#1#182;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRSQIT1;
     opcode  : A_PFRSQIT1;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#167;
     code    : #2#15#15#72#1#167;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRSQRT;
     opcode  : A_PFRSQRT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#151;
     code    : #2#15#15#72#1#151;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFSUB;
     opcode  : A_PFSUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#154;
     code    : #2#15#15#72#1#154;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFSUBR;
     opcode  : A_PFSUBR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#170;
     code    : #2#15#15#72#1#170;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PI2FD;
     opcode  : A_PI2FD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#13;
     code    : #2#15#15#72#1#13;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMACHRIW;
     opcode  : A_PMACHRIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#94#72;
     code    : #2#15#94#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMADDWD;
     opcode  : A_PMADDWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#245#72;
     code    : #2#15#245#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMADDWD;
     opcode  : A_PMADDWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#245#72;
     code    : #241#2#15#245#72;
     flags   : if_willamette or if_sm or if_sse2
     flags   : if_willamette or if_sm or if_sse2
   ),
   ),
   (
   (
     opcode  : A_PMAGW;
     opcode  : A_PMAGW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#82#72;
     code    : #2#15#82#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMULHRIW;
     opcode  : A_PMULHRIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#93#72;
     code    : #2#15#93#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMULHRWA;
     opcode  : A_PMULHRWA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#183;
     code    : #2#15#15#72#1#183;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHRWC;
     opcode  : A_PMULHRWC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#89#72;
     code    : #2#15#89#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMULHW;
     opcode  : A_PMULHW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#229#72;
     code    : #2#15#229#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHW;
     opcode  : A_PMULHW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#229#72;
     code    : #241#2#15#229#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULLW;
     opcode  : A_PMULLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#213#72;
     code    : #2#15#213#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULLW;
     opcode  : A_PMULLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#213#72;
     code    : #241#2#15#213#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMVGEZB;
     opcode  : A_PMVGEZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#92#72;
     code    : #2#15#92#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMVLZB;
     opcode  : A_PMVLZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#91#72;
     code    : #2#15#91#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMVNZB;
     opcode  : A_PMVNZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#90#72;
     code    : #2#15#90#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMVZB;
     opcode  : A_PMVZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#88#72;
     code    : #2#15#88#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #212#8#88;
     code    : #212#8#88;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg32,ot_none,ot_none);
+    optypes : (ot_reg32,ot_none,ot_none,ot_none);
     code    : #213#8#88;
     code    : #213#8#88;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#143#128;
     code    : #212#1#143#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits32,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_none,ot_none,ot_none);
     code    : #213#1#143#128;
     code    : #213#1#143#128;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_cs,ot_none,ot_none);
+    optypes : (ot_reg_cs,ot_none,ot_none,ot_none);
     code    : #1#15;
     code    : #1#15;
     flags   : if_8086 or if_undoc
     flags   : if_8086 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_dess,ot_none,ot_none);
+    optypes : (ot_reg_dess,ot_none,ot_none,ot_none);
     code    : #4;
     code    : #4;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_fsgs,ot_none,ot_none);
+    optypes : (ot_reg_fsgs,ot_none,ot_none,ot_none);
     code    : #1#15#5#221;
     code    : #1#15#5#221;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_POPA;
     opcode  : A_POPA;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#97;
     code    : #215#1#97;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POPAD;
     opcode  : A_POPAD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#97;
     code    : #213#1#97;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POPAW;
     opcode  : A_POPAW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#97;
     code    : #212#1#97;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POPF;
     opcode  : A_POPF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#157;
     code    : #215#1#157;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POPFD;
     opcode  : A_POPFD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#157;
     code    : #213#1#157;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POPFW;
     opcode  : A_POPFW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#157;
     code    : #212#1#157;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_POR;
     opcode  : A_POR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#235#72;
     code    : #2#15#235#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_POR;
     opcode  : A_POR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#235#72;
     code    : #241#2#15#235#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PREFETCH;
     opcode  : A_PREFETCH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#13#128;
     code    : #2#15#13#128;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PREFETCHW;
     opcode  : A_PREFETCHW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#13#129;
     code    : #2#15#13#129;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#242#72;
     code    : #2#15#242#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#114#134#21;
     code    : #2#15#114#134#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#242#72;
     code    : #241#2#15#242#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#114#134#21;
     code    : #241#2#15#114#134#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLDQ;
     opcode  : A_PSLLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#135#21;
     code    : #241#2#15#115#135#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#243#72;
     code    : #2#15#243#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#115#134#21;
     code    : #2#15#115#134#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#243#72;
     code    : #241#2#15#243#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#134#21;
     code    : #241#2#15#115#134#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#241#72;
     code    : #2#15#241#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#113#134#21;
     code    : #2#15#113#134#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#241#72;
     code    : #241#2#15#241#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#113#134#21;
     code    : #241#2#15#113#134#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#226#72;
     code    : #2#15#226#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#114#132#21;
     code    : #2#15#114#132#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#226#72;
     code    : #241#2#15#226#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#114#132#21;
     code    : #241#2#15#114#132#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#225#72;
     code    : #2#15#225#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#113#132#21;
     code    : #2#15#113#132#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#225#72;
     code    : #241#2#15#225#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#113#132#21;
     code    : #241#2#15#113#132#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#210#72;
     code    : #2#15#210#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#114#130#21;
     code    : #2#15#114#130#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#210#72;
     code    : #241#2#15#210#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#114#130#21;
     code    : #241#2#15#114#130#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#211#72;
     code    : #2#15#211#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#115#130#21;
     code    : #2#15#115#130#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#211#72;
     code    : #241#2#15#211#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#130#21;
     code    : #241#2#15#115#130#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#209#72;
     code    : #2#15#209#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#113#130#21;
     code    : #2#15#113#130#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#209#72;
     code    : #241#2#15#209#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#113#130#21;
     code    : #241#2#15#113#130#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSUBB;
     opcode  : A_PSUBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#248#72;
     code    : #2#15#248#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBB;
     opcode  : A_PSUBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#248#72;
     code    : #241#2#15#248#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBD;
     opcode  : A_PSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#250#72;
     code    : #2#15#250#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBD;
     opcode  : A_PSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#250#72;
     code    : #241#2#15#250#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSB;
     opcode  : A_PSUBSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#232#72;
     code    : #2#15#232#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSB;
     opcode  : A_PSUBSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#232#72;
     code    : #241#2#15#232#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSIW;
     opcode  : A_PSUBSIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#85#72;
     code    : #2#15#85#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PSUBSIW;
     opcode  : A_PSUBSIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxreg,ot_none);
+    optypes : (ot_mmxreg,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#85#72;
     code    : #2#15#85#72;
     flags   : if_pent or if_mmx or if_cyrix
     flags   : if_pent or if_mmx or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PSUBSW;
     opcode  : A_PSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#233#72;
     code    : #2#15#233#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSW;
     opcode  : A_PSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#233#72;
     code    : #241#2#15#233#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSB;
     opcode  : A_PSUBUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#216#72;
     code    : #2#15#216#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSB;
     opcode  : A_PSUBUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#216#72;
     code    : #241#2#15#216#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSW;
     opcode  : A_PSUBUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#217#72;
     code    : #2#15#217#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSW;
     opcode  : A_PSUBUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#217#72;
     code    : #241#2#15#217#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBW;
     opcode  : A_PSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#249#72;
     code    : #2#15#249#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBW;
     opcode  : A_PSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#249#72;
     code    : #241#2#15#249#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHBW;
     opcode  : A_PUNPCKHBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#104#72;
     code    : #2#15#104#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHBW;
     opcode  : A_PUNPCKHBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#104#72;
     code    : #241#2#15#104#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHDQ;
     opcode  : A_PUNPCKHDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#106#72;
     code    : #2#15#106#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHDQ;
     opcode  : A_PUNPCKHDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#106#72;
     code    : #241#2#15#106#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHWD;
     opcode  : A_PUNPCKHWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#105#72;
     code    : #2#15#105#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHWD;
     opcode  : A_PUNPCKHWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#105#72;
     code    : #241#2#15#105#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLBW;
     opcode  : A_PUNPCKLBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#96#72;
     code    : #2#15#96#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLBW;
     opcode  : A_PUNPCKLBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#96#72;
     code    : #241#2#15#96#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLDQ;
     opcode  : A_PUNPCKLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#98#72;
     code    : #2#15#98#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLDQ;
     opcode  : A_PUNPCKLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#98#72;
     code    : #241#2#15#98#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLWD;
     opcode  : A_PUNPCKLWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#97#72;
     code    : #2#15#97#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLWD;
     opcode  : A_PUNPCKLWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#97#72;
     code    : #241#2#15#97#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #212#8#80;
     code    : #212#8#80;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg32,ot_none,ot_none);
+    optypes : (ot_reg32,ot_none,ot_none,ot_none);
     code    : #213#8#80;
     code    : #213#8#80;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#255#134;
     code    : #212#1#255#134;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits32,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_none,ot_none,ot_none);
     code    : #213#1#255#134;
     code    : #213#1#255#134;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits32,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits32,ot_none,ot_none,ot_none);
     code    : #213#1#104#32#221;
     code    : #213#1#104#32#221;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits16,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#104#24#221;
     code    : #212#1#104#24#221;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none,ot_none);
     code    : #1#106#12#221;
     code    : #1#106#12#221;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_fsgs,ot_none,ot_none);
+    optypes : (ot_reg_fsgs,ot_none,ot_none,ot_none);
     code    : #1#15#7#221;
     code    : #1#15#7#221;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_sreg,ot_none,ot_none);
+    optypes : (ot_reg_sreg,ot_none,ot_none,ot_none);
     code    : #6;
     code    : #6;
     flags   : if_8086 or if_nox86_64
     flags   : if_8086 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSHA;
     opcode  : A_PUSHA;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#96;
     code    : #215#1#96;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSHAD;
     opcode  : A_PUSHAD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#96;
     code    : #213#1#96;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSHAW;
     opcode  : A_PUSHAW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#96;
     code    : #212#1#96;
     flags   : if_186 or if_nox86_64
     flags   : if_186 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSHF;
     opcode  : A_PUSHF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#156;
     code    : #215#1#156;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_PUSHFD;
     opcode  : A_PUSHFD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#156;
     code    : #213#1#156;
     flags   : if_386 or if_nox86_64
     flags   : if_386 or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_PUSHFW;
     opcode  : A_PUSHFW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#156;
     code    : #212#1#156;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_PXOR;
     opcode  : A_PXOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#239#72;
     code    : #2#15#239#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PXOR;
     opcode  : A_PXOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#239#72;
     code    : #241#2#15#239#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#130;
     code    : #208#1#209#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#130;
     code    : #208#1#211#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#130#21;
     code    : #208#1#193#130#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#130;
     code    : #1#208#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#130;
     code    : #1#210#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#130#21;
     code    : #1#192#130#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#131;
     code    : #208#1#209#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#131;
     code    : #208#1#211#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#131#21;
     code    : #208#1#193#131#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#131;
     code    : #1#208#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#131;
     code    : #1#210#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#131#21;
     code    : #1#192#131#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RDSHR;
     opcode  : A_RDSHR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#54;
     code    : #2#15#54;
     flags   : if_p6 or if_cyrix or if_smm
     flags   : if_p6 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_RDMSR;
     opcode  : A_RDMSR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#50;
     code    : #2#15#50;
     flags   : if_pent or if_priv
     flags   : if_pent or if_priv
   ),
   ),
   (
   (
     opcode  : A_RDPMC;
     opcode  : A_RDPMC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#51;
     code    : #2#15#51;
     flags   : if_p6
     flags   : if_p6
   ),
   ),
   (
   (
     opcode  : A_RDTSC;
     opcode  : A_RDTSC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#49;
     code    : #2#15#49;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_REP;
     opcode  : A_REP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#243;
     code    : #1#243;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPE;
     opcode  : A_REPE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#243;
     code    : #1#243;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPNE;
     opcode  : A_REPNE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#242;
     code    : #1#242;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPNZ;
     opcode  : A_REPNZ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#242;
     code    : #1#242;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPZ;
     opcode  : A_REPZ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#243;
     code    : #1#243;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_RET;
     opcode  : A_RET;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#195;
     code    : #1#195;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RET;
     opcode  : A_RET;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#194#24;
     code    : #1#194#24;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_RETF;
     opcode  : A_RETF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#203;
     code    : #1#203;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RETF;
     opcode  : A_RETF;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#202#24;
     code    : #1#202#24;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_RETN;
     opcode  : A_RETN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#195;
     code    : #1#195;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RETN;
     opcode  : A_RETN;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#194#24;
     code    : #1#194#24;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#128;
     code    : #208#1#209#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#128;
     code    : #208#1#211#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#128#21;
     code    : #208#1#193#128#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#128;
     code    : #1#208#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#128;
     code    : #1#210#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#128#21;
     code    : #1#192#128#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#129;
     code    : #208#1#209#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#129;
     code    : #208#1#211#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#129#21;
     code    : #208#1#193#129#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#129;
     code    : #1#208#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#129;
     code    : #1#210#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#129#21;
     code    : #1#192#129#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RSDC;
     opcode  : A_RSDC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_sreg,ot_memory or ot_bits80,ot_none);
+    optypes : (ot_reg_sreg,ot_memory or ot_bits80,ot_none,ot_none);
     code    : #2#15#121#65;
     code    : #2#15#121#65;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_RSLDT;
     opcode  : A_RSLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #2#15#123#128;
     code    : #2#15#123#128;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_RSM;
     opcode  : A_RSM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#170;
     code    : #2#15#170;
     flags   : if_pent or if_smm
     flags   : if_pent or if_smm
   ),
   ),
   (
   (
     opcode  : A_SAHF;
     opcode  : A_SAHF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#158;
     code    : #1#158;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#132;
     code    : #208#1#209#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#132;
     code    : #208#1#211#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#132#21;
     code    : #208#1#193#132#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#132;
     code    : #1#208#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#132;
     code    : #1#210#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#132#21;
     code    : #1#192#132#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SALC;
     opcode  : A_SALC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#214;
     code    : #1#214;
     flags   : if_8086 or if_undoc or if_nox86_64
     flags   : if_8086 or if_undoc or if_nox86_64
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#135;
     code    : #208#1#209#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#135;
     code    : #208#1#211#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#135#21;
     code    : #208#1#193#135#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#135;
     code    : #1#208#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#135;
     code    : #1#210#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#135#21;
     code    : #1#192#135#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#25#65;
     code    : #208#1#25#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#27#72;
     code    : #208#1#27#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#131#13;
     code    : #208#1#131#131#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#24#65;
     code    : #1#24#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#26#72;
     code    : #1#26#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#29#33;
     code    : #213#1#29#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#131#33;
     code    : #208#1#129#131#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#29#25;
     code    : #212#1#29#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#131#25;
     code    : #208#1#129#131#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#28#17;
     code    : #1#28#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#131#17;
     code    : #1#128#131#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SCASB;
     opcode  : A_SCASB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#1#174;
     code    : #218#1#174;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SCASD;
     opcode  : A_SCASD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#213#1#175;
     code    : #218#213#1#175;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_SCASW;
     opcode  : A_SCASW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#212#1#175;
     code    : #218#212#1#175;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SEGCS;
     opcode  : A_SEGCS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#46;
     code    : #1#46;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGDS;
     opcode  : A_SEGDS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#62;
     code    : #1#62;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGES;
     opcode  : A_SEGES;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#38;
     code    : #1#38;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGFS;
     opcode  : A_SEGFS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#100;
     code    : #1#100;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGGS;
     opcode  : A_SEGGS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#101;
     code    : #1#101;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGSS;
     opcode  : A_SEGSS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#54;
     code    : #1#54;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SGDT;
     opcode  : A_SGDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#128;
     code    : #2#15#1#128;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#132;
     code    : #208#1#209#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#132;
     code    : #208#1#211#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#132#21;
     code    : #208#1#193#132#21;
     flags   : if_186 or if_sw
     flags   : if_186 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#132;
     code    : #1#208#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#132;
     code    : #1#210#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#132#21;
     code    : #1#192#132#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SHLD;
     opcode  : A_SHLD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
     code    : #209#2#15#164#65#22;
     code    : #209#2#15#164#65#22;
     flags   : if_386 or if_sm2 or if_sb or if_ar2
     flags   : if_386 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SHLD;
     opcode  : A_SHLD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
     code    : #209#2#15#165#65;
     code    : #209#2#15#165#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#133;
     code    : #208#1#209#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#133;
     code    : #208#1#211#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#133#21;
     code    : #208#1#193#133#21;
     flags   : if_186 or if_sw
     flags   : if_186 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#133;
     code    : #1#208#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#133;
     code    : #1#210#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#133#21;
     code    : #1#192#133#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SHRD;
     opcode  : A_SHRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
     code    : #209#2#15#172#65#22;
     code    : #209#2#15#172#65#22;
     flags   : if_386 or if_sm2 or if_sb or if_ar2
     flags   : if_386 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SHRD;
     opcode  : A_SHRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
     code    : #209#2#15#173#65;
     code    : #209#2#15#173#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SIDT;
     opcode  : A_SIDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#129;
     code    : #2#15#1#129;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SLDT;
     opcode  : A_SLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#128;
     code    : #2#15#0#128;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SLDT;
     opcode  : A_SLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#2#15#0#128;
     code    : #208#2#15#0#128;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SMI;
     opcode  : A_SMI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_SMINT;
     opcode  : A_SMINT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#56;
     code    : #2#15#56;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_SMINTOLD;
     opcode  : A_SMINTOLD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#126;
     code    : #2#15#126;
     flags   : if_486 or if_cyrix
     flags   : if_486 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_SMSW;
     opcode  : A_SMSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#2#15#1#132;
     code    : #208#2#15#1#132;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_STC;
     opcode  : A_STC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#249;
     code    : #1#249;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STD;
     opcode  : A_STD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#253;
     code    : #1#253;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STI;
     opcode  : A_STI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#251;
     code    : #1#251;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STOSB;
     opcode  : A_STOSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#170;
     code    : #1#170;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STOSD;
     opcode  : A_STOSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#171;
     code    : #213#1#171;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_STOSW;
     opcode  : A_STOSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#171;
     code    : #212#1#171;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STR;
     opcode  : A_STR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#129;
     code    : #2#15#0#129;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_STR;
     opcode  : A_STR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#2#15#0#129;
     code    : #208#2#15#0#129;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#41#65;
     code    : #208#1#41#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#43#72;
     code    : #208#1#43#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#40#65;
     code    : #1#40#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#42#72;
     code    : #1#42#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#133#13;
     code    : #208#1#131#133#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#45#33;
     code    : #213#1#45#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#133#33;
     code    : #208#1#129#133#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#45#25;
     code    : #212#1#45#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#133#25;
     code    : #212#1#129#133#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#44#17;
     code    : #1#44#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#133#17;
     code    : #1#128#133#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SVDC;
     opcode  : A_SVDC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory or ot_bits80,ot_reg_sreg,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_reg_sreg,ot_none,ot_none);
     code    : #2#15#120#65;
     code    : #2#15#120#65;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_SVLDT;
     opcode  : A_SVLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #2#15#122#128;
     code    : #2#15#122#128;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_SVTS;
     opcode  : A_SVTS;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #2#15#124#128;
     code    : #2#15#124#128;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_SYSCALL;
     opcode  : A_SYSCALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#5;
     code    : #2#15#5;
     flags   : if_p6 or if_amd
     flags   : if_p6 or if_amd
   ),
   ),
   (
   (
     opcode  : A_SYSENTER;
     opcode  : A_SYSENTER;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#52;
     code    : #2#15#52;
     flags   : if_p6
     flags   : if_p6
   ),
   ),
   (
   (
     opcode  : A_SYSEXIT;
     opcode  : A_SYSEXIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#53;
     code    : #2#15#53;
     flags   : if_p6 or if_priv
     flags   : if_p6 or if_priv
   ),
   ),
   (
   (
     opcode  : A_SYSRET;
     opcode  : A_SYSRET;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#7;
     code    : #2#15#7;
     flags   : if_p6 or if_priv or if_amd
     flags   : if_p6 or if_priv or if_amd
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#133#65;
     code    : #208#1#133#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#1#133#72;
     code    : #208#1#133#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_reg8,ot_none);
+    optypes : (ot_reg8,ot_reg8,ot_none,ot_none);
     code    : #1#132#65;
     code    : #1#132#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#132#65;
     code    : #1#132#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#169#33;
     code    : #213#1#169#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#169#25;
     code    : #212#1#169#25;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#168#17;
     code    : #1#168#17;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#247#128#33;
     code    : #213#1#247#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#247#128#25;
     code    : #212#1#247#128#25;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#246#128#17;
     code    : #1#246#128#17;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none,ot_none);
     code    : #213#1#247#128#33;
     code    : #213#1#247#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none,ot_none);
     code    : #212#1#247#128#25;
     code    : #212#1#247#128#25;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none,ot_none);
     code    : #1#246#128#17;
     code    : #1#246#128#17;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_UD1;
     opcode  : A_UD1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#185;
     code    : #2#15#185;
     flags   : if_286 or if_undoc
     flags   : if_286 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_UD2;
     opcode  : A_UD2;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#11;
     code    : #2#15#11;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#17#65;
     code    : #208#2#15#17#65;
     flags   : if_386 or if_undoc or if_sm
     flags   : if_386 or if_undoc or if_sm
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#2#15#19#72;
     code    : #208#2#15#19#72;
     flags   : if_386 or if_undoc or if_sm
     flags   : if_386 or if_undoc or if_sm
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#16#65;
     code    : #2#15#16#65;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #2#15#18#72;
     code    : #2#15#18#72;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_VERR;
     opcode  : A_VERR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#132;
     code    : #2#15#0#132;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERR;
     opcode  : A_VERR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#132;
     code    : #2#15#0#132;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERR;
     opcode  : A_VERR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #2#15#0#132;
     code    : #2#15#0#132;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERW;
     opcode  : A_VERW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#133;
     code    : #2#15#0#133;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERW;
     opcode  : A_VERW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#133;
     code    : #2#15#0#133;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERW;
     opcode  : A_VERW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #2#15#0#133;
     code    : #2#15#0#133;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_WAIT;
     opcode  : A_WAIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#155;
     code    : #1#155;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_WBINVD;
     opcode  : A_WBINVD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#9;
     code    : #2#15#9;
     flags   : if_486 or if_priv
     flags   : if_486 or if_priv
   ),
   ),
   (
   (
     opcode  : A_WRSHR;
     opcode  : A_WRSHR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#55;
     code    : #2#15#55;
     flags   : if_p6 or if_cyrix or if_smm
     flags   : if_p6 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_WRMSR;
     opcode  : A_WRMSR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#48;
     code    : #2#15#48;
     flags   : if_pent or if_priv
     flags   : if_pent or if_priv
   ),
   ),
   (
   (
     opcode  : A_XADD;
     opcode  : A_XADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#193#65;
     code    : #208#2#15#193#65;
     flags   : if_486 or if_sm
     flags   : if_486 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XADD;
     opcode  : A_XADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#192#65;
     code    : #2#15#192#65;
     flags   : if_486
     flags   : if_486
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_memory,ot_none);
+    optypes : (ot_reg16,ot_memory,ot_none,ot_none);
     code    : #212#2#15#166#72;
     code    : #212#2#15#166#72;
     flags   : if_386 or if_sw or if_undoc
     flags   : if_386 or if_sw or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_reg16,ot_none);
+    optypes : (ot_reg16,ot_reg16,ot_none,ot_none);
     code    : #212#2#15#166#72;
     code    : #212#2#15#166#72;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_memory,ot_none);
+    optypes : (ot_reg32,ot_memory,ot_none,ot_none);
     code    : #213#2#15#166#72;
     code    : #213#2#15#166#72;
     flags   : if_386 or if_sd or if_undoc
     flags   : if_386 or if_sd or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg32,ot_none);
+    optypes : (ot_reg32,ot_reg32,ot_none,ot_none);
     code    : #213#2#15#166#72;
     code    : #213#2#15#166#72;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_reg16,ot_none);
+    optypes : (ot_reg_ax,ot_reg16,ot_none,ot_none);
     code    : #212#9#144;
     code    : #212#9#144;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_reg32,ot_none);
+    optypes : (ot_reg_eax,ot_reg32,ot_none,ot_none);
     code    : #213#9#144;
     code    : #213#9#144;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_reg_ax,ot_none);
+    optypes : (ot_reg16,ot_reg_ax,ot_none,ot_none);
     code    : #212#8#144;
     code    : #212#8#144;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg_eax,ot_none);
+    optypes : (ot_reg32,ot_reg_eax,ot_none,ot_none);
     code    : #213#8#144;
     code    : #213#8#144;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#135#72;
     code    : #208#1#135#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#135#65;
     code    : #208#1#135#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#134#72;
     code    : #1#134#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_memory or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#134#65;
     code    : #1#134#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XLAT;
     opcode  : A_XLAT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#215;
     code    : #1#215;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XLATB;
     opcode  : A_XLATB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#215;
     code    : #1#215;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#49#65;
     code    : #208#1#49#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#51#72;
     code    : #208#1#51#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#48#65;
     code    : #1#48#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#50#72;
     code    : #1#50#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#134#13;
     code    : #208#1#131#134#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#53#33;
     code    : #213#1#53#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#134#33;
     code    : #208#1#129#134#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#53#25;
     code    : #212#1#53#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#134#25;
     code    : #212#1#129#134#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#52#17;
     code    : #1#52#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#134#17;
     code    : #1#128#134#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_XSTORE;
     opcode  : A_XSTORE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#167#192;
     code    : #3#15#167#192;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTECB;
     opcode  : A_XCRYPTECB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#200;
     code    : #219#3#15#167#200;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTCBC;
     opcode  : A_XCRYPTCBC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#208;
     code    : #219#3#15#167#208;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTCFB;
     opcode  : A_XCRYPTCFB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#224;
     code    : #219#3#15#167#224;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTOFB;
     opcode  : A_XCRYPTOFB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#232;
     code    : #219#3#15#167#232;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_CMOVcc;
     opcode  : A_CMOVcc;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#15#11#64#72;
     code    : #208#1#15#11#64#72;
     flags   : if_p6 or if_sm
     flags   : if_p6 or if_sm
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits8,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits8,ot_none,ot_none,ot_none);
     code    : #11#112#40;
     code    : #11#112#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none,ot_none);
     code    : #208#1#15#11#128#52;
     code    : #208#1#15#11#128#52;
     flags   : if_386 or if_pass2
     flags   : if_386 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_short,ot_none,ot_none);
+    optypes : (ot_immediate or ot_short,ot_none,ot_none,ot_none);
     code    : #11#112#40;
     code    : #11#112#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_near,ot_none,ot_none);
+    optypes : (ot_immediate or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#15#11#128#52;
     code    : #208#1#15#11#128#52;
     flags   : if_386 or if_pass2
     flags   : if_386 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_SETcc;
     opcode  : A_SETcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#15#11#144#128;
     code    : #1#15#11#144#128;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_ADDPS;
     opcode  : A_ADDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#88#72;
     code    : #217#2#15#88#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ADDSS;
     opcode  : A_ADDSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#88#72;
     code    : #219#2#15#88#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ANDNPS;
     opcode  : A_ANDNPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#85#72;
     code    : #2#15#85#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ANDPS;
     opcode  : A_ANDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#84#72;
     code    : #2#15#84#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPEQPS;
     opcode  : A_CMPEQPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#0;
     code    : #217#2#15#194#72#1#0;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPEQSS;
     opcode  : A_CMPEQSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#0;
     code    : #219#2#15#194#72#1#0;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLEPS;
     opcode  : A_CMPLEPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#2;
     code    : #217#2#15#194#72#1#2;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLESS;
     opcode  : A_CMPLESS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#2;
     code    : #219#2#15#194#72#1#2;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLTPS;
     opcode  : A_CMPLTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#1;
     code    : #217#2#15#194#72#1#1;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLTSS;
     opcode  : A_CMPLTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#1;
     code    : #219#2#15#194#72#1#1;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNEQPS;
     opcode  : A_CMPNEQPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#4;
     code    : #217#2#15#194#72#1#4;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNEQSS;
     opcode  : A_CMPNEQSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#4;
     code    : #219#2#15#194#72#1#4;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLEPS;
     opcode  : A_CMPNLEPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#6;
     code    : #217#2#15#194#72#1#6;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLESS;
     opcode  : A_CMPNLESS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#6;
     code    : #219#2#15#194#72#1#6;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLTPS;
     opcode  : A_CMPNLTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#5;
     code    : #217#2#15#194#72#1#5;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLTSS;
     opcode  : A_CMPNLTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#5;
     code    : #219#2#15#194#72#1#5;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPORDPS;
     opcode  : A_CMPORDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#7;
     code    : #217#2#15#194#72#1#7;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPORDSS;
     opcode  : A_CMPORDSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#7;
     code    : #219#2#15#194#72#1#7;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDPS;
     opcode  : A_CMPUNORDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#3;
     code    : #217#2#15#194#72#1#3;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDSS;
     opcode  : A_CMPUNORDSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#3;
     code    : #219#2#15#194#72#1#3;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPPS;
     opcode  : A_CMPPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #217#2#15#194#72#18;
     code    : #217#2#15#194#72#18;
     flags   : if_katmai or if_sse or if_sb or if_ar2
     flags   : if_katmai or if_sse or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_CMPSS;
     opcode  : A_CMPSS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #219#2#15#194#72#18;
     code    : #219#2#15#194#72#18;
     flags   : if_katmai or if_sse or if_sb or if_ar2
     flags   : if_katmai or if_sse or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_COMISS;
     opcode  : A_COMISS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#47#72;
     code    : #2#15#47#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTPI2PS;
     opcode  : A_CVTPI2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #217#2#15#42#72;
     code    : #217#2#15#42#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTPI2PS;
     opcode  : A_CVTPI2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_mmxreg,ot_none);
+    optypes : (ot_xmmreg,ot_mmxreg,ot_none,ot_none);
     code    : #217#2#15#42#72;
     code    : #217#2#15#42#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTPS2PI;
     opcode  : A_CVTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #217#2#15#45#72;
     code    : #217#2#15#45#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTPS2PI;
     opcode  : A_CVTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #217#2#15#45#72;
     code    : #217#2#15#45#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SS;
     opcode  : A_CVTSI2SS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #219#209#2#15#42#72;
     code    : #219#209#2#15#42#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SS;
     opcode  : A_CVTSI2SS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none);
+    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none,ot_none);
     code    : #219#209#2#15#42#72;
     code    : #219#209#2#15#42#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTSS2SI;
     opcode  : A_CVTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #219#208#2#15#45#72;
     code    : #219#208#2#15#45#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTSS2SI;
     opcode  : A_CVTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #219#208#2#15#45#72;
     code    : #219#208#2#15#45#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTTPS2PI;
     opcode  : A_CVTTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #217#2#15#44#72;
     code    : #217#2#15#44#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTTPS2PI;
     opcode  : A_CVTTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #217#2#15#44#72;
     code    : #217#2#15#44#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTTSS2SI;
     opcode  : A_CVTTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #219#208#2#15#44#72;
     code    : #219#208#2#15#44#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTTSS2SI;
     opcode  : A_CVTTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #219#208#2#15#44#72;
     code    : #219#208#2#15#44#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_DIVPS;
     opcode  : A_DIVPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#94#72;
     code    : #217#2#15#94#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_DIVSS;
     opcode  : A_DIVSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#94#72;
     code    : #219#2#15#94#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_LDMXCSR;
     opcode  : A_LDMXCSR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#130;
     code    : #2#15#174#130;
     flags   : if_katmai or if_sse or if_sd
     flags   : if_katmai or if_sse or if_sd
   ),
   ),
   (
   (
     opcode  : A_MAXPS;
     opcode  : A_MAXPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#95#72;
     code    : #217#2#15#95#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MAXSS;
     opcode  : A_MAXSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#95#72;
     code    : #219#2#15#95#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MINPS;
     opcode  : A_MINPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#93#72;
     code    : #217#2#15#93#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MINSS;
     opcode  : A_MINSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#93#72;
     code    : #219#2#15#93#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVAPS;
     opcode  : A_MOVAPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#40#72;
     code    : #2#15#40#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVAPS;
     opcode  : A_MOVAPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#41#65;
     code    : #2#15#41#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVHPS;
     opcode  : A_MOVHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #2#15#22#72;
     code    : #2#15#22#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVHPS;
     opcode  : A_MOVHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#23#65;
     code    : #2#15#23#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVLHPS;
     opcode  : A_MOVLHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#22#72;
     code    : #2#15#22#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVLPS;
     opcode  : A_MOVLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #2#15#18#72;
     code    : #2#15#18#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVLPS;
     opcode  : A_MOVLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#19#65;
     code    : #2#15#19#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVHLPS;
     opcode  : A_MOVHLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#18#72;
     code    : #2#15#18#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVMSKPS;
     opcode  : A_MOVMSKPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_xmmreg,ot_none);
+    optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#80#72;
     code    : #2#15#80#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVNTPS;
     opcode  : A_MOVNTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#43#65;
     code    : #2#15#43#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVSS;
     opcode  : A_MOVSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#16#72;
     code    : #219#2#15#16#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVSS;
     opcode  : A_MOVSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #219#2#15#17#65;
     code    : #219#2#15#17#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVUPS;
     opcode  : A_MOVUPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#16#72;
     code    : #217#2#15#16#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVUPS;
     opcode  : A_MOVUPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #217#2#15#17#65;
     code    : #217#2#15#17#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MULPS;
     opcode  : A_MULPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#89#72;
     code    : #2#15#89#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MULSS;
     opcode  : A_MULSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#89#72;
     code    : #219#2#15#89#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ORPS;
     opcode  : A_ORPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#86#72;
     code    : #2#15#86#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RCPPS;
     opcode  : A_RCPPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#83#72;
     code    : #217#2#15#83#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RCPSS;
     opcode  : A_RCPSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#83#72;
     code    : #219#2#15#83#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RSQRTPS;
     opcode  : A_RSQRTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#82#72;
     code    : #217#2#15#82#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RSQRTSS;
     opcode  : A_RSQRTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#82#72;
     code    : #219#2#15#82#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_SHUFPS;
     opcode  : A_SHUFPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #2#15#198#72#18;
     code    : #2#15#198#72#18;
     flags   : if_katmai or if_sse or if_sb or if_ar2
     flags   : if_katmai or if_sse or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SQRTPS;
     opcode  : A_SQRTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#81#72;
     code    : #217#2#15#81#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_SQRTSS;
     opcode  : A_SQRTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#81#72;
     code    : #219#2#15#81#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_STMXCSR;
     opcode  : A_STMXCSR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#131;
     code    : #2#15#174#131;
     flags   : if_katmai or if_sse or if_sd
     flags   : if_katmai or if_sse or if_sd
   ),
   ),
   (
   (
     opcode  : A_SUBPS;
     opcode  : A_SUBPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#92#72;
     code    : #217#2#15#92#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_SUBSS;
     opcode  : A_SUBSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#92#72;
     code    : #219#2#15#92#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_UCOMISS;
     opcode  : A_UCOMISS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#46#72;
     code    : #2#15#46#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_UNPCKHPS;
     opcode  : A_UNPCKHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#21#72;
     code    : #2#15#21#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_UNPCKLPS;
     opcode  : A_UNPCKLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#20#72;
     code    : #2#15#20#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_XORPS;
     opcode  : A_XORPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#87#72;
     code    : #2#15#87#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_FXRSTOR;
     opcode  : A_FXRSTOR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#129;
     code    : #2#15#174#129;
     flags   : if_p6 or if_sse or if_fpu
     flags   : if_p6 or if_sse or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXSAVE;
     opcode  : A_FXSAVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#128;
     code    : #2#15#174#128;
     flags   : if_p6 or if_sse or if_fpu
     flags   : if_p6 or if_sse or if_fpu
   ),
   ),
   (
   (
     opcode  : A_PREFETCHNTA;
     opcode  : A_PREFETCHNTA;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#128;
     code    : #2#15#24#128;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_PREFETCHT0;
     opcode  : A_PREFETCHT0;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#129;
     code    : #2#15#24#129;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_PREFETCHT1;
     opcode  : A_PREFETCHT1;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#130;
     code    : #2#15#24#130;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_PREFETCHT2;
     opcode  : A_PREFETCHT2;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#131;
     code    : #2#15#24#131;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_SFENCE;
     opcode  : A_SFENCE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#174#248;
     code    : #3#15#174#248;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_MASKMOVQ;
     opcode  : A_MASKMOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxreg,ot_none);
+    optypes : (ot_mmxreg,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#247#72;
     code    : #2#15#247#72;
     flags   : if_katmai or if_mmx
     flags   : if_katmai or if_mmx
   ),
   ),
   (
   (
     opcode  : A_MOVNTQ;
     opcode  : A_MOVNTQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_mmxreg,ot_none);
+    optypes : (ot_memory,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#231#65;
     code    : #2#15#231#65;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGB;
     opcode  : A_PAVGB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#224#72;
     code    : #2#15#224#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGB;
     opcode  : A_PAVGB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#224#72;
     code    : #241#2#15#224#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGW;
     opcode  : A_PAVGW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#227#72;
     code    : #2#15#227#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGW;
     opcode  : A_PAVGW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#227#72;
     code    : #241#2#15#227#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PEXTRW;
     opcode  : A_PEXTRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32,ot_mmxreg,ot_immediate);
+    optypes : (ot_reg32,ot_mmxreg,ot_immediate,ot_none);
     code    : #2#15#197#72#18;
     code    : #2#15#197#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRW;
     opcode  : A_PEXTRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#2#15#197#72#22;
     code    : #241#2#15#197#72#22;
     flags   : if_sse41
     flags   : if_sse41
   ),
   ),
   (
   (
     opcode  : A_PEXTRW;
     opcode  : A_PEXTRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#21#65#22;
     code    : #241#3#15#58#21#65#22;
     flags   : if_sse41
     flags   : if_sse41
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_reg16,ot_immediate);
+    optypes : (ot_mmxreg,ot_reg16,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_reg32,ot_immediate);
+    optypes : (ot_mmxreg,ot_reg32,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_memory,ot_immediate);
+    optypes : (ot_mmxreg,ot_memory,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_memory or ot_bits16,ot_immediate);
+    optypes : (ot_mmxreg,ot_memory or ot_bits16,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg16,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg16,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg32,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg32,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PMAXSW;
     opcode  : A_PMAXSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#238#72;
     code    : #2#15#238#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXSW;
     opcode  : A_PMAXSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#238#72;
     code    : #241#2#15#238#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUB;
     opcode  : A_PMAXUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#222#72;
     code    : #2#15#222#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUB;
     opcode  : A_PMAXUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#222#72;
     code    : #241#2#15#222#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSW;
     opcode  : A_PMINSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#234#72;
     code    : #2#15#234#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSW;
     opcode  : A_PMINSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#234#72;
     code    : #241#2#15#234#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUB;
     opcode  : A_PMINUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#218#72;
     code    : #2#15#218#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUB;
     opcode  : A_PMINUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#218#72;
     code    : #241#2#15#218#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVMSKB;
     opcode  : A_PMOVMSKB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_mmxreg,ot_none);
+    optypes : (ot_reg32,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#215#72;
     code    : #2#15#215#72;
     flags   : if_katmai or if_mmx
     flags   : if_katmai or if_mmx
   ),
   ),
   (
   (
     opcode  : A_PMOVMSKB;
     opcode  : A_PMOVMSKB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_xmmreg,ot_none);
+    optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#215#72;
     code    : #241#2#15#215#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_PMULHUW;
     opcode  : A_PMULHUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#228#72;
     code    : #2#15#228#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHUW;
     opcode  : A_PMULHUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#228#72;
     code    : #241#2#15#228#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSADBW;
     opcode  : A_PSADBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#246#72;
     code    : #2#15#246#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSADBW;
     opcode  : A_PSADBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#246#72;
     code    : #241#2#15#246#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFW;
     opcode  : A_PSHUFW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate,ot_none);
     code    : #2#15#112#72#18;
     code    : #2#15#112#72#18;
     flags   : if_katmai or if_mmx or if_sm2 or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PFNACC;
     opcode  : A_PFNACC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#138;
     code    : #2#15#15#72#1#138;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFPNACC;
     opcode  : A_PFPNACC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#142;
     code    : #2#15#15#72#1#142;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PI2FW;
     opcode  : A_PI2FW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#12;
     code    : #2#15#15#72#1#12;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PF2IW;
     opcode  : A_PF2IW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#28;
     code    : #2#15#15#72#1#28;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSWAPD;
     opcode  : A_PSWAPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#187;
     code    : #2#15#15#72#1#187;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_FFREEP;
     opcode  : A_FFREEP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#223#8#192;
     code    : #1#223#8#192;
     flags   : if_pent or if_3dnow or if_fpu
     flags   : if_pent or if_3dnow or if_fpu
   ),
   ),
   (
   (
     opcode  : A_MASKMOVDQU;
     opcode  : A_MASKMOVDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#247#72;
     code    : #241#2#15#247#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CLFLUSH;
     opcode  : A_CLFLUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#135;
     code    : #2#15#174#135;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVNTDQ;
     opcode  : A_MOVNTDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#231#65;
     code    : #241#2#15#231#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVNTI;
     opcode  : A_MOVNTI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg32 or ot_bits64,ot_none);
+    optypes : (ot_memory,ot_reg32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#195#65;
     code    : #208#2#15#195#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVNTPD;
     opcode  : A_MOVNTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#43#65;
     code    : #241#2#15#43#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAUSE;
     opcode  : A_PAUSE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#1#144;
     code    : #219#1#144;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_LFENCE;
     opcode  : A_LFENCE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#174#232;
     code    : #3#15#174#232;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MFENCE;
     opcode  : A_MFENCE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#174#240;
     code    : #3#15#174#240;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVDQA;
     opcode  : A_MOVDQA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#127#65;
     code    : #241#2#15#127#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQA;
     opcode  : A_MOVDQA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#111#72;
     code    : #241#2#15#111#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQU;
     opcode  : A_MOVDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #219#2#15#127#65;
     code    : #219#2#15#127#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQU;
     opcode  : A_MOVDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#111#72;
     code    : #219#2#15#111#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQ2Q;
     opcode  : A_MOVDQ2Q;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #220#2#15#214#72;
     code    : #220#2#15#214#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ2DQ;
     opcode  : A_MOVQ2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_mmxreg,ot_none);
+    optypes : (ot_xmmreg,ot_mmxreg,ot_none,ot_none);
     code    : #219#2#15#214#72;
     code    : #219#2#15#214#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_PADDQ;
     opcode  : A_PADDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#212#72;
     code    : #2#15#212#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDQ;
     opcode  : A_PADDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#212#72;
     code    : #241#2#15#212#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULUDQ;
     opcode  : A_PMULUDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#244#72;
     code    : #2#15#244#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULUDQ;
     opcode  : A_PMULUDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#244#72;
     code    : #241#2#15#244#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFD;
     opcode  : A_PSHUFD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#2#15#112#72#18;
     code    : #241#2#15#112#72#18;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PSHUFHW;
     opcode  : A_PSHUFHW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #219#2#15#112#72#18;
     code    : #219#2#15#112#72#18;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PSHUFLW;
     opcode  : A_PSHUFLW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #220#2#15#112#72#18;
     code    : #220#2#15#112#72#18;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PSRLDQ;
     opcode  : A_PSRLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#131#21;
     code    : #241#2#15#115#131#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSUBQ;
     opcode  : A_PSUBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#251#72;
     code    : #2#15#251#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBQ;
     opcode  : A_PSUBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#251#72;
     code    : #241#2#15#251#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHQDQ;
     opcode  : A_PUNPCKHQDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#109#72;
     code    : #241#2#15#109#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLQDQ;
     opcode  : A_PUNPCKLQDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#108#72;
     code    : #241#2#15#108#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDPD;
     opcode  : A_ADDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#88#72;
     code    : #241#2#15#88#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDSD;
     opcode  : A_ADDSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#88#72;
     code    : #220#2#15#88#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_ANDNPD;
     opcode  : A_ANDNPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#85#72;
     code    : #241#2#15#85#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ANDPD;
     opcode  : A_ANDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#84#72;
     code    : #241#2#15#84#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPEQPD;
     opcode  : A_CMPEQPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#0;
     code    : #241#2#15#194#72#1#0;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPEQSD;
     opcode  : A_CMPEQSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#0;
     code    : #220#2#15#194#72#1#0;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPLEPD;
     opcode  : A_CMPLEPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#2;
     code    : #241#2#15#194#72#1#2;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPLESD;
     opcode  : A_CMPLESD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#2;
     code    : #220#2#15#194#72#1#2;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPLTPD;
     opcode  : A_CMPLTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#1;
     code    : #241#2#15#194#72#1#1;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPLTSD;
     opcode  : A_CMPLTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#1;
     code    : #220#2#15#194#72#1#1;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPNEQPD;
     opcode  : A_CMPNEQPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#4;
     code    : #241#2#15#194#72#1#4;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPNEQSD;
     opcode  : A_CMPNEQSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#4;
     code    : #220#2#15#194#72#1#4;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPNLEPD;
     opcode  : A_CMPNLEPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#6;
     code    : #241#2#15#194#72#1#6;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPNLESD;
     opcode  : A_CMPNLESD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#6;
     code    : #220#2#15#194#72#1#6;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPNLTPD;
     opcode  : A_CMPNLTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#5;
     code    : #241#2#15#194#72#1#5;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPNLTSD;
     opcode  : A_CMPNLTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#5;
     code    : #220#2#15#194#72#1#5;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPORDPD;
     opcode  : A_CMPORDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#7;
     code    : #241#2#15#194#72#1#7;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPORDSD;
     opcode  : A_CMPORDSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#7;
     code    : #220#2#15#194#72#1#7;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDPD;
     opcode  : A_CMPUNORDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#3;
     code    : #241#2#15#194#72#1#3;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDSD;
     opcode  : A_CMPUNORDSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#3;
     code    : #220#2#15#194#72#1#3;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPPD;
     opcode  : A_CMPPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#2#15#194#72#22;
     code    : #241#2#15#194#72#22;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_COMISD;
     opcode  : A_COMISD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#47#72;
     code    : #241#2#15#47#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTDQ2PD;
     opcode  : A_CVTDQ2PD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#230#72;
     code    : #219#2#15#230#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTDQ2PS;
     opcode  : A_CVTDQ2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#91#72;
     code    : #2#15#91#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPD2DQ;
     opcode  : A_CVTPD2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#230#72;
     code    : #220#2#15#230#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPD2PI;
     opcode  : A_CVTPD2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmrm,ot_none);
+    optypes : (ot_mmxreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#45#72;
     code    : #241#2#15#45#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTPD2PS;
     opcode  : A_CVTPD2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#90#72;
     code    : #241#2#15#90#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPI2PD;
     opcode  : A_CVTPI2PD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_mmxrm,ot_none);
+    optypes : (ot_xmmreg,ot_mmxrm,ot_none,ot_none);
     code    : #241#2#15#42#72;
     code    : #241#2#15#42#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTPS2DQ;
     opcode  : A_CVTPS2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#91#72;
     code    : #241#2#15#91#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPS2PD;
     opcode  : A_CVTPS2PD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#90#72;
     code    : #2#15#90#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSD2SI;
     opcode  : A_CVTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #220#208#2#15#45#72;
     code    : #220#208#2#15#45#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSD2SI;
     opcode  : A_CVTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #220#208#2#15#45#72;
     code    : #220#208#2#15#45#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSD2SS;
     opcode  : A_CVTSD2SS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#90#72;
     code    : #220#2#15#90#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SD;
     opcode  : A_CVTSI2SD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none);
+    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none,ot_none);
     code    : #220#209#2#15#42#72;
     code    : #220#209#2#15#42#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SD;
     opcode  : A_CVTSI2SD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #220#209#2#15#42#72;
     code    : #220#209#2#15#42#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSS2SD;
     opcode  : A_CVTSS2SD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#90#72;
     code    : #219#2#15#90#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTPD2PI;
     opcode  : A_CVTTPD2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#44#72;
     code    : #241#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTPD2PI;
     opcode  : A_CVTTPD2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #241#2#15#44#72;
     code    : #241#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTPD2DQ;
     opcode  : A_CVTTPD2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#230#72;
     code    : #241#2#15#230#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTTPS2DQ;
     opcode  : A_CVTTPS2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#91#72;
     code    : #219#2#15#91#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTTSD2SI;
     opcode  : A_CVTTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #220#208#2#15#44#72;
     code    : #220#208#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTSD2SI;
     opcode  : A_CVTTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #220#208#2#15#44#72;
     code    : #220#208#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_DIVPD;
     opcode  : A_DIVPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#94#72;
     code    : #241#2#15#94#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_DIVSD;
     opcode  : A_DIVSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#94#72;
     code    : #220#2#15#94#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MAXPD;
     opcode  : A_MAXPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#95#72;
     code    : #241#2#15#95#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MAXSD;
     opcode  : A_MAXSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#95#72;
     code    : #220#2#15#95#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MINPD;
     opcode  : A_MINPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#93#72;
     code    : #241#2#15#93#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MINSD;
     opcode  : A_MINSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#93#72;
     code    : #220#2#15#93#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVAPD;
     opcode  : A_MOVAPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#41#65;
     code    : #241#2#15#41#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVAPD;
     opcode  : A_MOVAPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#40#72;
     code    : #241#2#15#40#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVHPD;
     opcode  : A_MOVHPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#23#65;
     code    : #241#2#15#23#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVHPD;
     opcode  : A_MOVHPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #241#2#15#22#72;
     code    : #241#2#15#22#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVLPD;
     opcode  : A_MOVLPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#19#65;
     code    : #241#2#15#19#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVLPD;
     opcode  : A_MOVLPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #241#2#15#18#72;
     code    : #241#2#15#18#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVMSKPD;
     opcode  : A_MOVMSKPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_xmmreg,ot_none);
+    optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#80#72;
     code    : #241#2#15#80#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVUPD;
     opcode  : A_MOVUPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#17#65;
     code    : #241#2#15#17#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVUPD;
     opcode  : A_MOVUPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#16#72;
     code    : #241#2#15#16#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MULPD;
     opcode  : A_MULPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#89#72;
     code    : #241#2#15#89#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MULSD;
     opcode  : A_MULSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#89#72;
     code    : #220#2#15#89#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_ORPD;
     opcode  : A_ORPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#86#72;
     code    : #241#2#15#86#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SHUFPD;
     opcode  : A_SHUFPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#2#15#198#72#22;
     code    : #241#2#15#198#72#22;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SQRTPD;
     opcode  : A_SQRTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#81#72;
     code    : #241#2#15#81#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SQRTSD;
     opcode  : A_SQRTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#81#72;
     code    : #220#2#15#81#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_SUBPD;
     opcode  : A_SUBPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#92#72;
     code    : #241#2#15#92#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUBSD;
     opcode  : A_SUBSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#92#72;
     code    : #220#2#15#92#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_UCOMISD;
     opcode  : A_UCOMISD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#46#72;
     code    : #241#2#15#46#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_UNPCKHPD;
     opcode  : A_UNPCKHPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#21#72;
     code    : #241#2#15#21#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_UNPCKLPD;
     opcode  : A_UNPCKLPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#20#72;
     code    : #241#2#15#20#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XORPD;
     opcode  : A_XORPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#87#72;
     code    : #241#2#15#87#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDSUBPD;
     opcode  : A_ADDSUBPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#208#72;
     code    : #241#2#15#208#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDSUBPS;
     opcode  : A_ADDSUBPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#208#72;
     code    : #220#2#15#208#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HADDPD;
     opcode  : A_HADDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#124#72;
     code    : #241#2#15#124#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HADDPS;
     opcode  : A_HADDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#124#72;
     code    : #220#2#15#124#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HSUBPD;
     opcode  : A_HSUBPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#125#72;
     code    : #241#2#15#125#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HSUBPS;
     opcode  : A_HSUBPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#125#72;
     code    : #220#2#15#125#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_LDDQU;
     opcode  : A_LDDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #220#2#15#240#72;
     code    : #220#2#15#240#72;
     flags   : if_prescott or if_sse3
     flags   : if_prescott or if_sse3
   ),
   ),
   (
   (
     opcode  : A_MOVDDUP;
     opcode  : A_MOVDDUP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#18#72;
     code    : #220#2#15#18#72;
     flags   : if_prescott or if_sse3
     flags   : if_prescott or if_sse3
   ),
   ),
   (
   (
     opcode  : A_MOVSHDUP;
     opcode  : A_MOVSHDUP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#22#72;
     code    : #219#2#15#22#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVSLDUP;
     opcode  : A_MOVSLDUP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#18#72;
     code    : #219#2#15#18#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_VMREAD;
     opcode  : A_VMREAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg32,ot_none);
+    optypes : (ot_reg32,ot_reg32,ot_none,ot_none);
     code    : #2#15#120#65;
     code    : #2#15#120#65;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMREAD;
     opcode  : A_VMREAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg32,ot_none);
+    optypes : (ot_memory,ot_reg32,ot_none,ot_none);
     code    : #2#15#120#65;
     code    : #2#15#120#65;
     flags   : if_386 or if_priv or if_prot or if_sm
     flags   : if_386 or if_priv or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_VMWRITE;
     opcode  : A_VMWRITE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg32,ot_none);
+    optypes : (ot_reg32,ot_reg32,ot_none,ot_none);
     code    : #2#15#121#72;
     code    : #2#15#121#72;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMWRITE;
     opcode  : A_VMWRITE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_memory,ot_none);
+    optypes : (ot_reg32,ot_memory,ot_none,ot_none);
     code    : #2#15#121#72;
     code    : #2#15#121#72;
     flags   : if_386 or if_priv or if_prot or if_sm
     flags   : if_386 or if_priv or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_VMCALL;
     opcode  : A_VMCALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#193;
     code    : #3#15#1#193;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMLAUNCH;
     opcode  : A_VMLAUNCH;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#194;
     code    : #3#15#1#194;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMRESUME;
     opcode  : A_VMRESUME;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#195;
     code    : #3#15#1#195;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMXOFF;
     opcode  : A_VMXOFF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#196;
     code    : #3#15#1#196;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMXON;
     opcode  : A_VMXON;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #219#2#15#199#134;
     code    : #219#2#15#199#134;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMCLEAR;
     opcode  : A_VMCLEAR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #241#2#15#199#134;
     code    : #241#2#15#199#134;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMPTRLD;
     opcode  : A_VMPTRLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#199#134;
     code    : #2#15#199#134;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMPTRST;
     opcode  : A_VMPTRST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#199#135;
     code    : #2#15#199#135;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMRUN;
     opcode  : A_VMRUN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#216;
     code    : #3#15#1#216;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMMCALL;
     opcode  : A_VMMCALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#217;
     code    : #3#15#1#217;
     flags   : if_386 or if_svm
     flags   : if_386 or if_svm
   ),
   ),
   (
   (
     opcode  : A_VMLOAD;
     opcode  : A_VMLOAD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#218;
     code    : #3#15#1#218;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMSAVE;
     opcode  : A_VMSAVE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#219;
     code    : #3#15#1#219;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_STGI;
     opcode  : A_STGI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#220;
     code    : #3#15#1#220;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_CLGI;
     opcode  : A_CLGI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#221;
     code    : #3#15#1#221;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_SKINIT;
     opcode  : A_SKINIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#222;
     code    : #3#15#1#222;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_INVLPGA;
     opcode  : A_INVLPGA;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#223;
     code    : #3#15#1#223;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_MONTMUL;
     opcode  : A_MONTMUL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#166#192;
     code    : #219#3#15#166#192;
     flags   : if_centaur
     flags   : if_centaur
   ),
   ),
   (
   (
     opcode  : A_XSHA1;
     opcode  : A_XSHA1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#166#200;
     code    : #219#3#15#166#200;
     flags   : if_centaur
     flags   : if_centaur
   ),
   ),
   (
   (
     opcode  : A_XSHA256;
     opcode  : A_XSHA256;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#166#208;
     code    : #219#3#15#166#208;
     flags   : if_centaur
     flags   : if_centaur
   ),
   ),
   (
   (
     opcode  : A_DMINT;
     opcode  : A_DMINT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#57;
     code    : #2#15#57;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_RDM;
     opcode  : A_RDM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#58;
     code    : #2#15#58;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_MOVNTSS;
     opcode  : A_MOVNTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #219#2#15#43#65;
     code    : #219#2#15#43#65;
     flags   : if_sse4 or if_sd
     flags   : if_sse4 or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOVNTSD;
     opcode  : A_MOVNTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #220#213#2#15#43#65;
     code    : #220#213#2#15#43#65;
     flags   : if_sse4
     flags   : if_sse4
   ),
   ),
   (
   (
     opcode  : A_INSERTQ;
     opcode  : A_INSERTQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #220#2#15#121#72;
     code    : #220#2#15#121#72;
     flags   : if_sse4
     flags   : if_sse4
   ),
   ),
+  (
+    opcode  : A_INSERTQ;
+    ops     : 4;
+    optypes : (ot_xmmreg,ot_xmmreg,ot_immediate,ot_immediate);
+    code    : #220#2#15#120#72#22#23;
+    flags   : if_sse4 or if_sb
+  ),
   (
   (
     opcode  : A_EXTRQ;
     opcode  : A_EXTRQ;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_immediate,ot_immediate);
+    optypes : (ot_xmmreg,ot_immediate,ot_immediate,ot_none);
     code    : #241#2#15#120#128#21#22;
     code    : #241#2#15#120#128#21#22;
     flags   : if_sse4 or if_sb
     flags   : if_sse4 or if_sb
   ),
   ),
   (
   (
     opcode  : A_EXTRQ;
     opcode  : A_EXTRQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#121#72;
     code    : #241#2#15#121#72;
     flags   : if_sse4
     flags   : if_sse4
   ),
   ),
   (
   (
     opcode  : A_LZCNT;
     opcode  : A_LZCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16,ot_rm_gpr,ot_none,ot_none);
     code    : #208#219#2#15#189#72;
     code    : #208#219#2#15#189#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_LZCNT;
     opcode  : A_LZCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #209#219#2#15#189#72;
     code    : #209#219#2#15#189#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_PABSB;
     opcode  : A_PABSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#28#72;
     code    : #217#3#15#56#28#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSB;
     opcode  : A_PABSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#28#72;
     code    : #241#3#15#56#28#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSW;
     opcode  : A_PABSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#29#72;
     code    : #217#3#15#56#29#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSW;
     opcode  : A_PABSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#29#72;
     code    : #241#3#15#56#29#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSD;
     opcode  : A_PABSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#30#72;
     code    : #217#3#15#56#30#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSD;
     opcode  : A_PABSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#30#72;
     code    : #241#3#15#56#30#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PALIGNR;
     opcode  : A_PALIGNR;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate,ot_none);
     code    : #217#3#15#58#15#72#22;
     code    : #217#3#15#58#15#72#22;
     flags   : if_ssse3 or if_mmx or if_sm2 or if_sb or if_ar2
     flags   : if_ssse3 or if_mmx or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PALIGNR;
     opcode  : A_PALIGNR;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#15#72#22;
     code    : #241#3#15#58#15#72#22;
     flags   : if_ssse3 or if_sm2 or if_sb or if_ar2
     flags   : if_ssse3 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PHADDW;
     opcode  : A_PHADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#1#72;
     code    : #217#3#15#56#1#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDW;
     opcode  : A_PHADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#1#72;
     code    : #241#3#15#56#1#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDD;
     opcode  : A_PHADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#2#72;
     code    : #217#3#15#56#2#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDD;
     opcode  : A_PHADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#2#72;
     code    : #241#3#15#56#2#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDSW;
     opcode  : A_PHADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#3#72;
     code    : #217#3#15#56#3#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDSW;
     opcode  : A_PHADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#3#72;
     code    : #241#3#15#56#3#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBW;
     opcode  : A_PHSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#5#72;
     code    : #217#3#15#56#5#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBW;
     opcode  : A_PHSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#5#72;
     code    : #241#3#15#56#5#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBD;
     opcode  : A_PHSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#6#72;
     code    : #217#3#15#56#6#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBD;
     opcode  : A_PHSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#6#72;
     code    : #241#3#15#56#6#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBSW;
     opcode  : A_PHSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#7#72;
     code    : #217#3#15#56#7#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBSW;
     opcode  : A_PHSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#7#72;
     code    : #241#3#15#56#7#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMADDUBSW;
     opcode  : A_PMADDUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#4#72;
     code    : #217#3#15#56#4#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMADDUBSW;
     opcode  : A_PMADDUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#4#72;
     code    : #241#3#15#56#4#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHRSW;
     opcode  : A_PMULHRSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#11#72;
     code    : #217#3#15#56#11#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHRSW;
     opcode  : A_PMULHRSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#11#72;
     code    : #241#3#15#56#11#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFB;
     opcode  : A_PSHUFB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#0#72;
     code    : #217#3#15#56#0#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFB;
     opcode  : A_PSHUFB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#0#72;
     code    : #241#3#15#56#0#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNB;
     opcode  : A_PSIGNB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#8#72;
     code    : #217#3#15#56#8#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNB;
     opcode  : A_PSIGNB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#8#72;
     code    : #241#3#15#56#8#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNW;
     opcode  : A_PSIGNW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#9#72;
     code    : #217#3#15#56#9#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNW;
     opcode  : A_PSIGNW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#9#72;
     code    : #241#3#15#56#9#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGND;
     opcode  : A_PSIGND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#10#72;
     code    : #217#3#15#56#10#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGND;
     opcode  : A_PSIGND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#10#72;
     code    : #241#3#15#56#10#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BLENDPS;
     opcode  : A_BLENDPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#12#72#22;
     code    : #241#3#15#58#12#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_BLENDPD;
     opcode  : A_BLENDPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#13#72#22;
     code    : #241#3#15#58#13#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_BLENDVPS;
     opcode  : A_BLENDVPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#20#72;
     code    : #241#3#15#56#20#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BLENDVPD;
     opcode  : A_BLENDVPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#21#72;
     code    : #241#3#15#56#21#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_DPPS;
     opcode  : A_DPPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#64#72#22;
     code    : #241#3#15#58#64#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_DPPD;
     opcode  : A_DPPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#65#72#22;
     code    : #241#3#15#58#65#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_EXTRACTPS;
     opcode  : A_EXTRACTPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#213#3#15#58#23#65#22;
     code    : #241#213#3#15#58#23#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_EXTRACTPS;
     opcode  : A_EXTRACTPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#23#65#22;
     code    : #241#3#15#58#23#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_INSERTPS;
     opcode  : A_INSERTPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#33#72#22;
     code    : #241#3#15#58#33#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_MOVNTDQA;
     opcode  : A_MOVNTDQA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #241#3#15#56#42#72;
     code    : #241#3#15#56#42#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MPSADBW;
     opcode  : A_MPSADBW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#66#72#22;
     code    : #241#3#15#58#66#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PACKUSDW;
     opcode  : A_PACKUSDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#43#72;
     code    : #241#3#15#56#43#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PBLENDVB;
     opcode  : A_PBLENDVB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#16#72;
     code    : #241#3#15#56#16#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PBLENDW;
     opcode  : A_PBLENDW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#14#72#22;
     code    : #241#3#15#58#14#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPEQQ;
     opcode  : A_PCMPEQQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#41#72;
     code    : #241#3#15#56#41#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PEXTRB;
     opcode  : A_PEXTRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#20#65#22;
     code    : #241#3#15#58#20#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRB;
     opcode  : A_PEXTRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#20#65#22;
     code    : #241#3#15#58#20#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRD;
     opcode  : A_PEXTRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#22#65#22;
     code    : #241#3#15#58#22#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRD;
     opcode  : A_PEXTRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#22#65#22;
     code    : #241#3#15#58#22#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PHMINPOSUW;
     opcode  : A_PHMINPOSUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#65#72;
     code    : #241#3#15#56#65#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PINSRB;
     opcode  : A_PINSRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_immediate,ot_none);
     code    : #241#3#15#58#32#72#22;
     code    : #241#3#15#58#32#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRB;
     opcode  : A_PINSRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_immediate,ot_none);
     code    : #241#3#15#58#32#72#22;
     code    : #241#3#15#58#32#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRD;
     opcode  : A_PINSRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg32,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg32,ot_immediate,ot_none);
     code    : #241#3#15#58#34#72#22;
     code    : #241#3#15#58#34#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRD;
     opcode  : A_PINSRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_immediate,ot_none);
     code    : #241#3#15#58#34#72#22;
     code    : #241#3#15#58#34#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PMAXSB;
     opcode  : A_PMAXSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#60#72;
     code    : #241#3#15#56#60#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXSD;
     opcode  : A_PMAXSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#61#72;
     code    : #241#3#15#56#61#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUD;
     opcode  : A_PMAXUD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#63#72;
     code    : #241#3#15#56#63#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUW;
     opcode  : A_PMAXUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#62#72;
     code    : #241#3#15#56#62#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSB;
     opcode  : A_PMINSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#56#72;
     code    : #241#3#15#56#56#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSD;
     opcode  : A_PMINSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#57#72;
     code    : #241#3#15#56#57#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUW;
     opcode  : A_PMINUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#58#72;
     code    : #241#3#15#56#58#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUD;
     opcode  : A_PMINUD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#59#72;
     code    : #241#3#15#56#59#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXBW;
     opcode  : A_PMOVSXBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#32#72;
     code    : #241#3#15#56#32#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXBD;
     opcode  : A_PMOVSXBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#33#72;
     code    : #241#3#15#56#33#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXBQ;
     opcode  : A_PMOVSXBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#34#72;
     code    : #241#3#15#56#34#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXWD;
     opcode  : A_PMOVSXWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#35#72;
     code    : #241#3#15#56#35#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXWQ;
     opcode  : A_PMOVSXWQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#36#72;
     code    : #241#3#15#56#36#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXDQ;
     opcode  : A_PMOVSXDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#37#72;
     code    : #241#3#15#56#37#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXBW;
     opcode  : A_PMOVZXBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#48#72;
     code    : #241#3#15#56#48#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXBD;
     opcode  : A_PMOVZXBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#49#72;
     code    : #241#3#15#56#49#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXBQ;
     opcode  : A_PMOVZXBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#50#72;
     code    : #241#3#15#56#50#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXWD;
     opcode  : A_PMOVZXWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#51#72;
     code    : #241#3#15#56#51#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXWQ;
     opcode  : A_PMOVZXWQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#52#72;
     code    : #241#3#15#56#52#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXDQ;
     opcode  : A_PMOVZXDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#53#72;
     code    : #241#3#15#56#53#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULDQ;
     opcode  : A_PMULDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#40#72;
     code    : #241#3#15#56#40#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULLD;
     opcode  : A_PMULLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#64#72;
     code    : #241#3#15#56#64#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PTEST;
     opcode  : A_PTEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#23#72;
     code    : #241#3#15#56#23#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ROUNDPS;
     opcode  : A_ROUNDPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#8#72#22;
     code    : #241#3#15#58#8#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_ROUNDPD;
     opcode  : A_ROUNDPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#9#72#22;
     code    : #241#3#15#58#9#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_ROUNDSS;
     opcode  : A_ROUNDSS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#10#72#22;
     code    : #241#3#15#58#10#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_ROUNDSD;
     opcode  : A_ROUNDSD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#11#72#22;
     code    : #241#3#15#58#11#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_CRC32;
     opcode  : A_CRC32;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg32,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #220#3#15#56#240#72;
     code    : #220#3#15#56#240#72;
     flags   : if_sse42
     flags   : if_sse42
   ),
   ),
   (
   (
     opcode  : A_CRC32;
     opcode  : A_CRC32;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none);
+    optypes : (ot_reg32,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none,ot_none);
     code    : #209#220#3#15#56#241#72;
     code    : #209#220#3#15#56#241#72;
     flags   : if_sse42
     flags   : if_sse42
   ),
   ),
   (
   (
     opcode  : A_PCMPESTRI;
     opcode  : A_PCMPESTRI;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#97#72#22;
     code    : #241#3#15#58#97#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPESTRM;
     opcode  : A_PCMPESTRM;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#96#72#22;
     code    : #241#3#15#58#96#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPISTRI;
     opcode  : A_PCMPISTRI;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#99#72#22;
     code    : #241#3#15#58#99#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPISTRM;
     opcode  : A_PCMPISTRM;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#98#72#22;
     code    : #241#3#15#58#98#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPGTQ;
     opcode  : A_PCMPGTQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#55#72;
     code    : #241#3#15#56#55#72;
     flags   : if_sse42 or if_sm
     flags   : if_sse42 or if_sm
   ),
   ),
   (
   (
     opcode  : A_POPCNT;
     opcode  : A_POPCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_rm_gpr or ot_bits16,ot_none);
+    optypes : (ot_reg16,ot_rm_gpr or ot_bits16,ot_none,ot_none);
     code    : #219#208#2#15#184#72;
     code    : #219#208#2#15#184#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_POPCNT;
     opcode  : A_POPCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_rm_gpr or ot_bits32,ot_none);
+    optypes : (ot_reg32,ot_rm_gpr or ot_bits32,ot_none,ot_none);
     code    : #219#208#2#15#184#72;
     code    : #219#208#2#15#184#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_AESENC;
     opcode  : A_AESENC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#220#72;
     code    : #241#3#15#56#220#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESENCLAST;
     opcode  : A_AESENCLAST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#221#72;
     code    : #241#3#15#56#221#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESDEC;
     opcode  : A_AESDEC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#222#72;
     code    : #241#3#15#56#222#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESDECLAST;
     opcode  : A_AESDECLAST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#223#72;
     code    : #241#3#15#56#223#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESIMC;
     opcode  : A_AESIMC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#219#72;
     code    : #241#3#15#56#219#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESKEYGENASSIST;
     opcode  : A_AESKEYGENASSIST;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#223#72#22;
     code    : #241#3#15#58#223#72#22;
     flags   : if_sse4 or if_sb or if_ar2
     flags   : if_sse4 or if_sb or if_ar2
   )
   )

+ 26 - 13
compiler/rautils.pas

@@ -1018,19 +1018,32 @@ end;
     Var
     Var
       p : toperand;
       p : toperand;
     Begin
     Begin
-      case Ops of
-       2 :
-        begin
-          p:=Operands[1];
-          Operands[1]:=Operands[2];
-          Operands[2]:=p;
-        end;
-       3 :
-        begin
-          p:=Operands[1];
-          Operands[1]:=Operands[3];
-          Operands[3]:=p;
-        end;
+      case ops of
+        0,1:
+          ;
+        2 : begin
+              { 0,1 -> 1,0 }
+              p:=Operands[1];
+              Operands[1]:=Operands[2];
+              Operands[2]:=p;
+            end;
+        3 : begin
+              { 0,1,2 -> 2,1,0 }
+              p:=Operands[1];
+              Operands[1]:=Operands[3];
+              Operands[3]:=p;
+            end;
+        4 : begin
+              { 0,1,2,3 -> 3,2,1,0 }
+              p:=Operands[1];
+              Operands[1]:=Operands[4];
+              Operands[4]:=p;
+              p:=Operands[2];
+              Operands[2]:=Operands[3];
+              Operands[3]:=p;
+            end;
+        else
+          internalerror(201108142);
       end;
       end;
     end;
     end;
 
 

+ 8 - 9
compiler/utils/mkx86ins.pp

@@ -15,8 +15,8 @@
 program mkx86ins;
 program mkx86ins;
 
 
 const
 const
-  Version = '1.5.1';
-
+  Version = '1.6.0';
+  max_operands = 4;
 var
 var
    s : string;
    s : string;
    i : longint;
    i : longint;
@@ -205,7 +205,7 @@ var
    opcode,
    opcode,
    codes,
    codes,
    flags   : string;
    flags   : string;
-   optypes : array[1..3] of string;
+   optypes : array[1..max_operands] of string;
 begin
 begin
    writeln('Nasm Instruction Table Converter Version ',Version);
    writeln('Nasm Instruction Table Converter Version ',Version);
    x86_64:=paramstr(1)='x86_64';
    x86_64:=paramstr(1)='x86_64';
@@ -331,9 +331,8 @@ begin
          runerror(234);
          runerror(234);
         { clear }
         { clear }
         ops:=0;
         ops:=0;
-        optypes[1]:='';
-        optypes[2]:='';
-        optypes[3]:='';
+        for i:=low(optypes) to high(optypes) do
+          optypes[i]:='';
         codes:='';
         codes:='';
         flags:='';
         flags:='';
         skip:=false;
         skip:=false;
@@ -355,8 +354,8 @@ begin
           else
           else
             break;
             break;
         until false;
         until false;
-        for j:=1 to 3-ops do
-          optypes[3-j+1]:='ot_none';
+        for j:=1 to max_operands-ops do
+          optypes[max_operands-j+1]:='ot_none';
         { codes }
         { codes }
         skipspace;
         skipspace;
         j:=0;
         j:=0;
@@ -429,7 +428,7 @@ begin
             writeln(insfile,'  (');
             writeln(insfile,'  (');
             writeln(insfile,'    opcode  : ',opcode,';');
             writeln(insfile,'    opcode  : ',opcode,';');
             writeln(insfile,'    ops     : ',ops,';');
             writeln(insfile,'    ops     : ',ops,';');
-            writeln(insfile,'    optypes : (',optypes[1],',',optypes[2],',',optypes[3],');');
+            writeln(insfile,'    optypes : (',optypes[1],',',optypes[2],',',optypes[3],',',optypes[4],');');
             writeln(insfile,'    code    : ',codes,';');
             writeln(insfile,'    code    : ',codes,';');
             writeln(insfile,'    flags   : ',flags);
             writeln(insfile,'    flags   : ',flags);
             write(insfile,'  )');
             write(insfile,'  )');

+ 20 - 7
compiler/x86/aasmcpu.pas

@@ -222,7 +222,7 @@ interface
       tinsentry=packed record
       tinsentry=packed record
         opcode  : tasmop;
         opcode  : tasmop;
         ops     : byte;
         ops     : byte;
-        optypes : array[0..2] of longint;
+        optypes : array[0..max_operands-1] of longint;
         code    : array[0..maxinfolen] of char;
         code    : array[0..maxinfolen] of char;
         flags   : cardinal;
         flags   : cardinal;
       end;
       end;
@@ -861,6 +861,8 @@ implementation
       begin
       begin
         { Fix the operands which are in AT&T style and we need them in Intel style }
         { Fix the operands which are in AT&T style and we need them in Intel style }
         case ops of
         case ops of
+          0,1:
+            ;
           2 : begin
           2 : begin
                 { 0,1 -> 1,0 }
                 { 0,1 -> 1,0 }
                 p:=oper[0];
                 p:=oper[0];
@@ -873,6 +875,17 @@ implementation
                 oper[0]:=oper[2];
                 oper[0]:=oper[2];
                 oper[2]:=p;
                 oper[2]:=p;
               end;
               end;
+          4 : begin
+                { 0,1,2,3 -> 3,2,1,0 }
+                p:=oper[0];
+                oper[0]:=oper[3];
+                oper[3]:=p;
+                p:=oper[1];
+                oper[1]:=oper[2];
+                oper[2]:=p;
+              end;
+          else
+            internalerror(201108141);
         end;
         end;
       end;
       end;
 
 
@@ -1056,9 +1069,9 @@ implementation
                 end;
                 end;
               top_const :
               top_const :
                 begin
                 begin
-                  { allow 2nd or 3rd operand being a constant and expect no size for shuf* etc. }
+                  { allow 2nd, 3rd or 4th operand being a constant and expect no size for shuf* etc. }
                   { further, allow AAD and AAM with imm. operand }
                   { further, allow AAD and AAM with imm. operand }
-                  if (opsize=S_NO) and not((i in [1,2]) or ((i=0) and (opcode in [A_AAD,A_AAM]))) then
+                  if (opsize=S_NO) and not((i in [1,2,3]) or ((i=0) and (opcode in [A_AAD,A_AAM]))) then
                     message(asmr_e_invalid_opcode_and_operand);
                     message(asmr_e_invalid_opcode_and_operand);
                   if (opsize<>S_W) and (aint(val)>=-128) and (val<=127) then
                   if (opsize<>S_W) and (aint(val)>=-128) and (val<=127) then
                     ot:=OT_IMM8 or OT_SIGNED
                     ot:=OT_IMM8 or OT_SIGNED
@@ -1112,7 +1125,7 @@ implementation
         currot,
         currot,
         i,j,asize,oprs : longint;
         i,j,asize,oprs : longint;
         insflags:cardinal;
         insflags:cardinal;
-        siz : array[0..2] of longint;
+        siz : array[0..max_operands-1] of longint;
       begin
       begin
         result:=false;
         result:=false;
 
 
@@ -1753,7 +1766,7 @@ implementation
               end;
               end;
             12,13,14,
             12,13,14,
             16,17,18,
             16,17,18,
-            20,21,22,
+            20,21,22,23,
             40,41,42 :
             40,41,42 :
               inc(len);
               inc(len);
             24,25,26,
             24,25,26,
@@ -1879,7 +1892,7 @@ implementation
        *                 to the condition code value of the instruction.
        *                 to the condition code value of the instruction.
        * \14, \15, \16 - a signed byte immediate operand, from operand 0, 1 or 2
        * \14, \15, \16 - a signed byte immediate operand, from operand 0, 1 or 2
        * \20, \21, \22 - a byte immediate operand, from operand 0, 1 or 2
        * \20, \21, \22 - a byte immediate operand, from operand 0, 1 or 2
-       * \24, \25, \26 - an unsigned byte immediate operand, from operand 0, 1 or 2
+       * \24, \25, \26, \27 - an unsigned byte immediate operand, from operand 0, 1, 2 or 3
        * \30, \31, \32 - a word immediate operand, from operand 0, 1 or 2
        * \30, \31, \32 - a word immediate operand, from operand 0, 1 or 2
        * \34, \35, \36 - select between \3[012] and \4[012] depending on 16/32 bit
        * \34, \35, \36 - select between \3[012] and \4[012] depending on 16/32 bit
        *                 assembly mode or the address-size override on the operand
        *                 assembly mode or the address-size override on the operand
@@ -2126,7 +2139,7 @@ implementation
                 else
                 else
                  objdata.writebytes(currval,1);
                  objdata.writebytes(currval,1);
               end;
               end;
-            20,21,22 :
+            20,21,22,23 :
               begin
               begin
                 getvalsym(c-20);
                 getvalsym(c-20);
                 if (currval<0) or (currval>255) then
                 if (currval<0) or (currval>255) then

+ 1 - 2
compiler/x86/x86ins.dat

@@ -3045,8 +3045,7 @@ mem,xmmreg              \334\325\2\x0F\x2B\101                SSE4 ;,SQ
 [INSERTQ]
 [INSERTQ]
 (Ch_All, Ch_None, Ch_None)
 (Ch_All, Ch_None, Ch_None)
 xmmreg,xmmreg           \334\2\x0F\x79\110                        SSE4
 xmmreg,xmmreg           \334\2\x0F\x79\110                        SSE4
-; four operands are not possible yet
-; xmmreg,xmmreg,imm,imm   \334\2\x0F\x78\110\26\27          SSE4,SB
+xmmreg,xmmreg,imm,imm   \334\2\x0F\x78\110\26\27          SSE4,SB
 
 
 [EXTRQ]
 [EXTRQ]
 (Ch_All, Ch_None, Ch_None)
 (Ch_All, Ch_None, Ch_None)

+ 1 - 1
compiler/x86_64/x8664nop.inc

@@ -1,2 +1,2 @@
 { don't edit, this file is generated from x86ins.dat }
 { don't edit, this file is generated from x86ins.dat }
-1213;
+1214;

+ 1220 - 1213
compiler/x86_64/x8664tab.inc

@@ -3,8491 +3,8498 @@
   (
   (
     opcode  : A_NONE;
     opcode  : A_NONE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #0;
     code    : #0;
     flags   : if_none
     flags   : if_none
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#17#65;
     code    : #208#1#17#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#19#72;
     code    : #208#1#19#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#16#65;
     code    : #1#16#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#18#72;
     code    : #1#18#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#130#13;
     code    : #208#1#131#130#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#21#33;
     code    : #213#1#21#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#21#173;
     code    : #214#1#21#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#130#33;
     code    : #213#1#129#130#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#130#173;
     code    : #214#1#129#130#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#21#25;
     code    : #212#1#21#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#130#25;
     code    : #212#1#129#130#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#20#17;
     code    : #1#20#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ADC;
     opcode  : A_ADC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#130#17;
     code    : #1#128#130#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#1#65;
     code    : #208#1#1#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#3#72;
     code    : #208#1#3#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#0#65;
     code    : #1#0#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#2#72;
     code    : #1#2#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#128#13;
     code    : #208#1#131#128#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #208#1#5#33;
     code    : #208#1#5#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#5#173;
     code    : #214#1#5#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#128#33;
     code    : #213#1#129#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#128#173;
     code    : #214#1#129#128#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#5#25;
     code    : #212#1#5#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#128#25;
     code    : #212#1#129#128#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#4#17;
     code    : #1#4#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ADD;
     opcode  : A_ADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#128#17;
     code    : #1#128#128#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#33#65;
     code    : #208#1#33#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#35#72;
     code    : #208#1#35#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#32#65;
     code    : #1#32#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#34#72;
     code    : #1#34#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#132#13;
     code    : #208#1#131#132#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#37#33;
     code    : #213#1#37#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#37#173;
     code    : #214#1#37#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#132#33;
     code    : #213#1#129#132#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#132#173;
     code    : #214#1#129#132#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#37#25;
     code    : #212#1#37#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#132#25;
     code    : #212#1#129#132#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#36#17;
     code    : #1#36#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_AND;
     opcode  : A_AND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#132#17;
     code    : #1#128#132#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BSF;
     opcode  : A_BSF;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#188#72;
     code    : #208#2#15#188#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BSR;
     opcode  : A_BSR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#189#72;
     code    : #208#2#15#189#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BSWAP;
     opcode  : A_BSWAP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#15#8#200;
     code    : #208#1#15#8#200;
     flags   : if_486
     flags   : if_486
   ),
   ),
   (
   (
     opcode  : A_BT;
     opcode  : A_BT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#163#65;
     code    : #208#2#15#163#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BT;
     opcode  : A_BT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#132#21;
     code    : #208#2#15#186#132#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BTC;
     opcode  : A_BTC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#187#65;
     code    : #208#2#15#187#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BTC;
     opcode  : A_BTC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#135#21;
     code    : #208#2#15#186#135#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BTR;
     opcode  : A_BTR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#179#65;
     code    : #208#2#15#179#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BTR;
     opcode  : A_BTR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#134#21;
     code    : #208#2#15#186#134#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_BTS;
     opcode  : A_BTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#171#65;
     code    : #208#2#15#171#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BTS;
     opcode  : A_BTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#2#15#186#133#21;
     code    : #208#2#15#186#133#21;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #208#1#232#52;
     code    : #208#1#232#52;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_near,ot_none,ot_none);
+    optypes : (ot_immediate or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#232#52;
     code    : #208#1#232#52;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CALL;
     opcode  : A_CALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#131;
     code    : #208#1#255#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CBW;
     opcode  : A_CBW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#152;
     code    : #212#1#152;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CDQ;
     opcode  : A_CDQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#153;
     code    : #213#1#153;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_CLC;
     opcode  : A_CLC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#248;
     code    : #1#248;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CLD;
     opcode  : A_CLD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#252;
     code    : #1#252;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CLI;
     opcode  : A_CLI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#250;
     code    : #1#250;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CLTS;
     opcode  : A_CLTS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#6;
     code    : #2#15#6;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_CMC;
     opcode  : A_CMC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#245;
     code    : #1#245;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#57#65;
     code    : #208#1#57#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#59#72;
     code    : #208#1#59#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#56#65;
     code    : #1#56#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#58#72;
     code    : #1#58#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#135#13;
     code    : #208#1#131#135#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#61#33;
     code    : #213#1#61#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#61#173;
     code    : #214#1#61#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#135#33;
     code    : #213#1#129#135#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#135#173;
     code    : #214#1#129#135#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#61#25;
     code    : #212#1#61#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#135#25;
     code    : #212#1#129#135#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#60#17;
     code    : #1#60#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#135#17;
     code    : #1#128#135#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none,ot_none);
     code    : #213#1#129#135#33;
     code    : #213#1#129#135#33;
     flags   : if_386 or if_sd
     flags   : if_386 or if_sd
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none,ot_none);
     code    : #212#1#129#135#25;
     code    : #212#1#129#135#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_CMP;
     opcode  : A_CMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none,ot_none);
     code    : #1#128#135#17;
     code    : #1#128#135#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_CMPSB;
     opcode  : A_CMPSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#1#166;
     code    : #218#1#166;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMPSD;
     opcode  : A_CMPSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#213#1#167;
     code    : #218#213#1#167;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_CMPSD;
     opcode  : A_CMPSD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #220#2#15#194#72#22;
     code    : #220#2#15#194#72#22;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_CMPSW;
     opcode  : A_CMPSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#212#1#167;
     code    : #218#212#1#167;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG;
     opcode  : A_CMPXCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#177#65;
     code    : #208#2#15#177#65;
     flags   : if_pent or if_sm
     flags   : if_pent or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG;
     opcode  : A_CMPXCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#176#65;
     code    : #2#15#176#65;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG486;
     opcode  : A_CMPXCHG486;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#167#65;
     code    : #208#2#15#167#65;
     flags   : if_486 or if_sm
     flags   : if_486 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG486;
     opcode  : A_CMPXCHG486;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#166#65;
     code    : #2#15#166#65;
     flags   : if_486 or if_undoc
     flags   : if_486 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG8B;
     opcode  : A_CMPXCHG8B;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#199#129;
     code    : #2#15#199#129;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_CPUID;
     opcode  : A_CPUID;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#162;
     code    : #2#15#162;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_CWD;
     opcode  : A_CWD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#153;
     code    : #212#1#153;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_CWDE;
     opcode  : A_CWDE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#152;
     code    : #213#1#152;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_DEC;
     opcode  : A_DEC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#129;
     code    : #208#1#255#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_DEC;
     opcode  : A_DEC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#254#129;
     code    : #1#254#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_DIV;
     opcode  : A_DIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#134;
     code    : #208#1#247#134;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_DIV;
     opcode  : A_DIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#134;
     code    : #1#246#134;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_EMMS;
     opcode  : A_EMMS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#119;
     code    : #2#15#119;
     flags   : if_pent or if_mmx
     flags   : if_pent or if_mmx
   ),
   ),
   (
   (
     opcode  : A_ENTER;
     opcode  : A_ENTER;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_immediate,ot_none);
+    optypes : (ot_immediate,ot_immediate,ot_none,ot_none);
     code    : #1#200#24#21;
     code    : #1#200#24#21;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_F2XM1;
     opcode  : A_F2XM1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#240;
     code    : #2#217#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FABS;
     opcode  : A_FABS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#225;
     code    : #2#217#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#128;
     code    : #1#216#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#128;
     code    : #1#220#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#193;
     code    : #2#222#193;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#192;
     code    : #1#220#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#192;
     code    : #1#220#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#192;
     code    : #1#216#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADD;
     opcode  : A_FADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#192;
     code    : #1#216#9#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADDP;
     opcode  : A_FADDP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#193;
     code    : #2#222#193;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADDP;
     opcode  : A_FADDP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#192;
     code    : #1#222#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FADDP;
     opcode  : A_FADDP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#192;
     code    : #1#222#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBLD;
     opcode  : A_FBLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#223#132;
     code    : #1#223#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBLD;
     opcode  : A_FBLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#223#132;
     code    : #1#223#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBSTP;
     opcode  : A_FBSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#223#134;
     code    : #1#223#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FBSTP;
     opcode  : A_FBSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#223#134;
     code    : #1#223#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCHS;
     opcode  : A_FCHS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#224;
     code    : #2#217#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCLEX;
     opcode  : A_FCLEX;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#226;
     code    : #3#155#219#226;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVB;
     opcode  : A_FCMOVB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#193;
     code    : #2#218#193;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVB;
     opcode  : A_FCMOVB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#192;
     code    : #1#218#8#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVB;
     opcode  : A_FCMOVB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#192;
     code    : #1#218#9#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVBE;
     opcode  : A_FCMOVBE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#209;
     code    : #2#218#209;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVBE;
     opcode  : A_FCMOVBE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#208;
     code    : #1#218#8#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVBE;
     opcode  : A_FCMOVBE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#208;
     code    : #1#218#9#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVE;
     opcode  : A_FCMOVE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#201;
     code    : #2#218#201;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVE;
     opcode  : A_FCMOVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#200;
     code    : #1#218#8#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVE;
     opcode  : A_FCMOVE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#200;
     code    : #1#218#9#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNB;
     opcode  : A_FCMOVNB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#193;
     code    : #2#219#193;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNB;
     opcode  : A_FCMOVNB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#192;
     code    : #1#219#8#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNB;
     opcode  : A_FCMOVNB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#192;
     code    : #1#219#9#192;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNBE;
     opcode  : A_FCMOVNBE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#209;
     code    : #2#219#209;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNBE;
     opcode  : A_FCMOVNBE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#208;
     code    : #1#219#8#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNBE;
     opcode  : A_FCMOVNBE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#208;
     code    : #1#219#9#208;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNE;
     opcode  : A_FCMOVNE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#201;
     code    : #2#219#201;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNE;
     opcode  : A_FCMOVNE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#200;
     code    : #1#219#8#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNE;
     opcode  : A_FCMOVNE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#200;
     code    : #1#219#9#200;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNU;
     opcode  : A_FCMOVNU;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#217;
     code    : #2#219#217;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNU;
     opcode  : A_FCMOVNU;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#216;
     code    : #1#219#8#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVNU;
     opcode  : A_FCMOVNU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#216;
     code    : #1#219#9#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVU;
     opcode  : A_FCMOVU;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#217;
     code    : #2#218#217;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVU;
     opcode  : A_FCMOVU;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#218#8#216;
     code    : #1#218#8#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCMOVU;
     opcode  : A_FCMOVU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#218#9#216;
     code    : #1#218#9#216;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#130;
     code    : #1#216#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#130;
     code    : #1#220#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#216#209;
     code    : #2#216#209;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#208;
     code    : #1#216#8#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOM;
     opcode  : A_FCOM;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#208;
     code    : #1#216#9#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMI;
     opcode  : A_FCOMI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#241;
     code    : #2#219#241;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMI;
     opcode  : A_FCOMI;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#240;
     code    : #1#219#8#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMI;
     opcode  : A_FCOMI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#240;
     code    : #1#219#9#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMIP;
     opcode  : A_FCOMIP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#223#241;
     code    : #2#223#241;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMIP;
     opcode  : A_FCOMIP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#223#8#240;
     code    : #1#223#8#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMIP;
     opcode  : A_FCOMIP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#223#9#240;
     code    : #1#223#9#240;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#131;
     code    : #1#216#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#131;
     code    : #1#220#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#216#217;
     code    : #2#216#217;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#216;
     code    : #1#216#8#216;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMP;
     opcode  : A_FCOMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#216;
     code    : #1#216#9#216;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOMPP;
     opcode  : A_FCOMPP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#217;
     code    : #2#222#217;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FCOS;
     opcode  : A_FCOS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#255;
     code    : #2#217#255;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDECSTP;
     opcode  : A_FDECSTP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#246;
     code    : #2#217#246;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDISI;
     opcode  : A_FDISI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#225;
     code    : #3#155#219#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#134;
     code    : #1#216#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#134;
     code    : #1#220#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#241;
     code    : #2#220#241;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#240;
     code    : #1#220#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#240;
     code    : #1#220#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#240;
     code    : #1#216#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIV;
     opcode  : A_FDIV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#240;
     code    : #1#216#9#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVP;
     opcode  : A_FDIVP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#241;
     code    : #2#222#241;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVP;
     opcode  : A_FDIVP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#240;
     code    : #1#222#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVP;
     opcode  : A_FDIVP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#240;
     code    : #1#222#8#240;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#135;
     code    : #1#216#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#135;
     code    : #1#220#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#249;
     code    : #2#220#249;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#248;
     code    : #1#220#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#248;
     code    : #1#220#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#248;
     code    : #1#216#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVR;
     opcode  : A_FDIVR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#248;
     code    : #1#216#9#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVRP;
     opcode  : A_FDIVRP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#249;
     code    : #2#222#249;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVRP;
     opcode  : A_FDIVRP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#248;
     code    : #1#222#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FDIVRP;
     opcode  : A_FDIVRP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#248;
     code    : #1#222#8#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FEMMS;
     opcode  : A_FEMMS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#14;
     code    : #2#15#14;
     flags   : if_pent or if_3dnow
     flags   : if_pent or if_3dnow
   ),
   ),
   (
   (
     opcode  : A_FENI;
     opcode  : A_FENI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#224;
     code    : #3#155#219#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FFREE;
     opcode  : A_FFREE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#192;
     code    : #1#221#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIADD;
     opcode  : A_FIADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#128;
     code    : #1#222#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIADD;
     opcode  : A_FIADD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#128;
     code    : #1#218#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOM;
     opcode  : A_FICOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#130;
     code    : #1#222#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOM;
     opcode  : A_FICOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#130;
     code    : #1#218#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOMP;
     opcode  : A_FICOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#131;
     code    : #1#222#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FICOMP;
     opcode  : A_FICOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#131;
     code    : #1#218#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIV;
     opcode  : A_FIDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#134;
     code    : #1#222#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIV;
     opcode  : A_FIDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#134;
     code    : #1#218#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIVR;
     opcode  : A_FIDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#135;
     code    : #1#222#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIDIVR;
     opcode  : A_FIDIVR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#135;
     code    : #1#218#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FILD;
     opcode  : A_FILD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#128;
     code    : #1#219#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FILD;
     opcode  : A_FILD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#223#128;
     code    : #1#223#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FILD;
     opcode  : A_FILD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#223#133;
     code    : #1#223#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIMUL;
     opcode  : A_FIMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#129;
     code    : #1#222#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIMUL;
     opcode  : A_FIMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#129;
     code    : #1#218#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FINCSTP;
     opcode  : A_FINCSTP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#247;
     code    : #2#217#247;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FINIT;
     opcode  : A_FINIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#219#227;
     code    : #3#155#219#227;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIST;
     opcode  : A_FIST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#130;
     code    : #1#219#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FIST;
     opcode  : A_FIST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#223#130;
     code    : #212#1#223#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTP;
     opcode  : A_FISTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#131;
     code    : #1#219#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTP;
     opcode  : A_FISTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#223#131;
     code    : #212#1#223#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTP;
     opcode  : A_FISTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#223#135;
     code    : #1#223#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTTP;
     opcode  : A_FISTTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#219#129;
     code    : #1#219#129;
     flags   : if_prescott or if_fpu
     flags   : if_prescott or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTTP;
     opcode  : A_FISTTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#223#129;
     code    : #1#223#129;
     flags   : if_prescott or if_fpu
     flags   : if_prescott or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISTTP;
     opcode  : A_FISTTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#129;
     code    : #1#221#129;
     flags   : if_prescott or if_fpu
     flags   : if_prescott or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUB;
     opcode  : A_FISUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#132;
     code    : #1#222#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUB;
     opcode  : A_FISUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#132;
     code    : #1#218#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUBR;
     opcode  : A_FISUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #1#222#133;
     code    : #1#222#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FISUBR;
     opcode  : A_FISUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#218#133;
     code    : #1#218#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#217#128;
     code    : #1#217#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#128;
     code    : #1#221#128;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#219#133;
     code    : #1#219#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD;
     opcode  : A_FLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#217#8#192;
     code    : #1#217#8#192;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLD1;
     opcode  : A_FLD1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#232;
     code    : #2#217#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDCW;
     opcode  : A_FLDCW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#133;
     code    : #1#217#133;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FLDENV;
     opcode  : A_FLDENV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#132;
     code    : #1#217#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDL2E;
     opcode  : A_FLDL2E;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#234;
     code    : #2#217#234;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDL2T;
     opcode  : A_FLDL2T;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#233;
     code    : #2#217#233;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDLG2;
     opcode  : A_FLDLG2;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#236;
     code    : #2#217#236;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDLN2;
     opcode  : A_FLDLN2;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#237;
     code    : #2#217#237;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDPI;
     opcode  : A_FLDPI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#235;
     code    : #2#217#235;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FLDZ;
     opcode  : A_FLDZ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#238;
     code    : #2#217#238;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#129;
     code    : #1#216#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#129;
     code    : #1#220#129;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#201;
     code    : #2#220#201;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#200;
     code    : #1#220#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#200;
     code    : #1#220#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#200;
     code    : #1#216#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMUL;
     opcode  : A_FMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#200;
     code    : #1#216#9#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMULP;
     opcode  : A_FMULP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#201;
     code    : #2#222#201;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMULP;
     opcode  : A_FMULP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#200;
     code    : #1#222#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FMULP;
     opcode  : A_FMULP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#200;
     code    : #1#222#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNCLEX;
     opcode  : A_FNCLEX;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#226;
     code    : #2#219#226;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNDISI;
     opcode  : A_FNDISI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#225;
     code    : #2#219#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNENI;
     opcode  : A_FNENI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#224;
     code    : #2#219#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNINIT;
     opcode  : A_FNINIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#227;
     code    : #2#219#227;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNOP;
     opcode  : A_FNOP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#208;
     code    : #2#217#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNSAVE;
     opcode  : A_FNSAVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#221#134;
     code    : #1#221#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNSTCW;
     opcode  : A_FNSTCW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#135;
     code    : #1#217#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FNSTENV;
     opcode  : A_FNSTENV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#217#134;
     code    : #1#217#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FNSTSW;
     opcode  : A_FNSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#221#135;
     code    : #1#221#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FNSTSW;
     opcode  : A_FNSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_ax,ot_none,ot_none);
+    optypes : (ot_reg_ax,ot_none,ot_none,ot_none);
     code    : #2#223#224;
     code    : #2#223#224;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPATAN;
     opcode  : A_FPATAN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#243;
     code    : #2#217#243;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPREM;
     opcode  : A_FPREM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#248;
     code    : #2#217#248;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPREM1;
     opcode  : A_FPREM1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#245;
     code    : #2#217#245;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FPTAN;
     opcode  : A_FPTAN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#242;
     code    : #2#217#242;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FRNDINT;
     opcode  : A_FRNDINT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#252;
     code    : #2#217#252;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FRSTOR;
     opcode  : A_FRSTOR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #1#221#132;
     code    : #1#221#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSAVE;
     opcode  : A_FSAVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#221#134;
     code    : #2#155#221#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSCALE;
     opcode  : A_FSCALE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#253;
     code    : #2#217#253;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSETPM;
     opcode  : A_FSETPM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#228;
     code    : #2#219#228;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSIN;
     opcode  : A_FSIN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#254;
     code    : #2#217#254;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSINCOS;
     opcode  : A_FSINCOS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#251;
     code    : #2#217#251;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSQRT;
     opcode  : A_FSQRT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#250;
     code    : #2#217#250;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FST;
     opcode  : A_FST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#217#130;
     code    : #1#217#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FST;
     opcode  : A_FST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#130;
     code    : #1#221#130;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FST;
     opcode  : A_FST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#208;
     code    : #1#221#8#208;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTCW;
     opcode  : A_FSTCW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#217#135;
     code    : #2#155#217#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FSTENV;
     opcode  : A_FSTENV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#217#134;
     code    : #2#155#217#134;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#217#131;
     code    : #1#217#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#221#131;
     code    : #1#221#131;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #1#219#135;
     code    : #1#219#135;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTP;
     opcode  : A_FSTP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#216;
     code    : #1#221#8#216;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTSW;
     opcode  : A_FSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#155#221#135;
     code    : #2#155#221#135;
     flags   : if_8086 or if_fpu or if_sw
     flags   : if_8086 or if_fpu or if_sw
   ),
   ),
   (
   (
     opcode  : A_FSTSW;
     opcode  : A_FSTSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#155#223#224;
     code    : #3#155#223#224;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSTSW;
     opcode  : A_FSTSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_ax,ot_none,ot_none);
+    optypes : (ot_reg_ax,ot_none,ot_none,ot_none);
     code    : #3#155#223#224;
     code    : #3#155#223#224;
     flags   : if_286 or if_fpu
     flags   : if_286 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#132;
     code    : #1#216#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#132;
     code    : #1#220#132;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#225;
     code    : #2#220#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#224;
     code    : #1#220#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#224;
     code    : #1#220#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#224;
     code    : #1#216#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUB;
     opcode  : A_FSUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#224;
     code    : #1#216#9#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBP;
     opcode  : A_FSUBP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#225;
     code    : #2#222#225;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBP;
     opcode  : A_FSUBP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#224;
     code    : #1#222#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBP;
     opcode  : A_FSUBP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#224;
     code    : #1#222#8#224;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits32,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits32,ot_none,ot_none,ot_none);
     code    : #1#216#133;
     code    : #1#216#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits64,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits64,ot_none,ot_none,ot_none);
     code    : #1#220#133;
     code    : #1#220#133;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#220#233;
     code    : #2#220#233;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg or ot_to,ot_none,ot_none);
+    optypes : (ot_fpureg or ot_to,ot_none,ot_none,ot_none);
     code    : #1#220#8#232;
     code    : #1#220#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#220#8#232;
     code    : #1#220#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#216#8#232;
     code    : #1#216#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBR;
     opcode  : A_FSUBR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#216#9#232;
     code    : #1#216#9#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBRP;
     opcode  : A_FSUBRP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#222#233;
     code    : #2#222#233;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBRP;
     opcode  : A_FSUBRP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#222#8#232;
     code    : #1#222#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FSUBRP;
     opcode  : A_FSUBRP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#222#8#232;
     code    : #1#222#8#232;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FTST;
     opcode  : A_FTST;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#228;
     code    : #2#217#228;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOM;
     opcode  : A_FUCOM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#221#225;
     code    : #2#221#225;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOM;
     opcode  : A_FUCOM;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#224;
     code    : #1#221#8#224;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOM;
     opcode  : A_FUCOM;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#221#9#224;
     code    : #1#221#9#224;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMI;
     opcode  : A_FUCOMI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#219#233;
     code    : #2#219#233;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMI;
     opcode  : A_FUCOMI;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#219#8#232;
     code    : #1#219#8#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMI;
     opcode  : A_FUCOMI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#219#9#232;
     code    : #1#219#9#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMIP;
     opcode  : A_FUCOMIP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#223#233;
     code    : #2#223#233;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMIP;
     opcode  : A_FUCOMIP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#223#8#232;
     code    : #1#223#8#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMIP;
     opcode  : A_FUCOMIP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#223#9#232;
     code    : #1#223#9#232;
     flags   : if_p6 or if_fpu
     flags   : if_p6 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMP;
     opcode  : A_FUCOMP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#221#233;
     code    : #2#221#233;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMP;
     opcode  : A_FUCOMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#221#8#232;
     code    : #1#221#8#232;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMP;
     opcode  : A_FUCOMP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#221#9#232;
     code    : #1#221#9#232;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FUCOMPP;
     opcode  : A_FUCOMPP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#218#233;
     code    : #2#218#233;
     flags   : if_386 or if_fpu
     flags   : if_386 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FWAIT;
     opcode  : A_FWAIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#155;
     code    : #1#155;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXAM;
     opcode  : A_FXAM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#229;
     code    : #2#217#229;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#201;
     code    : #2#217#201;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#217#8#200;
     code    : #1#217#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpureg,ot_fpu0,ot_none);
+    optypes : (ot_fpureg,ot_fpu0,ot_none,ot_none);
     code    : #1#217#8#200;
     code    : #1#217#8#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXCH;
     opcode  : A_FXCH;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_fpu0,ot_fpureg,ot_none);
+    optypes : (ot_fpu0,ot_fpureg,ot_none,ot_none);
     code    : #1#217#9#200;
     code    : #1#217#9#200;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXTRACT;
     opcode  : A_FXTRACT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#244;
     code    : #2#217#244;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FYL2X;
     opcode  : A_FYL2X;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#241;
     code    : #2#217#241;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FYL2XP1;
     opcode  : A_FYL2XP1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#217#249;
     code    : #2#217#249;
     flags   : if_8086 or if_fpu
     flags   : if_8086 or if_fpu
   ),
   ),
   (
   (
     opcode  : A_HLT;
     opcode  : A_HLT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#244;
     code    : #1#244;
     flags   : if_8086 or if_priv
     flags   : if_8086 or if_priv
   ),
   ),
   (
   (
     opcode  : A_IBTS;
     opcode  : A_IBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#167#65;
     code    : #208#2#15#167#65;
     flags   : if_386 or if_sm or if_undoc
     flags   : if_386 or if_sm or if_undoc
   ),
   ),
   (
   (
     opcode  : A_ICEBP;
     opcode  : A_ICEBP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_IDIV;
     opcode  : A_IDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#135;
     code    : #208#1#247#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IDIV;
     opcode  : A_IDIV;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#135;
     code    : #1#246#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#175#72;
     code    : #208#2#15#175#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#133;
     code    : #208#1#247#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed,ot_none);
     code    : #208#1#107#72#14;
     code    : #208#1#107#72#14;
     flags   : if_286 or if_sm
     flags   : if_286 or if_sm
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_immediate,ot_none);
     code    : #208#1#105#72#34;
     code    : #208#1#105#72#34;
     flags   : if_286 or if_sm or if_sd or if_ar2
     flags   : if_286 or if_sm or if_sd or if_ar2
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#107#64#13;
     code    : #208#1#107#64#13;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_immediate,ot_none);
+    optypes : (ot_reg32,ot_immediate,ot_none,ot_none);
     code    : #213#1#105#64#33;
     code    : #213#1#105#64#33;
     flags   : if_286 or if_sd
     flags   : if_286 or if_sd
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_immediate,ot_none);
+    optypes : (ot_reg64,ot_immediate,ot_none,ot_none);
     code    : #214#1#105#64#173;
     code    : #214#1#105#64#173;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg16,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed);
+    optypes : (ot_reg16,ot_rm_gpr,ot_immediate or ot_bits8 or ot_signed,ot_none);
     code    : #212#1#107#72#14;
     code    : #212#1#107#72#14;
     flags   : if_286 or if_sm
     flags   : if_286 or if_sm
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg16,ot_rm_gpr,ot_immediate);
+    optypes : (ot_reg16,ot_rm_gpr,ot_immediate,ot_none);
     code    : #212#1#105#72#26;
     code    : #212#1#105#72#26;
     flags   : if_286 or if_sm or if_sw or if_ar2
     flags   : if_286 or if_sm or if_sw or if_ar2
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_reg16,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #212#1#107#64#13;
     code    : #212#1#107#64#13;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_immediate,ot_none);
+    optypes : (ot_reg16,ot_immediate,ot_none,ot_none);
     code    : #212#1#105#64#25;
     code    : #212#1#105#64#25;
     flags   : if_286 or if_sw
     flags   : if_286 or if_sw
   ),
   ),
   (
   (
     opcode  : A_IMUL;
     opcode  : A_IMUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#133;
     code    : #1#246#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#228#21;
     code    : #1#228#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_reg_ax or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#229#21;
     code    : #208#1#229#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_reg_dx,ot_none);
+    optypes : (ot_reg_al,ot_reg_dx,ot_none,ot_none);
     code    : #1#236;
     code    : #1#236;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IN;
     opcode  : A_IN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax or ot_bits32,ot_reg_dx,ot_none);
+    optypes : (ot_reg_ax or ot_bits32,ot_reg_dx,ot_none,ot_none);
     code    : #208#1#237;
     code    : #208#1#237;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INC;
     opcode  : A_INC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#128;
     code    : #208#1#255#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INC;
     opcode  : A_INC;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#254#128;
     code    : #1#254#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INSB;
     opcode  : A_INSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#108;
     code    : #1#108;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_INSD;
     opcode  : A_INSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#109;
     code    : #213#1#109;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_INSW;
     opcode  : A_INSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#109;
     code    : #212#1#109;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_INT;
     opcode  : A_INT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#205#20;
     code    : #1#205#20;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_INT01;
     opcode  : A_INT01;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_INT1;
     opcode  : A_INT1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_INT03;
     opcode  : A_INT03;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#204;
     code    : #1#204;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INT3;
     opcode  : A_INT3;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#204;
     code    : #1#204;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_INVD;
     opcode  : A_INVD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#8;
     code    : #2#15#8;
     flags   : if_486 or if_priv
     flags   : if_486 or if_priv
   ),
   ),
   (
   (
     opcode  : A_INVLPG;
     opcode  : A_INVLPG;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#135;
     code    : #2#15#1#135;
     flags   : if_486 or if_priv
     flags   : if_486 or if_priv
   ),
   ),
   (
   (
     opcode  : A_IRET;
     opcode  : A_IRET;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#207;
     code    : #215#1#207;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_IRETD;
     opcode  : A_IRETD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#207;
     code    : #213#1#207;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_IRETW;
     opcode  : A_IRETW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#207;
     code    : #212#1#207;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JECXZ;
     opcode  : A_JECXZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #201#1#227#40;
     code    : #201#1#227#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_JRCXZ;
     opcode  : A_JRCXZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#227#40;
     code    : #1#227#40;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits8,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#235#40;
     code    : #1#235#40;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none,ot_none);
     code    : #208#1#233#52;
     code    : #208#1#233#52;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#132;
     code    : #208#1#255#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_short,ot_none,ot_none);
+    optypes : (ot_immediate or ot_short,ot_none,ot_none,ot_none);
     code    : #1#235#40;
     code    : #1#235#40;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_near,ot_none,ot_none);
+    optypes : (ot_immediate or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#233#52;
     code    : #208#1#233#52;
     flags   : if_8086 or if_pass2
     flags   : if_8086 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#132;
     code    : #208#1#255#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_JMP;
     opcode  : A_JMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#133;
     code    : #208#1#255#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LAHF;
     opcode  : A_LAHF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#159;
     code    : #1#159;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LAR;
     opcode  : A_LAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#2#72;
     code    : #208#2#15#2#72;
     flags   : if_286 or if_prot or if_sm
     flags   : if_286 or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_LCALL;
     opcode  : A_LCALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LCALL;
     opcode  : A_LCALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#130;
     code    : #208#1#255#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LCALL;
     opcode  : A_LCALL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#131;
     code    : #208#1#255#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LEA;
     opcode  : A_LEA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#1#141#72;
     code    : #208#1#141#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LEA;
     opcode  : A_LEA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#141#72;
     code    : #208#1#141#72;
     flags   : if_8086 or if_sd
     flags   : if_8086 or if_sd
   ),
   ),
   (
   (
     opcode  : A_LEAVE;
     opcode  : A_LEAVE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#201;
     code    : #1#201;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_LFS;
     opcode  : A_LFS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#2#15#180#72;
     code    : #208#2#15#180#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LGDT;
     opcode  : A_LGDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#130;
     code    : #2#15#1#130;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_LGS;
     opcode  : A_LGS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32,ot_memory,ot_none,ot_none);
     code    : #208#2#15#181#72;
     code    : #208#2#15#181#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LIDT;
     opcode  : A_LIDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#131;
     code    : #2#15#1#131;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_LJMP;
     opcode  : A_LJMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#255#133;
     code    : #208#1#255#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LJMP;
     opcode  : A_LJMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_far,ot_none,ot_none);
+    optypes : (ot_memory or ot_far,ot_none,ot_none,ot_none);
     code    : #208#1#255#133;
     code    : #208#1#255#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LJMP;
     opcode  : A_LJMP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_near,ot_none,ot_none);
+    optypes : (ot_memory or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#255#132;
     code    : #208#1#255#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LLDT;
     opcode  : A_LLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#130;
     code    : #2#15#0#130;
     flags   : if_286 or if_prot or if_priv
     flags   : if_286 or if_prot or if_priv
   ),
   ),
   (
   (
     opcode  : A_LMSW;
     opcode  : A_LMSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#1#134;
     code    : #2#15#1#134;
     flags   : if_286 or if_priv
     flags   : if_286 or if_priv
   ),
   ),
   (
   (
     opcode  : A_LOADALL;
     opcode  : A_LOADALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#7;
     code    : #2#15#7;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_LOADALL286;
     opcode  : A_LOADALL286;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#5;
     code    : #2#15#5;
     flags   : if_286 or if_undoc
     flags   : if_286 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_LOCK;
     opcode  : A_LOCK;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#240;
     code    : #1#240;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_LODSB;
     opcode  : A_LODSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#172;
     code    : #1#172;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LODSD;
     opcode  : A_LODSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#173;
     code    : #213#1#173;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LODSW;
     opcode  : A_LODSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#173;
     code    : #212#1#173;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOP;
     opcode  : A_LOOP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#226#40;
     code    : #202#1#226#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOP;
     opcode  : A_LOOP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#226#40;
     code    : #201#1#226#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPE;
     opcode  : A_LOOPE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#225#40;
     code    : #202#1#225#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPE;
     opcode  : A_LOOPE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#225#40;
     code    : #201#1#225#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPNE;
     opcode  : A_LOOPNE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#224#40;
     code    : #202#1#224#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPNE;
     opcode  : A_LOOPNE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#224#40;
     code    : #201#1#224#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPNZ;
     opcode  : A_LOOPNZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#224#40;
     code    : #202#1#224#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPNZ;
     opcode  : A_LOOPNZ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#224#40;
     code    : #201#1#224#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LOOPZ;
     opcode  : A_LOOPZ;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #202#1#225#40;
     code    : #202#1#225#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_LOOPZ;
     opcode  : A_LOOPZ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none);
+    optypes : (ot_immediate,ot_reg_ecx or ot_bits64,ot_none,ot_none);
     code    : #201#1#225#40;
     code    : #201#1#225#40;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LSL;
     opcode  : A_LSL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#2#15#3#72;
     code    : #208#2#15#3#72;
     flags   : if_286 or if_prot or if_sm
     flags   : if_286 or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_LSS;
     opcode  : A_LSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#2#15#178#72;
     code    : #208#2#15#178#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_LTR;
     opcode  : A_LTR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#131;
     code    : #2#15#0#131;
     flags   : if_286 or if_prot or if_priv
     flags   : if_286 or if_prot or if_priv
   ),
   ),
   (
   (
     opcode  : A_MONITOR;
     opcode  : A_MONITOR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#200;
     code    : #3#15#1#200;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_MONITOR;
     opcode  : A_MONITOR;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg_eax,ot_reg_ecx,ot_reg_edx);
+    optypes : (ot_reg_eax,ot_reg_ecx,ot_reg_edx,ot_none);
     code    : #3#15#1#200;
     code    : #3#15#1#200;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_ax,ot_none);
+    optypes : (ot_mem_offs,ot_reg_ax,ot_none,ot_none);
     code    : #212#1#163#36;
     code    : #212#1#163#36;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_eax,ot_none);
+    optypes : (ot_mem_offs,ot_reg_eax,ot_none,ot_none);
     code    : #213#1#163#36;
     code    : #213#1#163#36;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_rax,ot_none);
+    optypes : (ot_mem_offs,ot_reg_rax,ot_none,ot_none);
     code    : #214#1#163#36;
     code    : #214#1#163#36;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#137#65;
     code    : #208#1#137#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_mem_offs,ot_none);
+    optypes : (ot_reg_ax,ot_mem_offs,ot_none,ot_none);
     code    : #212#1#161#37;
     code    : #212#1#161#37;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_mem_offs,ot_none);
+    optypes : (ot_reg_eax,ot_mem_offs,ot_none,ot_none);
     code    : #213#1#161#37;
     code    : #213#1#161#37;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_mem_offs,ot_none);
+    optypes : (ot_reg_rax,ot_mem_offs,ot_none,ot_none);
     code    : #214#1#161#37;
     code    : #214#1#161#37;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#139#72;
     code    : #208#1#139#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_immediate,ot_none);
+    optypes : (ot_reg32,ot_immediate,ot_none,ot_none);
     code    : #213#8#184#33;
     code    : #213#8#184#33;
     flags   : if_386 or if_sd
     flags   : if_386 or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_immediate,ot_none);
+    optypes : (ot_reg64,ot_immediate,ot_none,ot_none);
     code    : #214#8#184#45;
     code    : #214#8#184#45;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#199#128#33;
     code    : #213#1#199#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#199#128#173;
     code    : #214#1#199#128#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_immediate,ot_none);
+    optypes : (ot_reg16,ot_immediate,ot_none,ot_none);
     code    : #212#8#184#25;
     code    : #212#8#184#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#199#128#25;
     code    : #212#1#199#128#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_al,ot_none);
+    optypes : (ot_mem_offs,ot_reg_al,ot_none,ot_none);
     code    : #1#162#36;
     code    : #1#162#36;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#136#65;
     code    : #1#136#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_mem_offs,ot_none);
+    optypes : (ot_reg_al,ot_mem_offs,ot_none,ot_none);
     code    : #1#160#37;
     code    : #1#160#37;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#138#72;
     code    : #1#138#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_immediate,ot_none);
+    optypes : (ot_reg8,ot_immediate,ot_none,ot_none);
     code    : #8#176#17;
     code    : #8#176#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#198#128#17;
     code    : #1#198#128#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_cs,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_cs,ot_none,ot_none);
     code    : #208#1#140#129;
     code    : #208#1#140#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_dess,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_dess,ot_none,ot_none);
     code    : #208#1#140#65;
     code    : #208#1#140#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_fsgs,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32,ot_reg_fsgs,ot_none,ot_none);
     code    : #208#1#140#65;
     code    : #208#1#140#65;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dess,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none);
+    optypes : (ot_reg_dess,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none,ot_none);
     code    : #209#1#142#72;
     code    : #209#1#142#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_fsgs,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none);
+    optypes : (ot_reg_fsgs,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none,ot_none);
     code    : #209#1#142#72;
     code    : #209#1#142#72;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_reg_cr4,ot_none);
+    optypes : (ot_reg64,ot_reg_cr4,ot_none,ot_none);
     code    : #2#15#32#132;
     code    : #2#15#32#132;
     flags   : if_pent or if_priv or if_x86_64
     flags   : if_pent or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_reg_creg,ot_none);
+    optypes : (ot_reg64,ot_reg_creg,ot_none,ot_none);
     code    : #2#15#32#65;
     code    : #2#15#32#65;
     flags   : if_386 or if_priv or if_x86_64
     flags   : if_386 or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_reg_dreg,ot_none);
+    optypes : (ot_reg64,ot_reg_dreg,ot_none,ot_none);
     code    : #2#15#33#65;
     code    : #2#15#33#65;
     flags   : if_386 or if_priv or if_x86_64
     flags   : if_386 or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_reg_treg,ot_none);
+    optypes : (ot_reg64,ot_reg_treg,ot_none,ot_none);
     code    : #2#15#36#65;
     code    : #2#15#36#65;
     flags   : if_386 or if_priv or if_x86_64
     flags   : if_386 or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_cr4,ot_reg64,ot_none);
+    optypes : (ot_reg_cr4,ot_reg64,ot_none,ot_none);
     code    : #2#15#34#140;
     code    : #2#15#34#140;
     flags   : if_pent or if_priv or if_x86_64
     flags   : if_pent or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_creg,ot_reg64,ot_none);
+    optypes : (ot_reg_creg,ot_reg64,ot_none,ot_none);
     code    : #2#15#34#72;
     code    : #2#15#34#72;
     flags   : if_386 or if_priv or if_x86_64
     flags   : if_386 or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dreg,ot_reg64,ot_none);
+    optypes : (ot_reg_dreg,ot_reg64,ot_none,ot_none);
     code    : #2#15#35#72;
     code    : #2#15#35#72;
     flags   : if_386 or if_priv or if_x86_64
     flags   : if_386 or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOV;
     opcode  : A_MOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_treg,ot_reg64,ot_none);
+    optypes : (ot_reg_treg,ot_reg64,ot_none,ot_none);
     code    : #2#15#38#72;
     code    : #2#15#38#72;
     flags   : if_386 or if_priv or if_x86_64
     flags   : if_386 or if_priv or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_rm_gpr or ot_bits32,ot_none);
+    optypes : (ot_mmxreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
     code    : #2#15#110#72;
     code    : #2#15#110#72;
     flags   : if_pent or if_mmx or if_sd
     flags   : if_pent or if_mmx or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_mmxreg,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#126#65;
     code    : #2#15#126#65;
     flags   : if_pent or if_mmx or if_sd
     flags   : if_pent or if_mmx or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none);
+    optypes : (ot_xmmreg,ot_rm_gpr or ot_bits32,ot_none,ot_none);
     code    : #241#2#15#110#72;
     code    : #241#2#15#110#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVD;
     opcode  : A_MOVD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#126#65;
     code    : #241#2#15#126#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#111#72;
     code    : #2#15#111#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxrm,ot_mmxreg,ot_none);
+    optypes : (ot_mmxrm,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#127#65;
     code    : #2#15#127#65;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_rm_gpr or ot_bits64,ot_none);
+    optypes : (ot_mmxreg,ot_rm_gpr or ot_bits64,ot_none,ot_none);
     code    : #214#2#15#110#72;
     code    : #214#2#15#110#72;
     flags   : if_x86_64 or if_mmx
     flags   : if_x86_64 or if_mmx
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_mmxreg,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_mmxreg,ot_none,ot_none);
     code    : #214#2#15#126#65;
     code    : #214#2#15#126#65;
     flags   : if_x86_64 or if_mmx
     flags   : if_x86_64 or if_mmx
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#126#72;
     code    : #219#2#15#126#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#214#65;
     code    : #241#2#15#214#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_reg64,ot_none);
+    optypes : (ot_xmmreg,ot_reg64,ot_none,ot_none);
     code    : #241#214#2#15#110#72;
     code    : #241#214#2#15#110#72;
     flags   : if_willamette or if_sse2 or if_x86_64
     flags   : if_willamette or if_sse2 or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVQ;
     opcode  : A_MOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_xmmreg,ot_none);
+    optypes : (ot_reg64,ot_xmmreg,ot_none,ot_none);
     code    : #241#214#2#15#126#65;
     code    : #241#214#2#15#126#65;
     flags   : if_willamette or if_sse2 or if_x86_64
     flags   : if_willamette or if_sse2 or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVSB;
     opcode  : A_MOVSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#164;
     code    : #1#164;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOVSD;
     opcode  : A_MOVSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#165;
     code    : #213#1#165;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVSD;
     opcode  : A_MOVSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#16#72;
     code    : #220#2#15#16#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVSD;
     opcode  : A_MOVSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #220#2#15#17#65;
     code    : #220#2#15#17#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVSQ;
     opcode  : A_MOVSQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#165;
     code    : #214#1#165;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVSW;
     opcode  : A_MOVSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#165;
     code    : #212#1#165;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MOVSX;
     opcode  : A_MOVSX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none,ot_none);
     code    : #208#2#15#191#72;
     code    : #208#2#15#191#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVSX;
     opcode  : A_MOVSX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #208#2#15#190#72;
     code    : #208#2#15#190#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVZX;
     opcode  : A_MOVZX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr or ot_bits16,ot_none,ot_none);
     code    : #208#2#15#183#72;
     code    : #208#2#15#183#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MOVZX;
     opcode  : A_MOVZX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #208#2#15#182#72;
     code    : #208#2#15#182#72;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_MUL;
     opcode  : A_MUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#132;
     code    : #208#1#247#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MUL;
     opcode  : A_MUL;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#132;
     code    : #1#246#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_MWAIT;
     opcode  : A_MWAIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#201;
     code    : #3#15#1#201;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_MWAIT;
     opcode  : A_MWAIT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_reg_ecx,ot_none);
+    optypes : (ot_reg_eax,ot_reg_ecx,ot_none,ot_none);
     code    : #3#15#1#201;
     code    : #3#15#1#201;
     flags   : if_prescott
     flags   : if_prescott
   ),
   ),
   (
   (
     opcode  : A_NEG;
     opcode  : A_NEG;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#131;
     code    : #208#1#247#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NEG;
     opcode  : A_NEG;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#131;
     code    : #1#246#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NOP;
     opcode  : A_NOP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#144;
     code    : #1#144;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NOT;
     opcode  : A_NOT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#1#247#130;
     code    : #208#1#247#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_NOT;
     opcode  : A_NOT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#246#130;
     code    : #1#246#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#9#65;
     code    : #208#1#9#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#11#72;
     code    : #208#1#11#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#8#65;
     code    : #1#8#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#10#72;
     code    : #1#10#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#129#13;
     code    : #208#1#131#129#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#13#33;
     code    : #213#1#13#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#13#173;
     code    : #214#1#13#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#129#129#33;
     code    : #213#1#129#129#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#129#173;
     code    : #214#1#129#129#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#13#25;
     code    : #212#1#13#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#129#25;
     code    : #212#1#129#129#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#12#17;
     code    : #1#12#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OR;
     opcode  : A_OR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#129#17;
     code    : #1#128#129#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_al,ot_none);
+    optypes : (ot_immediate,ot_reg_al,ot_none,ot_none);
     code    : #1#230#20;
     code    : #1#230#20;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_ax,ot_none);
+    optypes : (ot_immediate,ot_reg_ax,ot_none,ot_none);
     code    : #212#1#231#20;
     code    : #212#1#231#20;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_immediate,ot_reg_eax,ot_none);
+    optypes : (ot_immediate,ot_reg_eax,ot_none,ot_none);
     code    : #213#1#231#20;
     code    : #213#1#231#20;
     flags   : if_386 or if_sb
     flags   : if_386 or if_sb
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dx,ot_reg_al,ot_none);
+    optypes : (ot_reg_dx,ot_reg_al,ot_none,ot_none);
     code    : #1#238;
     code    : #1#238;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dx,ot_reg_ax,ot_none);
+    optypes : (ot_reg_dx,ot_reg_ax,ot_none,ot_none);
     code    : #212#1#239;
     code    : #212#1#239;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_OUT;
     opcode  : A_OUT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_dx,ot_reg_eax,ot_none);
+    optypes : (ot_reg_dx,ot_reg_eax,ot_none,ot_none);
     code    : #213#1#239;
     code    : #213#1#239;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_OUTSB;
     opcode  : A_OUTSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#110;
     code    : #1#110;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_OUTSD;
     opcode  : A_OUTSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#111;
     code    : #213#1#111;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_OUTSW;
     opcode  : A_OUTSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#111;
     code    : #212#1#111;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_PACKSSDW;
     opcode  : A_PACKSSDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#107#72;
     code    : #2#15#107#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKSSDW;
     opcode  : A_PACKSSDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#107#72;
     code    : #241#2#15#107#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKSSWB;
     opcode  : A_PACKSSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#99#72;
     code    : #2#15#99#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKSSWB;
     opcode  : A_PACKSSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#99#72;
     code    : #241#2#15#99#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKUSWB;
     opcode  : A_PACKUSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#103#72;
     code    : #2#15#103#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PACKUSWB;
     opcode  : A_PACKUSWB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#103#72;
     code    : #241#2#15#103#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDB;
     opcode  : A_PADDB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#252#72;
     code    : #2#15#252#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDB;
     opcode  : A_PADDB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#252#72;
     code    : #241#2#15#252#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDD;
     opcode  : A_PADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#254#72;
     code    : #2#15#254#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDD;
     opcode  : A_PADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#254#72;
     code    : #241#2#15#254#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSB;
     opcode  : A_PADDSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#236#72;
     code    : #2#15#236#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSB;
     opcode  : A_PADDSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#236#72;
     code    : #241#2#15#236#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSIW;
     opcode  : A_PADDSIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#81#72;
     code    : #2#15#81#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PADDSW;
     opcode  : A_PADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#237#72;
     code    : #2#15#237#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDSW;
     opcode  : A_PADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#237#72;
     code    : #241#2#15#237#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSB;
     opcode  : A_PADDUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#220#72;
     code    : #2#15#220#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSB;
     opcode  : A_PADDUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#220#72;
     code    : #241#2#15#220#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSW;
     opcode  : A_PADDUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#221#72;
     code    : #2#15#221#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDUSW;
     opcode  : A_PADDUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#221#72;
     code    : #241#2#15#221#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDW;
     opcode  : A_PADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#253#72;
     code    : #2#15#253#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDW;
     opcode  : A_PADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#253#72;
     code    : #241#2#15#253#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAND;
     opcode  : A_PAND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#219#72;
     code    : #2#15#219#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAND;
     opcode  : A_PAND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#219#72;
     code    : #241#2#15#219#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PANDN;
     opcode  : A_PANDN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#223#72;
     code    : #2#15#223#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PANDN;
     opcode  : A_PANDN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#223#72;
     code    : #241#2#15#223#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVEB;
     opcode  : A_PAVEB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#80#72;
     code    : #2#15#80#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PAVGUSB;
     opcode  : A_PAVGUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#191;
     code    : #2#15#15#72#1#191;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQB;
     opcode  : A_PCMPEQB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#116#72;
     code    : #2#15#116#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQB;
     opcode  : A_PCMPEQB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#116#72;
     code    : #241#2#15#116#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQD;
     opcode  : A_PCMPEQD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#118#72;
     code    : #2#15#118#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQD;
     opcode  : A_PCMPEQD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#118#72;
     code    : #241#2#15#118#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQW;
     opcode  : A_PCMPEQW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#117#72;
     code    : #2#15#117#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPEQW;
     opcode  : A_PCMPEQW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#117#72;
     code    : #241#2#15#117#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTB;
     opcode  : A_PCMPGTB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#100#72;
     code    : #2#15#100#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTB;
     opcode  : A_PCMPGTB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#100#72;
     code    : #241#2#15#100#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTD;
     opcode  : A_PCMPGTD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#102#72;
     code    : #2#15#102#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTD;
     opcode  : A_PCMPGTD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#102#72;
     code    : #241#2#15#102#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTW;
     opcode  : A_PCMPGTW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#101#72;
     code    : #2#15#101#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PCMPGTW;
     opcode  : A_PCMPGTW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#101#72;
     code    : #241#2#15#101#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PDISTIB;
     opcode  : A_PDISTIB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#84#72;
     code    : #2#15#84#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PF2ID;
     opcode  : A_PF2ID;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#29;
     code    : #2#15#15#72#1#29;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFACC;
     opcode  : A_PFACC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#174;
     code    : #2#15#15#72#1#174;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFADD;
     opcode  : A_PFADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#158;
     code    : #2#15#15#72#1#158;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFCMPEQ;
     opcode  : A_PFCMPEQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#176;
     code    : #2#15#15#72#1#176;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFCMPGE;
     opcode  : A_PFCMPGE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#144;
     code    : #2#15#15#72#1#144;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFCMPGT;
     opcode  : A_PFCMPGT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#160;
     code    : #2#15#15#72#1#160;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFMAX;
     opcode  : A_PFMAX;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#164;
     code    : #2#15#15#72#1#164;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFMIN;
     opcode  : A_PFMIN;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#148;
     code    : #2#15#15#72#1#148;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFMUL;
     opcode  : A_PFMUL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#180;
     code    : #2#15#15#72#1#180;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRCP;
     opcode  : A_PFRCP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#150;
     code    : #2#15#15#72#1#150;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRCPIT1;
     opcode  : A_PFRCPIT1;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#166;
     code    : #2#15#15#72#1#166;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRCPIT2;
     opcode  : A_PFRCPIT2;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#182;
     code    : #2#15#15#72#1#182;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRSQIT1;
     opcode  : A_PFRSQIT1;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#167;
     code    : #2#15#15#72#1#167;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFRSQRT;
     opcode  : A_PFRSQRT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#151;
     code    : #2#15#15#72#1#151;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFSUB;
     opcode  : A_PFSUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#154;
     code    : #2#15#15#72#1#154;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFSUBR;
     opcode  : A_PFSUBR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#170;
     code    : #2#15#15#72#1#170;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PI2FD;
     opcode  : A_PI2FD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#13;
     code    : #2#15#15#72#1#13;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMACHRIW;
     opcode  : A_PMACHRIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#94#72;
     code    : #2#15#94#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMADDWD;
     opcode  : A_PMADDWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#245#72;
     code    : #2#15#245#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMADDWD;
     opcode  : A_PMADDWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#245#72;
     code    : #241#2#15#245#72;
     flags   : if_willamette or if_sm or if_sse2
     flags   : if_willamette or if_sm or if_sse2
   ),
   ),
   (
   (
     opcode  : A_PMAGW;
     opcode  : A_PMAGW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#82#72;
     code    : #2#15#82#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMULHRIW;
     opcode  : A_PMULHRIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#93#72;
     code    : #2#15#93#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMULHRWA;
     opcode  : A_PMULHRWA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#183;
     code    : #2#15#15#72#1#183;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHRWC;
     opcode  : A_PMULHRWC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#89#72;
     code    : #2#15#89#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMULHW;
     opcode  : A_PMULHW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#229#72;
     code    : #2#15#229#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHW;
     opcode  : A_PMULHW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#229#72;
     code    : #241#2#15#229#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULLW;
     opcode  : A_PMULLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#213#72;
     code    : #2#15#213#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULLW;
     opcode  : A_PMULLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#213#72;
     code    : #241#2#15#213#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMVGEZB;
     opcode  : A_PMVGEZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#92#72;
     code    : #2#15#92#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMVLZB;
     opcode  : A_PMVLZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#91#72;
     code    : #2#15#91#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMVNZB;
     opcode  : A_PMVNZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#90#72;
     code    : #2#15#90#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PMVZB;
     opcode  : A_PMVZB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#88#72;
     code    : #2#15#88#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #212#8#88;
     code    : #212#8#88;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg64,ot_none,ot_none);
+    optypes : (ot_reg64,ot_none,ot_none,ot_none);
     code    : #221#8#88;
     code    : #221#8#88;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#143#128;
     code    : #212#1#143#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_none,ot_none,ot_none);
     code    : #221#1#143#128;
     code    : #221#1#143#128;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_cs,ot_none,ot_none);
+    optypes : (ot_reg_cs,ot_none,ot_none,ot_none);
     code    : #1#15;
     code    : #1#15;
     flags   : if_8086 or if_undoc
     flags   : if_8086 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_POP;
     opcode  : A_POP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg_fsgs,ot_none,ot_none);
+    optypes : (ot_reg_fsgs,ot_none,ot_none,ot_none);
     code    : #1#15#5#221;
     code    : #1#15#5#221;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_POPF;
     opcode  : A_POPF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#157;
     code    : #214#1#157;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_POPFW;
     opcode  : A_POPFW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#157;
     code    : #1#157;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_POPFQ;
     opcode  : A_POPFQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#157;
     code    : #214#1#157;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_POR;
     opcode  : A_POR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#235#72;
     code    : #2#15#235#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_POR;
     opcode  : A_POR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#235#72;
     code    : #241#2#15#235#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PREFETCH;
     opcode  : A_PREFETCH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#13#128;
     code    : #2#15#13#128;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PREFETCHW;
     opcode  : A_PREFETCHW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#13#129;
     code    : #2#15#13#129;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#242#72;
     code    : #2#15#242#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#114#134#21;
     code    : #2#15#114#134#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#242#72;
     code    : #241#2#15#242#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLD;
     opcode  : A_PSLLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#114#134#21;
     code    : #241#2#15#114#134#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLDQ;
     opcode  : A_PSLLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#135#21;
     code    : #241#2#15#115#135#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#243#72;
     code    : #2#15#243#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#115#134#21;
     code    : #2#15#115#134#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#243#72;
     code    : #241#2#15#243#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLQ;
     opcode  : A_PSLLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#134#21;
     code    : #241#2#15#115#134#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#241#72;
     code    : #2#15#241#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#113#134#21;
     code    : #2#15#113#134#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#241#72;
     code    : #241#2#15#241#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSLLW;
     opcode  : A_PSLLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#113#134#21;
     code    : #241#2#15#113#134#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#226#72;
     code    : #2#15#226#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#114#132#21;
     code    : #2#15#114#132#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#226#72;
     code    : #241#2#15#226#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAD;
     opcode  : A_PSRAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#114#132#21;
     code    : #241#2#15#114#132#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#225#72;
     code    : #2#15#225#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#113#132#21;
     code    : #2#15#113#132#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#225#72;
     code    : #241#2#15#225#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRAW;
     opcode  : A_PSRAW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#113#132#21;
     code    : #241#2#15#113#132#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#210#72;
     code    : #2#15#210#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#114#130#21;
     code    : #2#15#114#130#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#210#72;
     code    : #241#2#15#210#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLD;
     opcode  : A_PSRLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#114#130#21;
     code    : #241#2#15#114#130#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#211#72;
     code    : #2#15#211#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#115#130#21;
     code    : #2#15#115#130#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#211#72;
     code    : #241#2#15#211#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLQ;
     opcode  : A_PSRLQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#130#21;
     code    : #241#2#15#115#130#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#209#72;
     code    : #2#15#209#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_immediate,ot_none);
+    optypes : (ot_mmxreg,ot_immediate,ot_none,ot_none);
     code    : #2#15#113#130#21;
     code    : #2#15#113#130#21;
     flags   : if_pent or if_mmx or if_sb or if_ar1
     flags   : if_pent or if_mmx or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#209#72;
     code    : #241#2#15#209#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSRLW;
     opcode  : A_PSRLW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#113#130#21;
     code    : #241#2#15#113#130#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSUBB;
     opcode  : A_PSUBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#248#72;
     code    : #2#15#248#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBB;
     opcode  : A_PSUBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#248#72;
     code    : #241#2#15#248#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBD;
     opcode  : A_PSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#250#72;
     code    : #2#15#250#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBD;
     opcode  : A_PSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#250#72;
     code    : #241#2#15#250#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSB;
     opcode  : A_PSUBSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#232#72;
     code    : #2#15#232#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSB;
     opcode  : A_PSUBSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#232#72;
     code    : #241#2#15#232#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSIW;
     opcode  : A_PSUBSIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #2#15#85#72;
     code    : #2#15#85#72;
     flags   : if_pent or if_mmx or if_sm or if_cyrix
     flags   : if_pent or if_mmx or if_sm or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PSUBSIW;
     opcode  : A_PSUBSIW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxreg,ot_none);
+    optypes : (ot_mmxreg,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#85#72;
     code    : #2#15#85#72;
     flags   : if_pent or if_mmx or if_cyrix
     flags   : if_pent or if_mmx or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_PSUBSW;
     opcode  : A_PSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#233#72;
     code    : #2#15#233#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBSW;
     opcode  : A_PSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#233#72;
     code    : #241#2#15#233#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSB;
     opcode  : A_PSUBUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#216#72;
     code    : #2#15#216#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSB;
     opcode  : A_PSUBUSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#216#72;
     code    : #241#2#15#216#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSW;
     opcode  : A_PSUBUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#217#72;
     code    : #2#15#217#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBUSW;
     opcode  : A_PSUBUSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#217#72;
     code    : #241#2#15#217#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBW;
     opcode  : A_PSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#249#72;
     code    : #2#15#249#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBW;
     opcode  : A_PSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#249#72;
     code    : #241#2#15#249#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHBW;
     opcode  : A_PUNPCKHBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#104#72;
     code    : #2#15#104#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHBW;
     opcode  : A_PUNPCKHBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#104#72;
     code    : #241#2#15#104#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHDQ;
     opcode  : A_PUNPCKHDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#106#72;
     code    : #2#15#106#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHDQ;
     opcode  : A_PUNPCKHDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#106#72;
     code    : #241#2#15#106#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHWD;
     opcode  : A_PUNPCKHWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#105#72;
     code    : #2#15#105#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHWD;
     opcode  : A_PUNPCKHWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#105#72;
     code    : #241#2#15#105#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLBW;
     opcode  : A_PUNPCKLBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#96#72;
     code    : #2#15#96#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLBW;
     opcode  : A_PUNPCKLBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#96#72;
     code    : #241#2#15#96#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLDQ;
     opcode  : A_PUNPCKLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#98#72;
     code    : #2#15#98#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLDQ;
     opcode  : A_PUNPCKLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#98#72;
     code    : #241#2#15#98#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLWD;
     opcode  : A_PUNPCKLWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#97#72;
     code    : #2#15#97#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLWD;
     opcode  : A_PUNPCKLWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#97#72;
     code    : #241#2#15#97#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #212#8#80;
     code    : #212#8#80;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg64,ot_none,ot_none);
+    optypes : (ot_reg64,ot_none,ot_none,ot_none);
     code    : #221#8#80;
     code    : #221#8#80;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#255#134;
     code    : #212#1#255#134;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_none,ot_none,ot_none);
     code    : #221#1#255#134;
     code    : #221#1#255#134;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits32,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits32,ot_none,ot_none,ot_none);
     code    : #213#1#104#32#221;
     code    : #213#1#104#32#221;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits16,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits16,ot_none,ot_none,ot_none);
     code    : #212#1#104#24#221;
     code    : #212#1#104#24#221;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_PUSH;
     opcode  : A_PUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none,ot_none);
     code    : #1#106#12#221;
     code    : #1#106#12#221;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_PUSHF;
     opcode  : A_PUSHF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #215#1#156;
     code    : #215#1#156;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_PUSHFW;
     opcode  : A_PUSHFW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#156;
     code    : #212#1#156;
     flags   : if_186
     flags   : if_186
   ),
   ),
   (
   (
     opcode  : A_PUSHFQ;
     opcode  : A_PUSHFQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#156;
     code    : #214#1#156;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_PXOR;
     opcode  : A_PXOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#239#72;
     code    : #2#15#239#72;
     flags   : if_pent or if_mmx or if_sm
     flags   : if_pent or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PXOR;
     opcode  : A_PXOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#239#72;
     code    : #241#2#15#239#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#130;
     code    : #208#1#209#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#130;
     code    : #208#1#211#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#130#21;
     code    : #208#1#193#130#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#130;
     code    : #1#208#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#130;
     code    : #1#210#130;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCL;
     opcode  : A_RCL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#130#21;
     code    : #1#192#130#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#131;
     code    : #208#1#209#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#131;
     code    : #208#1#211#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#131#21;
     code    : #208#1#193#131#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#131;
     code    : #1#208#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#131;
     code    : #1#210#131;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RCR;
     opcode  : A_RCR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#131#21;
     code    : #1#192#131#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RDSHR;
     opcode  : A_RDSHR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#54;
     code    : #2#15#54;
     flags   : if_p6 or if_cyrix or if_smm
     flags   : if_p6 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_RDMSR;
     opcode  : A_RDMSR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#50;
     code    : #2#15#50;
     flags   : if_pent or if_priv
     flags   : if_pent or if_priv
   ),
   ),
   (
   (
     opcode  : A_RDPMC;
     opcode  : A_RDPMC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#51;
     code    : #2#15#51;
     flags   : if_p6
     flags   : if_p6
   ),
   ),
   (
   (
     opcode  : A_RDTSC;
     opcode  : A_RDTSC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#49;
     code    : #2#15#49;
     flags   : if_pent
     flags   : if_pent
   ),
   ),
   (
   (
     opcode  : A_REP;
     opcode  : A_REP;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#243;
     code    : #1#243;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPE;
     opcode  : A_REPE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#243;
     code    : #1#243;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPNE;
     opcode  : A_REPNE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#242;
     code    : #1#242;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPNZ;
     opcode  : A_REPNZ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#242;
     code    : #1#242;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_REPZ;
     opcode  : A_REPZ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#243;
     code    : #1#243;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_RET;
     opcode  : A_RET;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#195;
     code    : #1#195;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RET;
     opcode  : A_RET;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#194#24;
     code    : #1#194#24;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_RETF;
     opcode  : A_RETF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#203;
     code    : #1#203;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RETF;
     opcode  : A_RETF;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#202#24;
     code    : #1#202#24;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_RETN;
     opcode  : A_RETN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#195;
     code    : #1#195;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_RETN;
     opcode  : A_RETN;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate,ot_none,ot_none);
+    optypes : (ot_immediate,ot_none,ot_none,ot_none);
     code    : #1#194#24;
     code    : #1#194#24;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#128;
     code    : #208#1#209#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#128;
     code    : #208#1#211#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#128#21;
     code    : #208#1#193#128#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#128;
     code    : #1#208#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#128;
     code    : #1#210#128;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROL;
     opcode  : A_ROL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#128#21;
     code    : #1#192#128#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#129;
     code    : #208#1#209#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#129;
     code    : #208#1#211#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#129#21;
     code    : #208#1#193#129#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#129;
     code    : #1#208#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#129;
     code    : #1#210#129;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_ROR;
     opcode  : A_ROR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#129#21;
     code    : #1#192#129#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_RSDC;
     opcode  : A_RSDC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_sreg,ot_memory or ot_bits80,ot_none);
+    optypes : (ot_reg_sreg,ot_memory or ot_bits80,ot_none,ot_none);
     code    : #2#15#121#65;
     code    : #2#15#121#65;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_RSLDT;
     opcode  : A_RSLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #2#15#123#128;
     code    : #2#15#123#128;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_RSM;
     opcode  : A_RSM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#170;
     code    : #2#15#170;
     flags   : if_pent or if_smm
     flags   : if_pent or if_smm
   ),
   ),
   (
   (
     opcode  : A_SAHF;
     opcode  : A_SAHF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#158;
     code    : #1#158;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#132;
     code    : #208#1#209#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#132;
     code    : #208#1#211#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#132#21;
     code    : #208#1#193#132#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#132;
     code    : #1#208#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#132;
     code    : #1#210#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAL;
     opcode  : A_SAL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#132#21;
     code    : #1#192#132#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#135;
     code    : #208#1#209#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#135;
     code    : #208#1#211#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#135#21;
     code    : #208#1#193#135#21;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#135;
     code    : #1#208#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#135;
     code    : #1#210#135;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SAR;
     opcode  : A_SAR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#135#21;
     code    : #1#192#135#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#25#65;
     code    : #208#1#25#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#27#72;
     code    : #208#1#27#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#131#13;
     code    : #208#1#131#131#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#24#65;
     code    : #1#24#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#26#72;
     code    : #1#26#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#29#33;
     code    : #213#1#29#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#29#173;
     code    : #214#1#29#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#131#33;
     code    : #208#1#129#131#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#131#173;
     code    : #214#1#129#131#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#29#25;
     code    : #212#1#29#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#131#25;
     code    : #208#1#129#131#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#28#17;
     code    : #1#28#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SBB;
     opcode  : A_SBB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#131#17;
     code    : #1#128#131#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SCASB;
     opcode  : A_SCASB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#1#174;
     code    : #218#1#174;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SCASD;
     opcode  : A_SCASD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#213#1#175;
     code    : #218#213#1#175;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_SCASQ;
     opcode  : A_SCASQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#214#1#175;
     code    : #218#214#1#175;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_SCASW;
     opcode  : A_SCASW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #218#212#1#175;
     code    : #218#212#1#175;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SEGCS;
     opcode  : A_SEGCS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#46;
     code    : #1#46;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGDS;
     opcode  : A_SEGDS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#62;
     code    : #1#62;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGES;
     opcode  : A_SEGES;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#38;
     code    : #1#38;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGFS;
     opcode  : A_SEGFS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#100;
     code    : #1#100;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGGS;
     opcode  : A_SEGGS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#101;
     code    : #1#101;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SEGSS;
     opcode  : A_SEGSS;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#54;
     code    : #1#54;
     flags   : if_8086 or if_pre
     flags   : if_8086 or if_pre
   ),
   ),
   (
   (
     opcode  : A_SGDT;
     opcode  : A_SGDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#128;
     code    : #2#15#1#128;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#132;
     code    : #208#1#209#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#132;
     code    : #208#1#211#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#132#21;
     code    : #208#1#193#132#21;
     flags   : if_186 or if_sw
     flags   : if_186 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#132;
     code    : #1#208#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#132;
     code    : #1#210#132;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHL;
     opcode  : A_SHL;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#132#21;
     code    : #1#192#132#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SHLD;
     opcode  : A_SHLD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
     code    : #209#2#15#164#65#22;
     code    : #209#2#15#164#65#22;
     flags   : if_386 or if_sm2 or if_sb or if_ar2
     flags   : if_386 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SHLD;
     opcode  : A_SHLD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
     code    : #209#2#15#165#65;
     code    : #209#2#15#165#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_unity,ot_none,ot_none);
     code    : #208#1#209#133;
     code    : #208#1#209#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none,ot_none);
     code    : #208#1#211#133;
     code    : #208#1#211#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #208#1#193#133#21;
     code    : #208#1#193#133#21;
     flags   : if_186 or if_sw
     flags   : if_186 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_unity,ot_none,ot_none);
     code    : #1#208#133;
     code    : #1#208#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg_cl,ot_none,ot_none);
     code    : #1#210#133;
     code    : #1#210#133;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SHR;
     opcode  : A_SHR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#192#133#21;
     code    : #1#192#133#21;
     flags   : if_186 or if_sb
     flags   : if_186 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SHRD;
     opcode  : A_SHRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_immediate,ot_none);
     code    : #209#2#15#172#65#22;
     code    : #209#2#15#172#65#22;
     flags   : if_386 or if_sm2 or if_sb or if_ar2
     flags   : if_386 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SHRD;
     opcode  : A_SHRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_reg16 or ot_bits32 or ot_bits64,ot_reg_cl,ot_none);
     code    : #209#2#15#173#65;
     code    : #209#2#15#173#65;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SIDT;
     opcode  : A_SIDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#1#129;
     code    : #2#15#1#129;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SLDT;
     opcode  : A_SLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#128;
     code    : #2#15#0#128;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SLDT;
     opcode  : A_SLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#2#15#0#128;
     code    : #208#2#15#0#128;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_SMI;
     opcode  : A_SMI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#241;
     code    : #1#241;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_SMINT;
     opcode  : A_SMINT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#56;
     code    : #2#15#56;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_SMINTOLD;
     opcode  : A_SMINTOLD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#126;
     code    : #2#15#126;
     flags   : if_486 or if_cyrix
     flags   : if_486 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_SMSW;
     opcode  : A_SMSW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#2#15#1#132;
     code    : #208#2#15#1#132;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_STC;
     opcode  : A_STC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#249;
     code    : #1#249;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STD;
     opcode  : A_STD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#253;
     code    : #1#253;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STI;
     opcode  : A_STI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#251;
     code    : #1#251;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STOSB;
     opcode  : A_STOSB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#170;
     code    : #1#170;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STOSD;
     opcode  : A_STOSD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #213#1#171;
     code    : #213#1#171;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_STOSW;
     opcode  : A_STOSW;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #212#1#171;
     code    : #212#1#171;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_STR;
     opcode  : A_STR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#129;
     code    : #2#15#0#129;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_STR;
     opcode  : A_STR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none,ot_none);
     code    : #208#2#15#0#129;
     code    : #208#2#15#0#129;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#41#65;
     code    : #208#1#41#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#43#72;
     code    : #208#1#43#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#40#65;
     code    : #1#40#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#42#72;
     code    : #1#42#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#133#13;
     code    : #208#1#131#133#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#45#33;
     code    : #213#1#45#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#45#173;
     code    : #214#1#45#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#133#33;
     code    : #208#1#129#133#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#133#173;
     code    : #214#1#129#133#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#45#25;
     code    : #212#1#45#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#133#25;
     code    : #212#1#129#133#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#44#17;
     code    : #1#44#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SUB;
     opcode  : A_SUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#133#17;
     code    : #1#128#133#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_SVDC;
     opcode  : A_SVDC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory or ot_bits80,ot_reg_sreg,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_reg_sreg,ot_none,ot_none);
     code    : #2#15#120#65;
     code    : #2#15#120#65;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_SVLDT;
     opcode  : A_SVLDT;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #2#15#122#128;
     code    : #2#15#122#128;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_SVTS;
     opcode  : A_SVTS;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits80,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits80,ot_none,ot_none,ot_none);
     code    : #2#15#124#128;
     code    : #2#15#124#128;
     flags   : if_486 or if_cyrix or if_smm
     flags   : if_486 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_SYSCALL;
     opcode  : A_SYSCALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#5;
     code    : #2#15#5;
     flags   : if_p6 or if_amd
     flags   : if_p6 or if_amd
   ),
   ),
   (
   (
     opcode  : A_SYSENTER;
     opcode  : A_SYSENTER;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#52;
     code    : #2#15#52;
     flags   : if_p6
     flags   : if_p6
   ),
   ),
   (
   (
     opcode  : A_SYSEXIT;
     opcode  : A_SYSEXIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#53;
     code    : #2#15#53;
     flags   : if_p6 or if_priv
     flags   : if_p6 or if_priv
   ),
   ),
   (
   (
     opcode  : A_SYSRET;
     opcode  : A_SYSRET;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#7;
     code    : #2#15#7;
     flags   : if_p6 or if_priv or if_amd
     flags   : if_p6 or if_priv or if_amd
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#133#65;
     code    : #208#1#133#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#1#133#72;
     code    : #208#1#133#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_reg8,ot_none);
+    optypes : (ot_reg8,ot_reg8,ot_none,ot_none);
     code    : #1#132#65;
     code    : #1#132#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#132#65;
     code    : #1#132#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#169#173;
     code    : #214#1#169#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#169#33;
     code    : #213#1#169#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#169#25;
     code    : #212#1#169#25;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#168#17;
     code    : #1#168#17;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#247#128#173;
     code    : #214#1#247#128#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #213#1#247#128#33;
     code    : #213#1#247#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#247#128#25;
     code    : #212#1#247#128#25;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#246#128#17;
     code    : #1#246#128#17;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits32,ot_none,ot_none);
     code    : #213#1#247#128#33;
     code    : #213#1#247#128#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits16,ot_none,ot_none);
     code    : #212#1#247#128#25;
     code    : #212#1#247#128#25;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_TEST;
     opcode  : A_TEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none);
+    optypes : (ot_memory,ot_immediate or ot_bits8,ot_none,ot_none);
     code    : #1#246#128#17;
     code    : #1#246#128#17;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_UD1;
     opcode  : A_UD1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#185;
     code    : #2#15#185;
     flags   : if_286 or if_undoc
     flags   : if_286 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_UD2;
     opcode  : A_UD2;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#11;
     code    : #2#15#11;
     flags   : if_286
     flags   : if_286
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#17#65;
     code    : #208#2#15#17#65;
     flags   : if_386 or if_undoc or if_sm
     flags   : if_386 or if_undoc or if_sm
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #208#2#15#19#72;
     code    : #208#2#15#19#72;
     flags   : if_386 or if_undoc or if_sm
     flags   : if_386 or if_undoc or if_sm
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#16#65;
     code    : #2#15#16#65;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_UMOV;
     opcode  : A_UMOV;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #2#15#18#72;
     code    : #2#15#18#72;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_VERR;
     opcode  : A_VERR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#132;
     code    : #2#15#0#132;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERR;
     opcode  : A_VERR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#132;
     code    : #2#15#0#132;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERR;
     opcode  : A_VERR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #2#15#0#132;
     code    : #2#15#0#132;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERW;
     opcode  : A_VERW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#0#133;
     code    : #2#15#0#133;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERW;
     opcode  : A_VERW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory or ot_bits16,ot_none,ot_none);
+    optypes : (ot_memory or ot_bits16,ot_none,ot_none,ot_none);
     code    : #2#15#0#133;
     code    : #2#15#0#133;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_VERW;
     opcode  : A_VERW;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_reg16,ot_none,ot_none);
+    optypes : (ot_reg16,ot_none,ot_none,ot_none);
     code    : #2#15#0#133;
     code    : #2#15#0#133;
     flags   : if_286 or if_prot
     flags   : if_286 or if_prot
   ),
   ),
   (
   (
     opcode  : A_WAIT;
     opcode  : A_WAIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#155;
     code    : #1#155;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_WBINVD;
     opcode  : A_WBINVD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#9;
     code    : #2#15#9;
     flags   : if_486 or if_priv
     flags   : if_486 or if_priv
   ),
   ),
   (
   (
     opcode  : A_WRSHR;
     opcode  : A_WRSHR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#55;
     code    : #2#15#55;
     flags   : if_p6 or if_cyrix or if_smm
     flags   : if_p6 or if_cyrix or if_smm
   ),
   ),
   (
   (
     opcode  : A_WRMSR;
     opcode  : A_WRMSR;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#48;
     code    : #2#15#48;
     flags   : if_pent or if_priv
     flags   : if_pent or if_priv
   ),
   ),
   (
   (
     opcode  : A_XADD;
     opcode  : A_XADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#193#65;
     code    : #208#2#15#193#65;
     flags   : if_486 or if_sm
     flags   : if_486 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XADD;
     opcode  : A_XADD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #2#15#192#65;
     code    : #2#15#192#65;
     flags   : if_486
     flags   : if_486
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_memory,ot_none);
+    optypes : (ot_reg16,ot_memory,ot_none,ot_none);
     code    : #212#2#15#166#72;
     code    : #212#2#15#166#72;
     flags   : if_386 or if_sw or if_undoc
     flags   : if_386 or if_sw or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_reg16,ot_none);
+    optypes : (ot_reg16,ot_reg16,ot_none,ot_none);
     code    : #212#2#15#166#72;
     code    : #212#2#15#166#72;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_memory,ot_none);
+    optypes : (ot_reg32,ot_memory,ot_none,ot_none);
     code    : #213#2#15#166#72;
     code    : #213#2#15#166#72;
     flags   : if_386 or if_sd or if_undoc
     flags   : if_386 or if_sd or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XBTS;
     opcode  : A_XBTS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg32,ot_none);
+    optypes : (ot_reg32,ot_reg32,ot_none,ot_none);
     code    : #213#2#15#166#72;
     code    : #213#2#15#166#72;
     flags   : if_386 or if_undoc
     flags   : if_386 or if_undoc
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_reg16,ot_none);
+    optypes : (ot_reg_ax,ot_reg16,ot_none,ot_none);
     code    : #212#9#144;
     code    : #212#9#144;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_reg32,ot_none);
+    optypes : (ot_reg_eax,ot_reg32,ot_none,ot_none);
     code    : #213#9#144;
     code    : #213#9#144;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_reg64,ot_none);
+    optypes : (ot_reg_rax,ot_reg64,ot_none,ot_none);
     code    : #214#9#144;
     code    : #214#9#144;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_reg_ax,ot_none);
+    optypes : (ot_reg16,ot_reg_ax,ot_none,ot_none);
     code    : #212#8#144;
     code    : #212#8#144;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg_eax,ot_none);
+    optypes : (ot_reg32,ot_reg_eax,ot_none,ot_none);
     code    : #213#8#144;
     code    : #213#8#144;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_reg_rax,ot_none);
+    optypes : (ot_reg64,ot_reg_rax,ot_none,ot_none);
     code    : #214#8#144;
     code    : #214#8#144;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#135#72;
     code    : #208#1#135#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_memory,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#135#65;
     code    : #208#1#135#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#134#72;
     code    : #1#134#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XCHG;
     opcode  : A_XCHG;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_memory or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#134#65;
     code    : #1#134#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XLAT;
     opcode  : A_XLAT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#215;
     code    : #1#215;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XLATB;
     opcode  : A_XLATB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #1#215;
     code    : #1#215;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_rm_gpr,ot_reg16 or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #208#1#49#65;
     code    : #208#1#49#65;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#51#72;
     code    : #208#1#51#72;
     flags   : if_8086 or if_sm
     flags   : if_8086 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_reg8,ot_none,ot_none);
     code    : #1#48#65;
     code    : #1#48#65;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg8,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #1#50#72;
     code    : #1#50#72;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16 or ot_bits32 or ot_bits64,ot_immediate or ot_bits8 or ot_signed,ot_none,ot_none);
     code    : #208#1#131#134#13;
     code    : #208#1#131#134#13;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_eax,ot_immediate,ot_none);
+    optypes : (ot_reg_eax,ot_immediate,ot_none,ot_none);
     code    : #213#1#53#33;
     code    : #213#1#53#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_rax,ot_immediate,ot_none);
+    optypes : (ot_reg_rax,ot_immediate,ot_none,ot_none);
     code    : #214#1#53#173;
     code    : #214#1#53#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits32,ot_immediate,ot_none,ot_none);
     code    : #208#1#129#134#33;
     code    : #208#1#129#134#33;
     flags   : if_386 or if_sm
     flags   : if_386 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits64,ot_immediate,ot_none,ot_none);
     code    : #214#1#129#134#173;
     code    : #214#1#129#134#173;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax,ot_immediate,ot_none);
+    optypes : (ot_reg_ax,ot_immediate,ot_none,ot_none);
     code    : #212#1#53#25;
     code    : #212#1#53#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits16,ot_immediate,ot_none,ot_none);
     code    : #212#1#129#134#25;
     code    : #212#1#129#134#25;
     flags   : if_8086 or if_sw
     flags   : if_8086 or if_sw
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_immediate,ot_none);
+    optypes : (ot_reg_al,ot_immediate,ot_none,ot_none);
     code    : #1#52#17;
     code    : #1#52#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_XOR;
     opcode  : A_XOR;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_immediate,ot_none,ot_none);
     code    : #1#128#134#17;
     code    : #1#128#134#17;
     flags   : if_8086 or if_sb
     flags   : if_8086 or if_sb
   ),
   ),
   (
   (
     opcode  : A_XSTORE;
     opcode  : A_XSTORE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#167#192;
     code    : #3#15#167#192;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTECB;
     opcode  : A_XCRYPTECB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#200;
     code    : #219#3#15#167#200;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTCBC;
     opcode  : A_XCRYPTCBC;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#208;
     code    : #219#3#15#167#208;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTCFB;
     opcode  : A_XCRYPTCFB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#224;
     code    : #219#3#15#167#224;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_XCRYPTOFB;
     opcode  : A_XCRYPTOFB;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#167#232;
     code    : #219#3#15#167#232;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_CMOVcc;
     opcode  : A_CMOVcc;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16 or ot_bits32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #208#1#15#11#64#72;
     code    : #208#1#15#11#64#72;
     flags   : if_p6 or if_sm
     flags   : if_p6 or if_sm
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits8,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits8,ot_none,ot_none,ot_none);
     code    : #11#112#40;
     code    : #11#112#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none);
+    optypes : (ot_immediate or ot_bits16 or ot_bits32,ot_none,ot_none,ot_none);
     code    : #208#1#15#11#128#52;
     code    : #208#1#15#11#128#52;
     flags   : if_386 or if_pass2
     flags   : if_386 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_short,ot_none,ot_none);
+    optypes : (ot_immediate or ot_short,ot_none,ot_none,ot_none);
     code    : #11#112#40;
     code    : #11#112#40;
     flags   : if_8086
     flags   : if_8086
   ),
   ),
   (
   (
     opcode  : A_Jcc;
     opcode  : A_Jcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_immediate or ot_near,ot_none,ot_none);
+    optypes : (ot_immediate or ot_near,ot_none,ot_none,ot_none);
     code    : #208#1#15#11#128#52;
     code    : #208#1#15#11#128#52;
     flags   : if_386 or if_pass2
     flags   : if_386 or if_pass2
   ),
   ),
   (
   (
     opcode  : A_SETcc;
     opcode  : A_SETcc;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none);
+    optypes : (ot_rm_gpr or ot_bits8,ot_none,ot_none,ot_none);
     code    : #1#15#11#144#128;
     code    : #1#15#11#144#128;
     flags   : if_386
     flags   : if_386
   ),
   ),
   (
   (
     opcode  : A_ADDPS;
     opcode  : A_ADDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#88#72;
     code    : #217#2#15#88#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ADDSS;
     opcode  : A_ADDSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#88#72;
     code    : #219#2#15#88#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ANDNPS;
     opcode  : A_ANDNPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#85#72;
     code    : #2#15#85#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ANDPS;
     opcode  : A_ANDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#84#72;
     code    : #2#15#84#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPEQPS;
     opcode  : A_CMPEQPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#0;
     code    : #217#2#15#194#72#1#0;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPEQSS;
     opcode  : A_CMPEQSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#0;
     code    : #219#2#15#194#72#1#0;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLEPS;
     opcode  : A_CMPLEPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#2;
     code    : #217#2#15#194#72#1#2;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLESS;
     opcode  : A_CMPLESS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#2;
     code    : #219#2#15#194#72#1#2;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLTPS;
     opcode  : A_CMPLTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#1;
     code    : #217#2#15#194#72#1#1;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPLTSS;
     opcode  : A_CMPLTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#1;
     code    : #219#2#15#194#72#1#1;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNEQPS;
     opcode  : A_CMPNEQPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#4;
     code    : #217#2#15#194#72#1#4;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNEQSS;
     opcode  : A_CMPNEQSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#4;
     code    : #219#2#15#194#72#1#4;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLEPS;
     opcode  : A_CMPNLEPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#6;
     code    : #217#2#15#194#72#1#6;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLESS;
     opcode  : A_CMPNLESS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#6;
     code    : #219#2#15#194#72#1#6;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLTPS;
     opcode  : A_CMPNLTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#5;
     code    : #217#2#15#194#72#1#5;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPNLTSS;
     opcode  : A_CMPNLTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#5;
     code    : #219#2#15#194#72#1#5;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPORDPS;
     opcode  : A_CMPORDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#7;
     code    : #217#2#15#194#72#1#7;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPORDSS;
     opcode  : A_CMPORDSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#7;
     code    : #219#2#15#194#72#1#7;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDPS;
     opcode  : A_CMPUNORDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#194#72#1#3;
     code    : #217#2#15#194#72#1#3;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDSS;
     opcode  : A_CMPUNORDSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#194#72#1#3;
     code    : #219#2#15#194#72#1#3;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CMPPS;
     opcode  : A_CMPPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #217#2#15#194#72#18;
     code    : #217#2#15#194#72#18;
     flags   : if_katmai or if_sse or if_sb or if_ar2
     flags   : if_katmai or if_sse or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_CMPSS;
     opcode  : A_CMPSS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #219#2#15#194#72#18;
     code    : #219#2#15#194#72#18;
     flags   : if_katmai or if_sse or if_sb or if_ar2
     flags   : if_katmai or if_sse or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_COMISS;
     opcode  : A_COMISS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#47#72;
     code    : #2#15#47#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTPI2PS;
     opcode  : A_CVTPI2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #217#2#15#42#72;
     code    : #217#2#15#42#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTPI2PS;
     opcode  : A_CVTPI2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_mmxreg,ot_none);
+    optypes : (ot_xmmreg,ot_mmxreg,ot_none,ot_none);
     code    : #217#2#15#42#72;
     code    : #217#2#15#42#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTPS2PI;
     opcode  : A_CVTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #217#2#15#45#72;
     code    : #217#2#15#45#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTPS2PI;
     opcode  : A_CVTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #217#2#15#45#72;
     code    : #217#2#15#45#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SS;
     opcode  : A_CVTSI2SS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #219#209#2#15#42#72;
     code    : #219#209#2#15#42#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SS;
     opcode  : A_CVTSI2SS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none);
+    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none,ot_none);
     code    : #219#209#2#15#42#72;
     code    : #219#209#2#15#42#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTSS2SI;
     opcode  : A_CVTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #219#208#2#15#45#72;
     code    : #219#208#2#15#45#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTSS2SI;
     opcode  : A_CVTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #219#208#2#15#45#72;
     code    : #219#208#2#15#45#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTTPS2PI;
     opcode  : A_CVTTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #217#2#15#44#72;
     code    : #217#2#15#44#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTTPS2PI;
     opcode  : A_CVTTPS2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #217#2#15#44#72;
     code    : #217#2#15#44#72;
     flags   : if_katmai or if_sse or if_mmx
     flags   : if_katmai or if_sse or if_mmx
   ),
   ),
   (
   (
     opcode  : A_CVTTSS2SI;
     opcode  : A_CVTTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #219#208#2#15#44#72;
     code    : #219#208#2#15#44#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_CVTTSS2SI;
     opcode  : A_CVTTSS2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #219#208#2#15#44#72;
     code    : #219#208#2#15#44#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_DIVPS;
     opcode  : A_DIVPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#94#72;
     code    : #217#2#15#94#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_DIVSS;
     opcode  : A_DIVSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#94#72;
     code    : #219#2#15#94#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_LDMXCSR;
     opcode  : A_LDMXCSR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#130;
     code    : #2#15#174#130;
     flags   : if_katmai or if_sse or if_sd
     flags   : if_katmai or if_sse or if_sd
   ),
   ),
   (
   (
     opcode  : A_MAXPS;
     opcode  : A_MAXPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#95#72;
     code    : #217#2#15#95#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MAXSS;
     opcode  : A_MAXSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#95#72;
     code    : #219#2#15#95#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MINPS;
     opcode  : A_MINPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#93#72;
     code    : #217#2#15#93#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MINSS;
     opcode  : A_MINSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#93#72;
     code    : #219#2#15#93#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVAPS;
     opcode  : A_MOVAPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#40#72;
     code    : #2#15#40#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVAPS;
     opcode  : A_MOVAPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#41#65;
     code    : #2#15#41#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVHPS;
     opcode  : A_MOVHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #2#15#22#72;
     code    : #2#15#22#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVHPS;
     opcode  : A_MOVHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#23#65;
     code    : #2#15#23#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVLHPS;
     opcode  : A_MOVLHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#22#72;
     code    : #2#15#22#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVLPS;
     opcode  : A_MOVLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #2#15#18#72;
     code    : #2#15#18#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVLPS;
     opcode  : A_MOVLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#19#65;
     code    : #2#15#19#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVHLPS;
     opcode  : A_MOVHLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#18#72;
     code    : #2#15#18#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVMSKPS;
     opcode  : A_MOVMSKPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_xmmreg,ot_none);
+    optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#80#72;
     code    : #2#15#80#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVNTPS;
     opcode  : A_MOVNTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #2#15#43#65;
     code    : #2#15#43#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVSS;
     opcode  : A_MOVSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#16#72;
     code    : #219#2#15#16#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVSS;
     opcode  : A_MOVSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #219#2#15#17#65;
     code    : #219#2#15#17#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVUPS;
     opcode  : A_MOVUPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#16#72;
     code    : #217#2#15#16#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MOVUPS;
     opcode  : A_MOVUPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #217#2#15#17#65;
     code    : #217#2#15#17#65;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MULPS;
     opcode  : A_MULPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#89#72;
     code    : #2#15#89#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_MULSS;
     opcode  : A_MULSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#89#72;
     code    : #219#2#15#89#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_ORPS;
     opcode  : A_ORPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#86#72;
     code    : #2#15#86#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RCPPS;
     opcode  : A_RCPPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#83#72;
     code    : #217#2#15#83#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RCPSS;
     opcode  : A_RCPSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#83#72;
     code    : #219#2#15#83#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RSQRTPS;
     opcode  : A_RSQRTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#82#72;
     code    : #217#2#15#82#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_RSQRTSS;
     opcode  : A_RSQRTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#82#72;
     code    : #219#2#15#82#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_SHUFPS;
     opcode  : A_SHUFPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #2#15#198#72#18;
     code    : #2#15#198#72#18;
     flags   : if_katmai or if_sse or if_sb or if_ar2
     flags   : if_katmai or if_sse or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SQRTPS;
     opcode  : A_SQRTPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#81#72;
     code    : #217#2#15#81#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_SQRTSS;
     opcode  : A_SQRTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#81#72;
     code    : #219#2#15#81#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_STMXCSR;
     opcode  : A_STMXCSR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#131;
     code    : #2#15#174#131;
     flags   : if_katmai or if_sse or if_sd
     flags   : if_katmai or if_sse or if_sd
   ),
   ),
   (
   (
     opcode  : A_SUBPS;
     opcode  : A_SUBPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #217#2#15#92#72;
     code    : #217#2#15#92#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_SUBSS;
     opcode  : A_SUBSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#92#72;
     code    : #219#2#15#92#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_UCOMISS;
     opcode  : A_UCOMISS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#46#72;
     code    : #2#15#46#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_UNPCKHPS;
     opcode  : A_UNPCKHPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#21#72;
     code    : #2#15#21#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_UNPCKLPS;
     opcode  : A_UNPCKLPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#20#72;
     code    : #2#15#20#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_XORPS;
     opcode  : A_XORPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#87#72;
     code    : #2#15#87#72;
     flags   : if_katmai or if_sse
     flags   : if_katmai or if_sse
   ),
   ),
   (
   (
     opcode  : A_FXRSTOR;
     opcode  : A_FXRSTOR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#129;
     code    : #2#15#174#129;
     flags   : if_p6 or if_sse or if_fpu
     flags   : if_p6 or if_sse or if_fpu
   ),
   ),
   (
   (
     opcode  : A_FXSAVE;
     opcode  : A_FXSAVE;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#128;
     code    : #2#15#174#128;
     flags   : if_p6 or if_sse or if_fpu
     flags   : if_p6 or if_sse or if_fpu
   ),
   ),
   (
   (
     opcode  : A_PREFETCHNTA;
     opcode  : A_PREFETCHNTA;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#128;
     code    : #2#15#24#128;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_PREFETCHT0;
     opcode  : A_PREFETCHT0;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#129;
     code    : #2#15#24#129;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_PREFETCHT1;
     opcode  : A_PREFETCHT1;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#130;
     code    : #2#15#24#130;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_PREFETCHT2;
     opcode  : A_PREFETCHT2;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#24#131;
     code    : #2#15#24#131;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_SFENCE;
     opcode  : A_SFENCE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#174#248;
     code    : #3#15#174#248;
     flags   : if_katmai
     flags   : if_katmai
   ),
   ),
   (
   (
     opcode  : A_MASKMOVQ;
     opcode  : A_MASKMOVQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxreg,ot_none);
+    optypes : (ot_mmxreg,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#247#72;
     code    : #2#15#247#72;
     flags   : if_katmai or if_mmx
     flags   : if_katmai or if_mmx
   ),
   ),
   (
   (
     opcode  : A_MOVNTQ;
     opcode  : A_MOVNTQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_mmxreg,ot_none);
+    optypes : (ot_memory,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#231#65;
     code    : #2#15#231#65;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGB;
     opcode  : A_PAVGB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#224#72;
     code    : #2#15#224#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGB;
     opcode  : A_PAVGB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#224#72;
     code    : #241#2#15#224#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGW;
     opcode  : A_PAVGW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#227#72;
     code    : #2#15#227#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAVGW;
     opcode  : A_PAVGW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#227#72;
     code    : #241#2#15#227#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PEXTRW;
     opcode  : A_PEXTRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32,ot_mmxreg,ot_immediate);
+    optypes : (ot_reg32,ot_mmxreg,ot_immediate,ot_none);
     code    : #2#15#197#72#18;
     code    : #2#15#197#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRW;
     opcode  : A_PEXTRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#2#15#197#72#22;
     code    : #241#2#15#197#72#22;
     flags   : if_sse41
     flags   : if_sse41
   ),
   ),
   (
   (
     opcode  : A_PEXTRW;
     opcode  : A_PEXTRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#21#65#22;
     code    : #241#3#15#58#21#65#22;
     flags   : if_sse41
     flags   : if_sse41
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_reg16,ot_immediate);
+    optypes : (ot_mmxreg,ot_reg16,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_reg32,ot_immediate);
+    optypes : (ot_mmxreg,ot_reg32,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_memory,ot_immediate);
+    optypes : (ot_mmxreg,ot_memory,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_memory or ot_bits16,ot_immediate);
+    optypes : (ot_mmxreg,ot_memory or ot_bits16,ot_immediate,ot_none);
     code    : #2#15#196#72#18;
     code    : #2#15#196#72#18;
     flags   : if_katmai or if_mmx or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg16,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg16,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg32,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg32,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRW;
     opcode  : A_PINSRW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits16,ot_immediate,ot_none);
     code    : #241#2#15#196#72#22;
     code    : #241#2#15#196#72#22;
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PMAXSW;
     opcode  : A_PMAXSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#238#72;
     code    : #2#15#238#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXSW;
     opcode  : A_PMAXSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#238#72;
     code    : #241#2#15#238#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUB;
     opcode  : A_PMAXUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#222#72;
     code    : #2#15#222#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUB;
     opcode  : A_PMAXUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#222#72;
     code    : #241#2#15#222#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSW;
     opcode  : A_PMINSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#234#72;
     code    : #2#15#234#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSW;
     opcode  : A_PMINSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#234#72;
     code    : #241#2#15#234#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUB;
     opcode  : A_PMINUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#218#72;
     code    : #2#15#218#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUB;
     opcode  : A_PMINUB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#218#72;
     code    : #241#2#15#218#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVMSKB;
     opcode  : A_PMOVMSKB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_mmxreg,ot_none);
+    optypes : (ot_reg32,ot_mmxreg,ot_none,ot_none);
     code    : #2#15#215#72;
     code    : #2#15#215#72;
     flags   : if_katmai or if_mmx
     flags   : if_katmai or if_mmx
   ),
   ),
   (
   (
     opcode  : A_PMOVMSKB;
     opcode  : A_PMOVMSKB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_xmmreg,ot_none);
+    optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#215#72;
     code    : #241#2#15#215#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_PMULHUW;
     opcode  : A_PMULHUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#228#72;
     code    : #2#15#228#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHUW;
     opcode  : A_PMULHUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#228#72;
     code    : #241#2#15#228#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSADBW;
     opcode  : A_PSADBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#246#72;
     code    : #2#15#246#72;
     flags   : if_katmai or if_mmx or if_sm
     flags   : if_katmai or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSADBW;
     opcode  : A_PSADBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#246#72;
     code    : #241#2#15#246#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFW;
     opcode  : A_PSHUFW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate,ot_none);
     code    : #2#15#112#72#18;
     code    : #2#15#112#72#18;
     flags   : if_katmai or if_mmx or if_sm2 or if_sb or if_ar2
     flags   : if_katmai or if_mmx or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PFNACC;
     opcode  : A_PFNACC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#138;
     code    : #2#15#15#72#1#138;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PFPNACC;
     opcode  : A_PFPNACC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#142;
     code    : #2#15#15#72#1#142;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PI2FW;
     opcode  : A_PI2FW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#12;
     code    : #2#15#15#72#1#12;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PF2IW;
     opcode  : A_PF2IW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#28;
     code    : #2#15#15#72#1#28;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSWAPD;
     opcode  : A_PSWAPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#15#72#1#187;
     code    : #2#15#15#72#1#187;
     flags   : if_pent or if_3dnow or if_sm
     flags   : if_pent or if_3dnow or if_sm
   ),
   ),
   (
   (
     opcode  : A_FFREEP;
     opcode  : A_FFREEP;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_fpureg,ot_none,ot_none);
+    optypes : (ot_fpureg,ot_none,ot_none,ot_none);
     code    : #1#223#8#192;
     code    : #1#223#8#192;
     flags   : if_pent or if_3dnow or if_fpu
     flags   : if_pent or if_3dnow or if_fpu
   ),
   ),
   (
   (
     opcode  : A_MASKMOVDQU;
     opcode  : A_MASKMOVDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#247#72;
     code    : #241#2#15#247#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CLFLUSH;
     opcode  : A_CLFLUSH;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#174#135;
     code    : #2#15#174#135;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVNTDQ;
     opcode  : A_MOVNTDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#231#65;
     code    : #241#2#15#231#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVNTI;
     opcode  : A_MOVNTI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg32 or ot_bits64,ot_none);
+    optypes : (ot_memory,ot_reg32 or ot_bits64,ot_none,ot_none);
     code    : #208#2#15#195#65;
     code    : #208#2#15#195#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVNTPD;
     opcode  : A_MOVNTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#43#65;
     code    : #241#2#15#43#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PAUSE;
     opcode  : A_PAUSE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#1#144;
     code    : #219#1#144;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_LFENCE;
     opcode  : A_LFENCE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#174#232;
     code    : #3#15#174#232;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MFENCE;
     opcode  : A_MFENCE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#174#240;
     code    : #3#15#174#240;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVDQA;
     opcode  : A_MOVDQA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#127#65;
     code    : #241#2#15#127#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQA;
     opcode  : A_MOVDQA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#111#72;
     code    : #241#2#15#111#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQU;
     opcode  : A_MOVDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #219#2#15#127#65;
     code    : #219#2#15#127#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQU;
     opcode  : A_MOVDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#111#72;
     code    : #219#2#15#111#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVDQ2Q;
     opcode  : A_MOVDQ2Q;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #220#2#15#214#72;
     code    : #220#2#15#214#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVQ2DQ;
     opcode  : A_MOVQ2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_mmxreg,ot_none);
+    optypes : (ot_xmmreg,ot_mmxreg,ot_none,ot_none);
     code    : #219#2#15#214#72;
     code    : #219#2#15#214#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_PADDQ;
     opcode  : A_PADDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#212#72;
     code    : #2#15#212#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PADDQ;
     opcode  : A_PADDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#212#72;
     code    : #241#2#15#212#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULUDQ;
     opcode  : A_PMULUDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#244#72;
     code    : #2#15#244#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULUDQ;
     opcode  : A_PMULUDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#244#72;
     code    : #241#2#15#244#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFD;
     opcode  : A_PSHUFD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#2#15#112#72#18;
     code    : #241#2#15#112#72#18;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PSHUFHW;
     opcode  : A_PSHUFHW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #219#2#15#112#72#18;
     code    : #219#2#15#112#72#18;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PSHUFLW;
     opcode  : A_PSHUFLW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #220#2#15#112#72#18;
     code    : #220#2#15#112#72#18;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PSRLDQ;
     opcode  : A_PSRLDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_immediate,ot_none);
+    optypes : (ot_xmmreg,ot_immediate,ot_none,ot_none);
     code    : #241#2#15#115#131#21;
     code    : #241#2#15#115#131#21;
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
     flags   : if_willamette or if_sse2 or if_sb or if_ar1
   ),
   ),
   (
   (
     opcode  : A_PSUBQ;
     opcode  : A_PSUBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #2#15#251#72;
     code    : #2#15#251#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSUBQ;
     opcode  : A_PSUBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#251#72;
     code    : #241#2#15#251#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKHQDQ;
     opcode  : A_PUNPCKHQDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#109#72;
     code    : #241#2#15#109#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PUNPCKLQDQ;
     opcode  : A_PUNPCKLQDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#108#72;
     code    : #241#2#15#108#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDPD;
     opcode  : A_ADDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#88#72;
     code    : #241#2#15#88#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDSD;
     opcode  : A_ADDSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#88#72;
     code    : #220#2#15#88#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_ANDNPD;
     opcode  : A_ANDNPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#85#72;
     code    : #241#2#15#85#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ANDPD;
     opcode  : A_ANDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#84#72;
     code    : #241#2#15#84#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPEQPD;
     opcode  : A_CMPEQPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#0;
     code    : #241#2#15#194#72#1#0;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPEQSD;
     opcode  : A_CMPEQSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#0;
     code    : #220#2#15#194#72#1#0;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPLEPD;
     opcode  : A_CMPLEPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#2;
     code    : #241#2#15#194#72#1#2;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPLESD;
     opcode  : A_CMPLESD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#2;
     code    : #220#2#15#194#72#1#2;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPLTPD;
     opcode  : A_CMPLTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#1;
     code    : #241#2#15#194#72#1#1;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPLTSD;
     opcode  : A_CMPLTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#1;
     code    : #220#2#15#194#72#1#1;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPNEQPD;
     opcode  : A_CMPNEQPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#4;
     code    : #241#2#15#194#72#1#4;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPNEQSD;
     opcode  : A_CMPNEQSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#4;
     code    : #220#2#15#194#72#1#4;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPNLEPD;
     opcode  : A_CMPNLEPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#6;
     code    : #241#2#15#194#72#1#6;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPNLESD;
     opcode  : A_CMPNLESD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#6;
     code    : #220#2#15#194#72#1#6;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPNLTPD;
     opcode  : A_CMPNLTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#5;
     code    : #241#2#15#194#72#1#5;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPNLTSD;
     opcode  : A_CMPNLTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#5;
     code    : #220#2#15#194#72#1#5;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPORDPD;
     opcode  : A_CMPORDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#7;
     code    : #241#2#15#194#72#1#7;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPORDSD;
     opcode  : A_CMPORDSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#7;
     code    : #220#2#15#194#72#1#7;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDPD;
     opcode  : A_CMPUNORDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#194#72#1#3;
     code    : #241#2#15#194#72#1#3;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CMPUNORDSD;
     opcode  : A_CMPUNORDSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#194#72#1#3;
     code    : #220#2#15#194#72#1#3;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CMPPD;
     opcode  : A_CMPPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#2#15#194#72#22;
     code    : #241#2#15#194#72#22;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_COMISD;
     opcode  : A_COMISD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#47#72;
     code    : #241#2#15#47#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTDQ2PD;
     opcode  : A_CVTDQ2PD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#230#72;
     code    : #219#2#15#230#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTDQ2PS;
     opcode  : A_CVTDQ2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#91#72;
     code    : #2#15#91#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPD2DQ;
     opcode  : A_CVTPD2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#230#72;
     code    : #220#2#15#230#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPD2PI;
     opcode  : A_CVTPD2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmrm,ot_none);
+    optypes : (ot_mmxreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#45#72;
     code    : #241#2#15#45#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTPD2PS;
     opcode  : A_CVTPD2PS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#90#72;
     code    : #241#2#15#90#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPI2PD;
     opcode  : A_CVTPI2PD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_mmxrm,ot_none);
+    optypes : (ot_xmmreg,ot_mmxrm,ot_none,ot_none);
     code    : #241#2#15#42#72;
     code    : #241#2#15#42#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTPS2DQ;
     opcode  : A_CVTPS2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#91#72;
     code    : #241#2#15#91#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTPS2PD;
     opcode  : A_CVTPS2PD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #2#15#90#72;
     code    : #2#15#90#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSD2SI;
     opcode  : A_CVTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #220#208#2#15#45#72;
     code    : #220#208#2#15#45#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSD2SI;
     opcode  : A_CVTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #220#208#2#15#45#72;
     code    : #220#208#2#15#45#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSD2SS;
     opcode  : A_CVTSD2SS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#90#72;
     code    : #220#2#15#90#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SD;
     opcode  : A_CVTSI2SD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none);
+    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_none,ot_none);
     code    : #220#209#2#15#42#72;
     code    : #220#209#2#15#42#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSI2SD;
     opcode  : A_CVTSI2SD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #220#209#2#15#42#72;
     code    : #220#209#2#15#42#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTSS2SD;
     opcode  : A_CVTSS2SD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#90#72;
     code    : #219#2#15#90#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTPD2PI;
     opcode  : A_CVTTPD2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_xmmreg,ot_none);
+    optypes : (ot_mmxreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#44#72;
     code    : #241#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTPD2PI;
     opcode  : A_CVTTPD2PI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_memory,ot_none);
+    optypes : (ot_mmxreg,ot_memory,ot_none,ot_none);
     code    : #241#2#15#44#72;
     code    : #241#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTPD2DQ;
     opcode  : A_CVTTPD2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#230#72;
     code    : #241#2#15#230#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTTPS2DQ;
     opcode  : A_CVTTPS2DQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#91#72;
     code    : #219#2#15#91#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_CVTTSD2SI;
     opcode  : A_CVTTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_none,ot_none);
     code    : #220#208#2#15#44#72;
     code    : #220#208#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_CVTTSD2SI;
     opcode  : A_CVTTSD2SI;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_memory,ot_none,ot_none);
     code    : #220#208#2#15#44#72;
     code    : #220#208#2#15#44#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_DIVPD;
     opcode  : A_DIVPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#94#72;
     code    : #241#2#15#94#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_DIVSD;
     opcode  : A_DIVSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#94#72;
     code    : #220#2#15#94#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MAXPD;
     opcode  : A_MAXPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#95#72;
     code    : #241#2#15#95#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MAXSD;
     opcode  : A_MAXSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#95#72;
     code    : #220#2#15#95#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MINPD;
     opcode  : A_MINPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#93#72;
     code    : #241#2#15#93#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MINSD;
     opcode  : A_MINSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#93#72;
     code    : #220#2#15#93#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVAPD;
     opcode  : A_MOVAPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#41#65;
     code    : #241#2#15#41#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVAPD;
     opcode  : A_MOVAPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#40#72;
     code    : #241#2#15#40#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVHPD;
     opcode  : A_MOVHPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#23#65;
     code    : #241#2#15#23#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVHPD;
     opcode  : A_MOVHPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #241#2#15#22#72;
     code    : #241#2#15#22#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVLPD;
     opcode  : A_MOVLPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#19#65;
     code    : #241#2#15#19#65;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVLPD;
     opcode  : A_MOVLPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #241#2#15#18#72;
     code    : #241#2#15#18#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVMSKPD;
     opcode  : A_MOVMSKPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_xmmreg,ot_none);
+    optypes : (ot_reg32,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#80#72;
     code    : #241#2#15#80#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_MOVUPD;
     opcode  : A_MOVUPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmrm,ot_xmmreg,ot_none);
+    optypes : (ot_xmmrm,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#17#65;
     code    : #241#2#15#17#65;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVUPD;
     opcode  : A_MOVUPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#16#72;
     code    : #241#2#15#16#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MULPD;
     opcode  : A_MULPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#89#72;
     code    : #241#2#15#89#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MULSD;
     opcode  : A_MULSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#89#72;
     code    : #220#2#15#89#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_ORPD;
     opcode  : A_ORPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#86#72;
     code    : #241#2#15#86#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SHUFPD;
     opcode  : A_SHUFPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#2#15#198#72#22;
     code    : #241#2#15#198#72#22;
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
     flags   : if_willamette or if_sse2 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_SQRTPD;
     opcode  : A_SQRTPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#81#72;
     code    : #241#2#15#81#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SQRTSD;
     opcode  : A_SQRTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#81#72;
     code    : #220#2#15#81#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_SUBPD;
     opcode  : A_SUBPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#92#72;
     code    : #241#2#15#92#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_SUBSD;
     opcode  : A_SUBSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#92#72;
     code    : #220#2#15#92#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_UCOMISD;
     opcode  : A_UCOMISD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#46#72;
     code    : #241#2#15#46#72;
     flags   : if_willamette or if_sse2
     flags   : if_willamette or if_sse2
   ),
   ),
   (
   (
     opcode  : A_UNPCKHPD;
     opcode  : A_UNPCKHPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#21#72;
     code    : #241#2#15#21#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_UNPCKLPD;
     opcode  : A_UNPCKLPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#20#72;
     code    : #241#2#15#20#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_XORPD;
     opcode  : A_XORPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#87#72;
     code    : #241#2#15#87#72;
     flags   : if_willamette or if_sse2 or if_sm
     flags   : if_willamette or if_sse2 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDSUBPD;
     opcode  : A_ADDSUBPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#208#72;
     code    : #241#2#15#208#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ADDSUBPS;
     opcode  : A_ADDSUBPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#208#72;
     code    : #220#2#15#208#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HADDPD;
     opcode  : A_HADDPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#124#72;
     code    : #241#2#15#124#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HADDPS;
     opcode  : A_HADDPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#124#72;
     code    : #220#2#15#124#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HSUBPD;
     opcode  : A_HSUBPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#2#15#125#72;
     code    : #241#2#15#125#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_HSUBPS;
     opcode  : A_HSUBPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#125#72;
     code    : #220#2#15#125#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_LDDQU;
     opcode  : A_LDDQU;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #220#2#15#240#72;
     code    : #220#2#15#240#72;
     flags   : if_prescott or if_sse3
     flags   : if_prescott or if_sse3
   ),
   ),
   (
   (
     opcode  : A_MOVDDUP;
     opcode  : A_MOVDDUP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #220#2#15#18#72;
     code    : #220#2#15#18#72;
     flags   : if_prescott or if_sse3
     flags   : if_prescott or if_sse3
   ),
   ),
   (
   (
     opcode  : A_MOVSHDUP;
     opcode  : A_MOVSHDUP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#22#72;
     code    : #219#2#15#22#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVSLDUP;
     opcode  : A_MOVSLDUP;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #219#2#15#18#72;
     code    : #219#2#15#18#72;
     flags   : if_prescott or if_sse3 or if_sm
     flags   : if_prescott or if_sse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_VMREAD;
     opcode  : A_VMREAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg32,ot_none);
+    optypes : (ot_reg32,ot_reg32,ot_none,ot_none);
     code    : #2#15#120#65;
     code    : #2#15#120#65;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMREAD;
     opcode  : A_VMREAD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_reg32,ot_none);
+    optypes : (ot_memory,ot_reg32,ot_none,ot_none);
     code    : #2#15#120#65;
     code    : #2#15#120#65;
     flags   : if_386 or if_priv or if_prot or if_sm
     flags   : if_386 or if_priv or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_VMWRITE;
     opcode  : A_VMWRITE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_reg32,ot_none);
+    optypes : (ot_reg32,ot_reg32,ot_none,ot_none);
     code    : #2#15#121#72;
     code    : #2#15#121#72;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMWRITE;
     opcode  : A_VMWRITE;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_memory,ot_none);
+    optypes : (ot_reg32,ot_memory,ot_none,ot_none);
     code    : #2#15#121#72;
     code    : #2#15#121#72;
     flags   : if_386 or if_priv or if_prot or if_sm
     flags   : if_386 or if_priv or if_prot or if_sm
   ),
   ),
   (
   (
     opcode  : A_VMCALL;
     opcode  : A_VMCALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#193;
     code    : #3#15#1#193;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMLAUNCH;
     opcode  : A_VMLAUNCH;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#194;
     code    : #3#15#1#194;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMRESUME;
     opcode  : A_VMRESUME;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#195;
     code    : #3#15#1#195;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMXOFF;
     opcode  : A_VMXOFF;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#196;
     code    : #3#15#1#196;
     flags   : if_386 or if_priv or if_prot
     flags   : if_386 or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMXON;
     opcode  : A_VMXON;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #219#2#15#199#134;
     code    : #219#2#15#199#134;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMCLEAR;
     opcode  : A_VMCLEAR;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #241#2#15#199#134;
     code    : #241#2#15#199#134;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMPTRLD;
     opcode  : A_VMPTRLD;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#199#134;
     code    : #2#15#199#134;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMPTRST;
     opcode  : A_VMPTRST;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #2#15#199#135;
     code    : #2#15#199#135;
     flags   : if_priv or if_prot
     flags   : if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMRUN;
     opcode  : A_VMRUN;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#216;
     code    : #3#15#1#216;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMMCALL;
     opcode  : A_VMMCALL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#217;
     code    : #3#15#1#217;
     flags   : if_386 or if_svm
     flags   : if_386 or if_svm
   ),
   ),
   (
   (
     opcode  : A_VMLOAD;
     opcode  : A_VMLOAD;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#218;
     code    : #3#15#1#218;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_VMSAVE;
     opcode  : A_VMSAVE;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#219;
     code    : #3#15#1#219;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_STGI;
     opcode  : A_STGI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#220;
     code    : #3#15#1#220;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_CLGI;
     opcode  : A_CLGI;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#221;
     code    : #3#15#1#221;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_SKINIT;
     opcode  : A_SKINIT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#222;
     code    : #3#15#1#222;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_INVLPGA;
     opcode  : A_INVLPGA;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #3#15#1#223;
     code    : #3#15#1#223;
     flags   : if_386 or if_svm or if_priv or if_prot
     flags   : if_386 or if_svm or if_priv or if_prot
   ),
   ),
   (
   (
     opcode  : A_MONTMUL;
     opcode  : A_MONTMUL;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#166#192;
     code    : #219#3#15#166#192;
     flags   : if_centaur
     flags   : if_centaur
   ),
   ),
   (
   (
     opcode  : A_XSHA1;
     opcode  : A_XSHA1;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#166#200;
     code    : #219#3#15#166#200;
     flags   : if_centaur
     flags   : if_centaur
   ),
   ),
   (
   (
     opcode  : A_XSHA256;
     opcode  : A_XSHA256;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #219#3#15#166#208;
     code    : #219#3#15#166#208;
     flags   : if_centaur
     flags   : if_centaur
   ),
   ),
   (
   (
     opcode  : A_DMINT;
     opcode  : A_DMINT;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#57;
     code    : #2#15#57;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_RDM;
     opcode  : A_RDM;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #2#15#58;
     code    : #2#15#58;
     flags   : if_p6 or if_cyrix
     flags   : if_p6 or if_cyrix
   ),
   ),
   (
   (
     opcode  : A_MOVABS;
     opcode  : A_MOVABS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_al,ot_mem_offs,ot_none);
+    optypes : (ot_reg_al,ot_mem_offs,ot_none,ot_none);
     code    : #1#160#37;
     code    : #1#160#37;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVABS;
     opcode  : A_MOVABS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg_ax or ot_bits32 or ot_bits64,ot_mem_offs,ot_none);
+    optypes : (ot_reg_ax or ot_bits32 or ot_bits64,ot_mem_offs,ot_none,ot_none);
     code    : #208#1#161#37;
     code    : #208#1#161#37;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVABS;
     opcode  : A_MOVABS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_al,ot_none);
+    optypes : (ot_mem_offs,ot_reg_al,ot_none,ot_none);
     code    : #1#162#36;
     code    : #1#162#36;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVABS;
     opcode  : A_MOVABS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mem_offs,ot_reg_ax or ot_bits32 or ot_bits64,ot_none);
+    optypes : (ot_mem_offs,ot_reg_ax or ot_bits32 or ot_bits64,ot_none,ot_none);
     code    : #209#163#36;
     code    : #209#163#36;
     flags   : if_x86_64 or if_sm
     flags   : if_x86_64 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MOVABS;
     opcode  : A_MOVABS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_immediate,ot_none);
+    optypes : (ot_reg64,ot_immediate,ot_none,ot_none);
     code    : #214#8#184#45;
     code    : #214#8#184#45;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVSXD;
     opcode  : A_MOVSXD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_memory,ot_none);
+    optypes : (ot_reg64,ot_memory,ot_none,ot_none);
     code    : #214#1#99#72;
     code    : #214#1#99#72;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVSXD;
     opcode  : A_MOVSXD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_reg32,ot_none);
+    optypes : (ot_reg64,ot_reg32,ot_none,ot_none);
     code    : #214#1#99#72;
     code    : #214#1#99#72;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_CQO;
     opcode  : A_CQO;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#153;
     code    : #214#1#153;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_CMPXCHG16B;
     opcode  : A_CMPXCHG16B;
     ops     : 1;
     ops     : 1;
-    optypes : (ot_memory,ot_none,ot_none);
+    optypes : (ot_memory,ot_none,ot_none,ot_none);
     code    : #214#2#15#199#129;
     code    : #214#2#15#199#129;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_MOVNTSS;
     opcode  : A_MOVNTSS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #219#2#15#43#65;
     code    : #219#2#15#43#65;
     flags   : if_sse4 or if_sd
     flags   : if_sse4 or if_sd
   ),
   ),
   (
   (
     opcode  : A_MOVNTSD;
     opcode  : A_MOVNTSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_memory,ot_xmmreg,ot_none);
+    optypes : (ot_memory,ot_xmmreg,ot_none,ot_none);
     code    : #220#213#2#15#43#65;
     code    : #220#213#2#15#43#65;
     flags   : if_sse4
     flags   : if_sse4
   ),
   ),
   (
   (
     opcode  : A_INSERTQ;
     opcode  : A_INSERTQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #220#2#15#121#72;
     code    : #220#2#15#121#72;
     flags   : if_sse4
     flags   : if_sse4
   ),
   ),
+  (
+    opcode  : A_INSERTQ;
+    ops     : 4;
+    optypes : (ot_xmmreg,ot_xmmreg,ot_immediate,ot_immediate);
+    code    : #220#2#15#120#72#22#23;
+    flags   : if_sse4 or if_sb
+  ),
   (
   (
     opcode  : A_EXTRQ;
     opcode  : A_EXTRQ;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_immediate,ot_immediate);
+    optypes : (ot_xmmreg,ot_immediate,ot_immediate,ot_none);
     code    : #241#2#15#120#128#21#22;
     code    : #241#2#15#120#128#21#22;
     flags   : if_sse4 or if_sb
     flags   : if_sse4 or if_sb
   ),
   ),
   (
   (
     opcode  : A_EXTRQ;
     opcode  : A_EXTRQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmreg,ot_none);
+    optypes : (ot_xmmreg,ot_xmmreg,ot_none,ot_none);
     code    : #241#2#15#121#72;
     code    : #241#2#15#121#72;
     flags   : if_sse4
     flags   : if_sse4
   ),
   ),
   (
   (
     opcode  : A_LZCNT;
     opcode  : A_LZCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_rm_gpr,ot_none);
+    optypes : (ot_reg16,ot_rm_gpr,ot_none,ot_none);
     code    : #208#219#2#15#189#72;
     code    : #208#219#2#15#189#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_LZCNT;
     opcode  : A_LZCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_none);
+    optypes : (ot_reg32 or ot_bits64,ot_rm_gpr,ot_none,ot_none);
     code    : #209#219#2#15#189#72;
     code    : #209#219#2#15#189#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_PABSB;
     opcode  : A_PABSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#28#72;
     code    : #217#3#15#56#28#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSB;
     opcode  : A_PABSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#28#72;
     code    : #241#3#15#56#28#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSW;
     opcode  : A_PABSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#29#72;
     code    : #217#3#15#56#29#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSW;
     opcode  : A_PABSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#29#72;
     code    : #241#3#15#56#29#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSD;
     opcode  : A_PABSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#30#72;
     code    : #217#3#15#56#30#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PABSD;
     opcode  : A_PABSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#30#72;
     code    : #241#3#15#56#30#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PALIGNR;
     opcode  : A_PALIGNR;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_immediate,ot_none);
     code    : #217#3#15#58#15#72#22;
     code    : #217#3#15#58#15#72#22;
     flags   : if_ssse3 or if_mmx or if_sm2 or if_sb or if_ar2
     flags   : if_ssse3 or if_mmx or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PALIGNR;
     opcode  : A_PALIGNR;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#15#72#22;
     code    : #241#3#15#58#15#72#22;
     flags   : if_ssse3 or if_sm2 or if_sb or if_ar2
     flags   : if_ssse3 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PHADDW;
     opcode  : A_PHADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#1#72;
     code    : #217#3#15#56#1#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDW;
     opcode  : A_PHADDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#1#72;
     code    : #241#3#15#56#1#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDD;
     opcode  : A_PHADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#2#72;
     code    : #217#3#15#56#2#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDD;
     opcode  : A_PHADDD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#2#72;
     code    : #241#3#15#56#2#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDSW;
     opcode  : A_PHADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#3#72;
     code    : #217#3#15#56#3#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHADDSW;
     opcode  : A_PHADDSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#3#72;
     code    : #241#3#15#56#3#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBW;
     opcode  : A_PHSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#5#72;
     code    : #217#3#15#56#5#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBW;
     opcode  : A_PHSUBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#5#72;
     code    : #241#3#15#56#5#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBD;
     opcode  : A_PHSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#6#72;
     code    : #217#3#15#56#6#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBD;
     opcode  : A_PHSUBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#6#72;
     code    : #241#3#15#56#6#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBSW;
     opcode  : A_PHSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#7#72;
     code    : #217#3#15#56#7#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PHSUBSW;
     opcode  : A_PHSUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#7#72;
     code    : #241#3#15#56#7#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMADDUBSW;
     opcode  : A_PMADDUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#4#72;
     code    : #217#3#15#56#4#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMADDUBSW;
     opcode  : A_PMADDUBSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#4#72;
     code    : #241#3#15#56#4#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHRSW;
     opcode  : A_PMULHRSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#11#72;
     code    : #217#3#15#56#11#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULHRSW;
     opcode  : A_PMULHRSW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#11#72;
     code    : #241#3#15#56#11#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFB;
     opcode  : A_PSHUFB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#0#72;
     code    : #217#3#15#56#0#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSHUFB;
     opcode  : A_PSHUFB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#0#72;
     code    : #241#3#15#56#0#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNB;
     opcode  : A_PSIGNB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#8#72;
     code    : #217#3#15#56#8#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNB;
     opcode  : A_PSIGNB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#8#72;
     code    : #241#3#15#56#8#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNW;
     opcode  : A_PSIGNW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#9#72;
     code    : #217#3#15#56#9#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGNW;
     opcode  : A_PSIGNW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#9#72;
     code    : #241#3#15#56#9#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGND;
     opcode  : A_PSIGND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_mmxreg,ot_mmxrm,ot_none);
+    optypes : (ot_mmxreg,ot_mmxrm,ot_none,ot_none);
     code    : #217#3#15#56#10#72;
     code    : #217#3#15#56#10#72;
     flags   : if_ssse3 or if_mmx or if_sm
     flags   : if_ssse3 or if_mmx or if_sm
   ),
   ),
   (
   (
     opcode  : A_PSIGND;
     opcode  : A_PSIGND;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#10#72;
     code    : #241#3#15#56#10#72;
     flags   : if_ssse3 or if_sm
     flags   : if_ssse3 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BLENDPS;
     opcode  : A_BLENDPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#12#72#22;
     code    : #241#3#15#58#12#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_BLENDPD;
     opcode  : A_BLENDPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#13#72#22;
     code    : #241#3#15#58#13#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_BLENDVPS;
     opcode  : A_BLENDVPS;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#20#72;
     code    : #241#3#15#56#20#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_BLENDVPD;
     opcode  : A_BLENDVPD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#21#72;
     code    : #241#3#15#56#21#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_DPPS;
     opcode  : A_DPPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#64#72#22;
     code    : #241#3#15#58#64#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_DPPD;
     opcode  : A_DPPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#65#72#22;
     code    : #241#3#15#58#65#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_EXTRACTPS;
     opcode  : A_EXTRACTPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#213#3#15#58#23#65#22;
     code    : #241#213#3#15#58#23#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_EXTRACTPS;
     opcode  : A_EXTRACTPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#23#65#22;
     code    : #241#3#15#58#23#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_INSERTPS;
     opcode  : A_INSERTPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#33#72#22;
     code    : #241#3#15#58#33#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_MOVNTDQA;
     opcode  : A_MOVNTDQA;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_memory,ot_none);
+    optypes : (ot_xmmreg,ot_memory,ot_none,ot_none);
     code    : #241#3#15#56#42#72;
     code    : #241#3#15#56#42#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_MPSADBW;
     opcode  : A_MPSADBW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#66#72#22;
     code    : #241#3#15#58#66#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PACKUSDW;
     opcode  : A_PACKUSDW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#43#72;
     code    : #241#3#15#56#43#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PBLENDVB;
     opcode  : A_PBLENDVB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#16#72;
     code    : #241#3#15#56#16#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PBLENDW;
     opcode  : A_PBLENDW;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#14#72#22;
     code    : #241#3#15#58#14#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPEQQ;
     opcode  : A_PCMPEQQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#41#72;
     code    : #241#3#15#56#41#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PEXTRB;
     opcode  : A_PEXTRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32 or ot_bits64,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#20#65#22;
     code    : #241#3#15#58#20#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRB;
     opcode  : A_PEXTRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits8,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#20#65#22;
     code    : #241#3#15#58#20#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRD;
     opcode  : A_PEXTRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg32,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#22#65#22;
     code    : #241#3#15#58#22#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRD;
     opcode  : A_PEXTRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits32,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#3#15#58#22#65#22;
     code    : #241#3#15#58#22#65#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRQ;
     opcode  : A_PEXTRQ;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_reg64,ot_xmmreg,ot_immediate);
+    optypes : (ot_reg64,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#214#3#15#58#22#65#22;
     code    : #241#214#3#15#58#22#65#22;
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PEXTRQ;
     opcode  : A_PEXTRQ;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_immediate);
+    optypes : (ot_memory or ot_bits64,ot_xmmreg,ot_immediate,ot_none);
     code    : #241#214#3#15#58#22#65#22;
     code    : #241#214#3#15#58#22#65#22;
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PHMINPOSUW;
     opcode  : A_PHMINPOSUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#65#72;
     code    : #241#3#15#56#65#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PINSRB;
     opcode  : A_PINSRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg32 or ot_bits64,ot_immediate,ot_none);
     code    : #241#3#15#58#32#72#22;
     code    : #241#3#15#58#32#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRB;
     opcode  : A_PINSRB;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits8,ot_immediate,ot_none);
     code    : #241#3#15#58#32#72#22;
     code    : #241#3#15#58#32#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRD;
     opcode  : A_PINSRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg32,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg32,ot_immediate,ot_none);
     code    : #241#3#15#58#34#72#22;
     code    : #241#3#15#58#34#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRD;
     opcode  : A_PINSRD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits32,ot_immediate,ot_none);
     code    : #241#3#15#58#34#72#22;
     code    : #241#3#15#58#34#72#22;
     flags   : if_sse41 or if_sb or if_ar2
     flags   : if_sse41 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRQ;
     opcode  : A_PINSRQ;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_reg64,ot_immediate);
+    optypes : (ot_xmmreg,ot_reg64,ot_immediate,ot_none);
     code    : #241#214#3#15#58#34#72#22;
     code    : #241#214#3#15#58#34#72#22;
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PINSRQ;
     opcode  : A_PINSRQ;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_immediate);
+    optypes : (ot_xmmreg,ot_memory or ot_bits64,ot_immediate,ot_none);
     code    : #241#214#3#15#58#34#72#22;
     code    : #241#214#3#15#58#34#72#22;
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
     flags   : if_sse41 or if_x86_64 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PMAXSB;
     opcode  : A_PMAXSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#60#72;
     code    : #241#3#15#56#60#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXSD;
     opcode  : A_PMAXSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#61#72;
     code    : #241#3#15#56#61#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUD;
     opcode  : A_PMAXUD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#63#72;
     code    : #241#3#15#56#63#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMAXUW;
     opcode  : A_PMAXUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#62#72;
     code    : #241#3#15#56#62#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSB;
     opcode  : A_PMINSB;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#56#72;
     code    : #241#3#15#56#56#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINSD;
     opcode  : A_PMINSD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#57#72;
     code    : #241#3#15#56#57#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUW;
     opcode  : A_PMINUW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#58#72;
     code    : #241#3#15#56#58#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMINUD;
     opcode  : A_PMINUD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#59#72;
     code    : #241#3#15#56#59#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXBW;
     opcode  : A_PMOVSXBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#32#72;
     code    : #241#3#15#56#32#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXBD;
     opcode  : A_PMOVSXBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#33#72;
     code    : #241#3#15#56#33#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXBQ;
     opcode  : A_PMOVSXBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#34#72;
     code    : #241#3#15#56#34#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXWD;
     opcode  : A_PMOVSXWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#35#72;
     code    : #241#3#15#56#35#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXWQ;
     opcode  : A_PMOVSXWQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#36#72;
     code    : #241#3#15#56#36#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVSXDQ;
     opcode  : A_PMOVSXDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#37#72;
     code    : #241#3#15#56#37#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXBW;
     opcode  : A_PMOVZXBW;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#48#72;
     code    : #241#3#15#56#48#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXBD;
     opcode  : A_PMOVZXBD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#49#72;
     code    : #241#3#15#56#49#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXBQ;
     opcode  : A_PMOVZXBQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#50#72;
     code    : #241#3#15#56#50#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXWD;
     opcode  : A_PMOVZXWD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#51#72;
     code    : #241#3#15#56#51#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXWQ;
     opcode  : A_PMOVZXWQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#52#72;
     code    : #241#3#15#56#52#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMOVZXDQ;
     opcode  : A_PMOVZXDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#53#72;
     code    : #241#3#15#56#53#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULDQ;
     opcode  : A_PMULDQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#40#72;
     code    : #241#3#15#56#40#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PMULLD;
     opcode  : A_PMULLD;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#64#72;
     code    : #241#3#15#56#64#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_PTEST;
     opcode  : A_PTEST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#23#72;
     code    : #241#3#15#56#23#72;
     flags   : if_sse41 or if_sm
     flags   : if_sse41 or if_sm
   ),
   ),
   (
   (
     opcode  : A_ROUNDPS;
     opcode  : A_ROUNDPS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#8#72#22;
     code    : #241#3#15#58#8#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_ROUNDPD;
     opcode  : A_ROUNDPD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#9#72#22;
     code    : #241#3#15#58#9#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_ROUNDSS;
     opcode  : A_ROUNDSS;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#10#72#22;
     code    : #241#3#15#58#10#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_ROUNDSD;
     opcode  : A_ROUNDSD;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#11#72#22;
     code    : #241#3#15#58#11#72#22;
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
     flags   : if_sse41 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_CRC32;
     opcode  : A_CRC32;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg32,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #220#3#15#56#240#72;
     code    : #220#3#15#56#240#72;
     flags   : if_sse42
     flags   : if_sse42
   ),
   ),
   (
   (
     opcode  : A_CRC32;
     opcode  : A_CRC32;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none);
+    optypes : (ot_reg32,ot_rm_gpr or ot_bits16 or ot_bits32,ot_none,ot_none);
     code    : #209#220#3#15#56#241#72;
     code    : #209#220#3#15#56#241#72;
     flags   : if_sse42
     flags   : if_sse42
   ),
   ),
   (
   (
     opcode  : A_CRC32;
     opcode  : A_CRC32;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_rm_gpr or ot_bits8,ot_none);
+    optypes : (ot_reg64,ot_rm_gpr or ot_bits8,ot_none,ot_none);
     code    : #220#214#3#15#56#240#72;
     code    : #220#214#3#15#56#240#72;
     flags   : if_sse42 or if_x86_64
     flags   : if_sse42 or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_CRC32;
     opcode  : A_CRC32;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_rm_gpr or ot_bits64,ot_none);
+    optypes : (ot_reg64,ot_rm_gpr or ot_bits64,ot_none,ot_none);
     code    : #220#214#3#15#56#241#72;
     code    : #220#214#3#15#56#241#72;
     flags   : if_sse42 or if_x86_64
     flags   : if_sse42 or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_PCMPESTRI;
     opcode  : A_PCMPESTRI;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#97#72#22;
     code    : #241#3#15#58#97#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPESTRM;
     opcode  : A_PCMPESTRM;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#96#72#22;
     code    : #241#3#15#58#96#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPISTRI;
     opcode  : A_PCMPISTRI;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#99#72#22;
     code    : #241#3#15#58#99#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPISTRM;
     opcode  : A_PCMPISTRM;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#98#72#22;
     code    : #241#3#15#58#98#72#22;
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
     flags   : if_sse42 or if_sm2 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_PCMPGTQ;
     opcode  : A_PCMPGTQ;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#55#72;
     code    : #241#3#15#56#55#72;
     flags   : if_sse42 or if_sm
     flags   : if_sse42 or if_sm
   ),
   ),
   (
   (
     opcode  : A_POPCNT;
     opcode  : A_POPCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg16,ot_rm_gpr or ot_bits16,ot_none);
+    optypes : (ot_reg16,ot_rm_gpr or ot_bits16,ot_none,ot_none);
     code    : #219#208#2#15#184#72;
     code    : #219#208#2#15#184#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_POPCNT;
     opcode  : A_POPCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg32,ot_rm_gpr or ot_bits32,ot_none);
+    optypes : (ot_reg32,ot_rm_gpr or ot_bits32,ot_none,ot_none);
     code    : #219#208#2#15#184#72;
     code    : #219#208#2#15#184#72;
     flags   : if_386 or if_sm or if_sse4
     flags   : if_386 or if_sm or if_sse4
   ),
   ),
   (
   (
     opcode  : A_POPCNT;
     opcode  : A_POPCNT;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_reg64,ot_rm_gpr or ot_bits64,ot_none);
+    optypes : (ot_reg64,ot_rm_gpr or ot_bits64,ot_none,ot_none);
     code    : #219#208#2#15#184#72;
     code    : #219#208#2#15#184#72;
     flags   : if_386 or if_sm or if_sse4 or if_x86_64
     flags   : if_386 or if_sm or if_sse4 or if_x86_64
   ),
   ),
   (
   (
     opcode  : A_AESENC;
     opcode  : A_AESENC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#220#72;
     code    : #241#3#15#56#220#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESENCLAST;
     opcode  : A_AESENCLAST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#221#72;
     code    : #241#3#15#56#221#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESDEC;
     opcode  : A_AESDEC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#222#72;
     code    : #241#3#15#56#222#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESDECLAST;
     opcode  : A_AESDECLAST;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#223#72;
     code    : #241#3#15#56#223#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESIMC;
     opcode  : A_AESIMC;
     ops     : 2;
     ops     : 2;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_none);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_none,ot_none);
     code    : #241#3#15#56#219#72;
     code    : #241#3#15#56#219#72;
     flags   : if_sse4 or if_sm
     flags   : if_sse4 or if_sm
   ),
   ),
   (
   (
     opcode  : A_AESKEYGENASSIST;
     opcode  : A_AESKEYGENASSIST;
     ops     : 3;
     ops     : 3;
-    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate);
+    optypes : (ot_xmmreg,ot_xmmrm,ot_immediate,ot_none);
     code    : #241#3#15#58#223#72#22;
     code    : #241#3#15#58#223#72#22;
     flags   : if_sse4 or if_sb or if_ar2
     flags   : if_sse4 or if_sb or if_ar2
   ),
   ),
   (
   (
     opcode  : A_STOSQ;
     opcode  : A_STOSQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#171;
     code    : #214#1#171;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_LODSQ;
     opcode  : A_LODSQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#173;
     code    : #214#1#173;
     flags   : if_x86_64
     flags   : if_x86_64
   ),
   ),
   (
   (
     opcode  : A_CMPSQ;
     opcode  : A_CMPSQ;
     ops     : 0;
     ops     : 0;
-    optypes : (ot_none,ot_none,ot_none);
+    optypes : (ot_none,ot_none,ot_none,ot_none);
     code    : #214#1#167;
     code    : #214#1#167;
     flags   : if_x86_64
     flags   : if_x86_64
   )
   )

+ 39 - 0
tests/webtbs/tw19910.pp

@@ -0,0 +1,39 @@
+{ %cpu=i386 }
+procedure p1;assembler;
+  asm
+    INSERTQ $1,$3,%xmm0,%xmm1
+  end;
+
+{$asmmode intel}
+procedure p2;assembler;
+  asm
+    INSERTQ xmm1,xmm0,3,1
+  end;
+
+
+const
+  test_expected : array[0..5] of byte = (
+    $F2,$0F,$78,$C8,$03,$01);
+
+var
+  i : longint;
+
+
+begin
+  for i:=0 to high(test_expected) do
+    if test_expected[i]<>pbyte(@p1)[i] then
+      begin
+        writeln('mismatch at offset $',hexstr(i,4), ', expected=$',
+          hexstr(test_expected[i],2),' actual=$',hexstr(pbyte(@p1)[i],2));
+        halt(1);
+      end;
+  for i:=0 to high(test_expected) do
+    if test_expected[i]<>pbyte(@p2)[i] then
+      begin
+        writeln('mismatch at offset $',hexstr(i,4), ', expected=$',
+          hexstr(test_expected[i],2),' actual=$',hexstr(pbyte(@p2)[i],2));
+        halt(1);
+      end;
+  writeln('ok');
+end.
+