]> granicus.if.org Git - yasm/commitdiff
Align inst the same as !grp to improve readability.
authorPeter Johnson <peter@tortall.net>
Thu, 5 Jul 2001 09:39:30 +0000 (09:39 -0000)
committerPeter Johnson <peter@tortall.net>
Thu, 5 Jul 2001 09:39:30 +0000 (09:39 -0000)
svn path=/trunk/yasm/; revision=114

src/instrs.dat

index e1873a8365232049359fe55cc83b041bba4425a7..95b7bd352dc8f3859622d9c421c1b4a3ccfe619a 100644 (file)
@@ -1,4 +1,4 @@
-; $Id: instrs.dat,v 1.28 2001/07/05 09:30:04 peter Exp $
+; $Id: instrs.dat,v 1.29 2001/07/05 09:39:30 peter Exp $
 ; List of valid instruction/operand combinations
 ;
 ;    Copyright (C) 2001  Peter Johnson
@@ -92,7 +92,7 @@
 ; KEY
 ;
 ; !Grp Operands                OpSize  Opcode          EffAddr         Imm     CPU
-; Inst Operands                OpSize  Opcode          EffAddr Imm     CPU
+; Inst Operands                OpSize  Opcode          EffAddr         Imm     CPU
 ; Inst!Grp             Parameters      CPU @0          CPU @1
 ;
 ; Groupings used throughout
 ; Move instructions
 ;
 ; opcode arbitrarily picked for next 3 (could be 8A/8B instead of 88/89).
-mov    reg8,reg8               nil     88              $1r,$2  nil     8086
-mov    reg16,reg16             16      89              $1r,$2  nil     8086
-mov    reg32,reg32             32      89              $1r,$2  nil     386
-mov    mem,reg8                nil     88              $1,$2   nil     8086
-mov    mem8x,reg8              nil     88              $1,$2   nil     8086
-mov    mem,reg16               16      89              $1,$2   nil     8086
-mov    mem16x,reg16            16      89              $1,$2   nil     8086
-mov    mem,reg32               32      89              $1,$2   nil     386
-mov    mem32x,reg32            32      89              $1,$2   nil     386
-mov    reg8,mem8               nil     8A              $2,$1   nil     8086
-mov    reg16,mem16             16      8B              $2,$1   nil     8086
-mov    reg32,mem32             32      8B              $2,$1   nil     386
-mov    mem,segreg              nil     8C              $1,$2   nil     8086
-mov    reg16,segreg            16      8C              $1r,$2  nil     8086
-mov    mem16x,segreg           16      8C              $1,$2   nil     8086
-mov    reg32,segreg            32      8C              $1r,$2  nil     386
-mov    mem32x,segreg           32      8C              $1,$2   nil     386
-mov    segreg,mem              nil     8E              $2,$1   nil     8086
-mov    segreg,rm16x            nil     8E              $2,$1   nil     8086
-mov    segreg,rm32x            nil     8E              $2,$1   nil     386
+mov    reg8,reg8               nil     88              $1r,$2          nil     8086
+mov    reg16,reg16             16      89              $1r,$2          nil     8086
+mov    reg32,reg32             32      89              $1r,$2          nil     386
+mov    mem,reg8                nil     88              $1,$2           nil     8086
+mov    mem8x,reg8              nil     88              $1,$2           nil     8086
+mov    mem,reg16               16      89              $1,$2           nil     8086
+mov    mem16x,reg16            16      89              $1,$2           nil     8086
+mov    mem,reg32               32      89              $1,$2           nil     386
+mov    mem32x,reg32            32      89              $1,$2           nil     386
+mov    reg8,mem8               nil     8A              $2,$1           nil     8086
+mov    reg16,mem16             16      8B              $2,$1           nil     8086
+mov    reg32,mem32             32      8B              $2,$1           nil     386
+mov    mem,segreg              nil     8C              $1,$2           nil     8086
+mov    reg16,segreg            16      8C              $1r,$2          nil     8086
+mov    mem16x,segreg           16      8C              $1,$2           nil     8086
+mov    reg32,segreg            32      8C              $1r,$2          nil     386
+mov    mem32x,segreg           32      8C              $1,$2           nil     386
+mov    segreg,mem              nil     8E              $2,$1           nil     8086
+mov    segreg,rm16x            nil     8E              $2,$1           nil     8086
+mov    segreg,rm32x            nil     8E              $2,$1           nil     386
 ;mov   REG_AL,memoff8
 ;mov   REG_AX,memoff16
 ;mov   REG_EAX,memoff32
 ;mov   memoff8,REG_AL
 ;mov   memoff16,REG_AX
 ;mov   memoff32,REG_EAX
-mov    reg8,imm8               nil     B0+$1           nil     $2,8    8086
-mov    reg16,imm16             16      B8+$1           nil     $2,16   8086
-mov    reg32,imm32             32      B8+$1           nil     $2,32   386
-mov    mem8x,imm8              nil     C6              $1,0    $2,8    8086
-mov    mem,imm8x               nil     C6              $1,0    $2,8    8086
-mov    mem16x,imm16            16      C7              $1,0    $2,16   8086
-mov    mem,imm16x              16      C7              $1,0    $2,16   8086
-mov    mem32x,imm32            32      C7              $1,0    $2,32   8086
-mov    mem,imm32x              32      C7              $1,0    $2,32   8086
-mov    CRREG_NOTCR4,reg32      nil     0F,22           $2r,$1  nil     386,PRIV
-mov    CR4,reg32               nil     0F,22           $2r,$1  nil     P5,PRIV
-mov    reg32,CRREG_NOTCR4      nil     0F,20           $1r,$2  nil     386,PRIV
-mov    reg32,CR4               nil     0F,20           $1r,$2  nil     P5,PRIV
-mov    reg32,DRREG             nil     0F,21           $1r,$2  nil     386,PRIV
-mov    DRREG,reg32             nil     0F,23           $2r,$1  nil     386,PRIV
+mov    reg8,imm8               nil     B0+$1           nil             $2,8    8086
+mov    reg16,imm16             16      B8+$1           nil             $2,16   8086
+mov    reg32,imm32             32      B8+$1           nil             $2,32   386
+mov    mem8x,imm8              nil     C6              $1,0            $2,8    8086
+mov    mem,imm8x               nil     C6              $1,0            $2,8    8086
+mov    mem16x,imm16            16      C7              $1,0            $2,16   8086
+mov    mem,imm16x              16      C7              $1,0            $2,16   8086
+mov    mem32x,imm32            32      C7              $1,0            $2,32   8086
+mov    mem,imm32x              32      C7              $1,0            $2,32   8086
+mov    CRREG_NOTCR4,reg32      nil     0F,22           $2r,$1          nil     386,PRIV
+mov    CR4,reg32               nil     0F,22           $2r,$1          nil     P5,PRIV
+mov    reg32,CRREG_NOTCR4      nil     0F,20           $1r,$2          nil     386,PRIV
+mov    reg32,CR4               nil     0F,20           $1r,$2          nil     P5,PRIV
+mov    reg32,DRREG             nil     0F,21           $1r,$2          nil     386,PRIV
+mov    DRREG,reg32             nil     0F,23           $2r,$1          nil     386,PRIV
 ;
 ; Move with sign/zero extend
 ;
@@ -163,34 +163,34 @@ movzx!movszx              B6
 ;
 ; Push instructions
 ;
-push   mem16x                  16      FF              $1,6    nil     8086
-push   mem32x                  32      FF              $1,6    nil     386
-push   reg16                   16      50+$1           nil     nil     8086
-push   reg32                   32      50+$1           nil     nil     386
-push   imm8x                   nil     6A              nil     $1,8    8086
-push   imm16x                  16      68              nil     $1,16   8086
-push   imm32x                  32      68              nil     $1,32   386
-push   REG_CS                  nil     0E              nil     nil     8086
-push   REG_SS                  nil     16              nil     nil     8086
-push   REG_DS                  nil     1E              nil     nil     8086
-push   REG_ES                  nil     06              nil     nil     8086
-push   REG_FS                  nil     0F,A0           nil     nil     386
-push   REG_GS                  nil     0F,A8           nil     nil     386
+push   mem16x                  16      FF              $1,6            nil     8086
+push   mem32x                  32      FF              $1,6            nil     386
+push   reg16                   16      50+$1           nil             nil     8086
+push   reg32                   32      50+$1           nil             nil     386
+push   imm8x                   nil     6A              nil             $1,8    8086
+push   imm16x                  16      68              nil             $1,16   8086
+push   imm32x                  32      68              nil             $1,32   386
+push   REG_CS                  nil     0E              nil             nil     8086
+push   REG_SS                  nil     16              nil             nil     8086
+push   REG_DS                  nil     1E              nil             nil     8086
+push   REG_ES                  nil     06              nil             nil     8086
+push   REG_FS                  nil     0F,A0           nil             nil     386
+push   REG_GS                  nil     0F,A8           nil             nil     386
 pusha!onebyte          nil,60          186
 pushad!onebyte         20,60           386
 pushaw!onebyte         10,60           186
 ;
 ; Pop instructions
 ;
-pop    mem16x                  16      8F              $1,0    nil     8086
-pop    mem32x                  32      8F              $1,0    nil     386
-pop    reg16                   16      58+$1           nil     nil     8086
-pop    reg32                   32      58+$1           nil     nil     386
-pop    REG_DS                  nil     1F              nil     nil     8086
-pop    REG_ES                  nil     07              nil     nil     8086
-pop    REG_SS                  nil     17              nil     nil     8086
-pop    REG_FS                  nil     0F,A1           nil     nil     386
-pop    REG_GS                  nil     0F,A9           nil     nil     386
+pop    mem16x                  16      8F              $1,0            nil     8086
+pop    mem32x                  32      8F              $1,0            nil     386
+pop    reg16                   16      58+$1           nil             nil     8086
+pop    reg32                   32      58+$1           nil             nil     386
+pop    REG_DS                  nil     1F              nil             nil     8086
+pop    REG_ES                  nil     07              nil             nil     8086
+pop    REG_SS                  nil     17              nil             nil     8086
+pop    REG_FS                  nil     0F,A1           nil             nil     386
+pop    REG_GS                  nil     0F,A9           nil             nil     386
 popa!onebyte           nil,61          186
 popad!onebyte          20,61           386
 popaw!onebyte          10,61           186
@@ -198,57 +198,57 @@ popaw!onebyte             10,61           186
 ; Exchange instructions
 ;
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-xchg   reg8,reg8               nil     86              $1r,$2  nil     8086
-xchg   mem,reg8                nil     86              $1,$2   nil     8086
-xchg   mem8x,reg8              nil     86              $1,$2   nil     8086
-xchg   reg8,mem8               nil     86              $2,$1   nil     8086
-xchg   REG_AX,reg16            16      90+$2           nil     nil     8086
-xchg   reg16,REG_AX            16      90+$1           nil     nil     8086
+xchg   reg8,reg8               nil     86              $1r,$2          nil     8086
+xchg   mem,reg8                nil     86              $1,$2           nil     8086
+xchg   mem8x,reg8              nil     86              $1,$2           nil     8086
+xchg   reg8,mem8               nil     86              $2,$1           nil     8086
+xchg   REG_AX,reg16            16      90+$2           nil             nil     8086
+xchg   reg16,REG_AX            16      90+$1           nil             nil     8086
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-xchg   reg16,reg16             16      87              $1r,$2  nil     8086
-xchg   mem,reg16               16      87              $1,$2   nil     8086
-xchg   mem16x,reg16            16      87              $1,$2   nil     8086
-xchg   reg16,mem16             16      87              $2,$1   nil     8086
-xchg   REG_EAX,reg32           32      90+$2           nil     nil     386
-xchg   reg32,REG_EAX           32      90+$1           nil     nil     386
+xchg   reg16,reg16             16      87              $1r,$2          nil     8086
+xchg   mem,reg16               16      87              $1,$2           nil     8086
+xchg   mem16x,reg16            16      87              $1,$2           nil     8086
+xchg   reg16,mem16             16      87              $2,$1           nil     8086
+xchg   REG_EAX,reg32           32      90+$2           nil             nil     386
+xchg   reg32,REG_EAX           32      90+$1           nil             nil     386
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-xchg   reg32,reg32             32      87              $1r,$2  nil     386
-xchg   mem,reg32               32      87              $1,$2   nil     386
-xchg   mem32x,reg32            32      87              $1,$2   nil     386
-xchg   reg32,mem32             32      87              $2,$1   nil     386
+xchg   reg32,reg32             32      87              $1r,$2          nil     386
+xchg   mem,reg32               32      87              $1,$2           nil     386
+xchg   mem32x,reg32            32      87              $1,$2           nil     386
+xchg   reg32,mem32             32      87              $2,$1           nil     386
 ;
 ; In/out from ports
 ;
-in     REG_AL,imm8             nil     E4              nil     $2,8    8086
-in     REG_AX,imm8             16      E5              nil     $2,8    8086
-in     REG_EAX,imm8            32      E5              nil     $2,8    386
-in     REG_AL,REG_DX           nil     EC              nil     nil     8086
-in     REG_AX,REG_DX           16      ED              nil     nil     8086
-in     REG_EAX,REG_DX          32      ED              nil     nil     386
-out    imm8,REG_AL             nil     E6              nil     $1,8    8086
-out    imm8,REG_AX             16      E7              nil     $1,8    8086
-out    imm8,REG_EAX            32      E7              nil     $1,8    386
-out    REG_DX,REG_AL           nil     EE              nil     nil     8086
-out    REG_DX,REG_AX           16      EF              nil     nil     8086
-out    REG_DX,REG_EAX          32      EF              nil     nil     386
+in     REG_AL,imm8             nil     E4              nil             $2,8    8086
+in     REG_AX,imm8             16      E5              nil             $2,8    8086
+in     REG_EAX,imm8            32      E5              nil             $2,8    386
+in     REG_AL,REG_DX           nil     EC              nil             nil     8086
+in     REG_AX,REG_DX           16      ED              nil             nil     8086
+in     REG_EAX,REG_DX          32      ED              nil             nil     386
+out    imm8,REG_AL             nil     E6              nil             $1,8    8086
+out    imm8,REG_AX             16      E7              nil             $1,8    8086
+out    imm8,REG_EAX            32      E7              nil             $1,8    386
+out    REG_DX,REG_AL           nil     EE              nil             nil     8086
+out    REG_DX,REG_AX           16      EF              nil             nil     8086
+out    REG_DX,REG_EAX          32      EF              nil             nil     386
 ;
 ; Load effective address
 ;
-lea    reg16,mem16             16      8D              $2,$1   nil     8086
-lea    reg32,mem32             32      8D              $2,$1   nil     386
+lea    reg16,mem16             16      8D              $2,$1           nil     8086
+lea    reg32,mem32             32      8D              $2,$1           nil     386
 ;
 ; Load segment registers from memory
 ;
-lds    reg16,mem               16      C5              $2,$1   nil     8086
-lds    reg32,mem               32      C5              $2,$1   nil     386
-les    reg16,mem               16      C4              $2,$1   nil     8086
-les    reg32,mem               32      C4              $2,$1   nil     386
-lfs    reg16,mem               16      0F,B4           $2,$1   nil     386
-lfs    reg32,mem               32      0F,B4           $2,$1   nil     386
-lgs    reg16,mem               16      0F,B5           $2,$1   nil     386
-lgs    reg32,mem               32      0F,B5           $2,$1   nil     386
-lss    reg16,mem               16      0F,B2           $2,$1   nil     386
-lss    reg32,mem               32      0F,B2           $2,$1   nil     386
+lds    reg16,mem               16      C5              $2,$1           nil     8086
+lds    reg32,mem               32      C5              $2,$1           nil     386
+les    reg16,mem               16      C4              $2,$1           nil     8086
+les    reg32,mem               32      C4              $2,$1           nil     386
+lfs    reg16,mem               16      0F,B4           $2,$1           nil     386
+lfs    reg32,mem               32      0F,B4           $2,$1           nil     386
+lgs    reg16,mem               16      0F,B5           $2,$1           nil     386
+lgs    reg32,mem               32      0F,B5           $2,$1           nil     386
+lss    reg16,mem               16      0F,B2           $2,$1           nil     386
+lss    reg32,mem               32      0F,B2           $2,$1           nil     386
 ;
 ; Flags register instructions
 ;
@@ -319,31 +319,31 @@ sub!arith         28,5
 dec!incdec             1,48
 sbb!arith              18,3
 cmp!arith              38,7
-test   REG_AL,imm8             nil     A8              nil     $2,8    8086
-test   REG_AX,imm16            16      A9              nil     $2,16   8086
-test   REG_EAX,imm32           32      A9              nil     $2,32   386
-test   reg8,imm8               nil     F6              $1r,0   $2,8    8086
-test   mem8x,imm               nil     F6              $1,0    $2,8    8086
-test   mem,imm8x               nil     F6              $1,0    $2,8    8086
-test   reg16,imm16             16      F7              $1r,0   $2,16   8086
-test   mem16x,imm              16      F7              $1,0    $2,16   8086
-test   mem,imm16x              16      F7              $1,0    $2,16   8086
-test   reg32,imm32             32      F7              $1r,0   $2,32   386
-test   mem32x,imm              32      F7              $1,0    $2,32   386
-test   mem,imm32x              32      F7              $1,0    $2,32   386
+test   REG_AL,imm8             nil     A8              nil             $2,8    8086
+test   REG_AX,imm16            16      A9              nil             $2,16   8086
+test   REG_EAX,imm32           32      A9              nil             $2,32   386
+test   reg8,imm8               nil     F6              $1r,0           $2,8    8086
+test   mem8x,imm               nil     F6              $1,0            $2,8    8086
+test   mem,imm8x               nil     F6              $1,0            $2,8    8086
+test   reg16,imm16             16      F7              $1r,0           $2,16   8086
+test   mem16x,imm              16      F7              $1,0            $2,16   8086
+test   mem,imm16x              16      F7              $1,0            $2,16   8086
+test   reg32,imm32             32      F7              $1r,0           $2,32   386
+test   mem32x,imm              32      F7              $1,0            $2,32   386
+test   mem,imm32x              32      F7              $1,0            $2,32   386
 ; arbitrary encoding for next 3, picked $1r,$2 instead of $2r,$1
-test   reg8,reg8               nil     84              $1r,$2  nil     8086
-test   reg16,reg16             16      85              $1r,$2  nil     8086
-test   reg32,reg32             32      85              $1r,$2  nil     386
-test   mem,reg8                nil     84              $1,$2   nil     8086
-test   mem8x,reg8              nil     84              $1,$2   nil     8086
-test   mem,reg16               16      85              $1,$2   nil     8086
-test   mem16x,reg16            16      85              $1,$2   nil     8086
-test   mem,reg32               32      85              $1,$2   nil     386
-test   mem32x,reg32            32      85              $1,$2   nil     386
-test   reg8,mem8               nil     84              $2,$1   nil     8086
-test   reg16,mem16             16      85              $2,$1   nil     8086
-test   reg32,mem32             32      85              $2,$1   nil     386
+test   reg8,reg8               nil     84              $1r,$2          nil     8086
+test   reg16,reg16             16      85              $1r,$2          nil     8086
+test   reg32,reg32             32      85              $1r,$2          nil     386
+test   mem,reg8                nil     84              $1,$2           nil     8086
+test   mem8x,reg8              nil     84              $1,$2           nil     8086
+test   mem,reg16               16      85              $1,$2           nil     8086
+test   mem16x,reg16            16      85              $1,$2           nil     8086
+test   mem,reg32               32      85              $1,$2           nil     386
+test   mem32x,reg32            32      85              $1,$2           nil     386
+test   reg8,mem8               nil     84              $2,$1           nil     8086
+test   reg16,mem16             16      85              $2,$1           nil     8086
+test   reg32,mem32             32      85              $2,$1           nil     386
 and!arith              20,4
 or!arith               08,1
 xor!arith              30,6
@@ -354,10 +354,10 @@ aaa!onebyte               nil,37          8086
 aas!onebyte            nil,3F          8086
 daa!onebyte            nil,27          8086
 das!onebyte            nil,2F          8086
-aad    nil                     nil     D5,0A           nil     nil     8086
-aad    imm8                    nil     D5              nil     $1,8    8086
-aam    nil                     nil     D4,0A           nil     nil     8086
-aam    imm8                    nil     D4              nil     $1,8    8086
+aad    nil                     nil     D5,0A           nil             nil     8086
+aad    imm8                    nil     D5              nil             $1,8    8086
+aam    nil                     nil     D4,0A           nil             nil     8086
+aam    imm8                    nil     D4              nil             $1,8    8086
 ;
 ; Conversion instructions
 ;
@@ -369,19 +369,19 @@ cdq!onebyte               20,99           386
 ; Multiplication and division
 ;
 mul!groupf6            4
-imul   rm8x                    nil     F6              $1,5    nil     8086
-imul   rm16x                   16      F7              $1,5    nil     8086
-imul   rm32x                   32      F7              $1,5    nil     386
-imul   reg16,rm16              16      0F,AF           $2,$1   nil     386
-imul   reg32,rm32              32      0F,AF           $2,$1   nil     386
-imul   reg16,rm16,imm8x        16      6B              $2,$1   $3,8s   186
-imul   reg32,rm32,imm8x        32      6B              $2,$1   $3,8s   386
-imul   reg16,imm8x             16      6B              $1r,$1  $2,8s   186
-imul   reg32,imm8x             32      6B              $1r,$1  $2,8s   386
-imul   reg16,rm16,imm16        16      69              $2,$1   $3,16s  186
-imul   reg32,rm32,imm32        32      69              $2,$1   $3,32s  386
-imul   reg16,imm16             16      69              $1r,$1  $2,16s  186
-imul   reg32,imm32             32      69              $1r,$1  $2,32s  386
+imul   rm8x                    nil     F6              $1,5            nil     8086
+imul   rm16x                   16      F7              $1,5            nil     8086
+imul   rm32x                   32      F7              $1,5            nil     386
+imul   reg16,rm16              16      0F,AF           $2,$1           nil     386
+imul   reg32,rm32              32      0F,AF           $2,$1           nil     386
+imul   reg16,rm16,imm8x        16      6B              $2,$1           $3,8s   186
+imul   reg32,rm32,imm8x        32      6B              $2,$1           $3,8s   386
+imul   reg16,imm8x             16      6B              $1r,$1          $2,8s   186
+imul   reg32,imm8x             32      6B              $1r,$1          $2,8s   386
+imul   reg16,rm16,imm16        16      69              $2,$1           $3,16s  186
+imul   reg32,rm32,imm32        32      69              $2,$1           $3,32s  386
+imul   reg16,imm16             16      69              $1r,$1          $2,16s  186
+imul   reg32,imm32             32      69              $1r,$1          $2,32s  386
 div!groupf6            6
 idiv!groupf6           7
 ;
@@ -430,11 +430,11 @@ shrd!shlrd                AC
 ; call
 ; jmp
 ret!onebyte            nil,C3          8086
-retn   nil                     nil     C3              nil     nil     8086
-retf   nil                     nil     CB              nil     nil     8086
-retn   imm16                   nil     C2              nil     $1,16   8086
-retf   imm16                   nil     CA              nil     $1,16   8086
-enter  imm16,imm8              nil     C8              $1i,16  $2,8    186
+retn   nil                     nil     C3              nil             nil     8086
+retf   nil                     nil     CB              nil             nil     8086
+retn   imm16                   nil     C2              nil             $1,16   8086
+retf   imm16                   nil     CA              nil             $1,16   8086
+enter  imm16,imm8              nil     C8              $1i,16          $2,8    186
 leave!onebyte          nil,C9          186
 ;
 ; Conditional jumps
@@ -448,13 +448,13 @@ leave!onebyte             nil,C9          186
 ; loop
 ; loopcc:
 ;:loope        loopz
-;loopz imm1632                 nil     E1              nil     $1r,8s  8086
-;loopz imm1632,REG_CX          16      E1              nil     $1r,8s  8086
-;loopz imm1632,REG_ECX         32      E1              nil     $1r,8s  386
+;loopz imm1632                 nil     E1              nil             $1r,8s  8086
+;loopz imm1632,REG_CX          16      E1              nil             $1r,8s  8086
+;loopz imm1632,REG_ECX         32      E1              nil             $1r,8s  386
 ;:loopne       loopnz
-;loopnz        imm1632                 nil     E1              nil     $1r,8s  8086
-;loopnz        imm1632,REG_CX          16      E1              nil     $1r,8s  8086
-;loopnz        imm1632,REG_ECX         32      E1              nil     $1r,8s  386
+;loopnz        imm1632                 nil     E1              nil             $1r,8s  8086
+;loopnz        imm1632,REG_CX          16      E1              nil             $1r,8s  8086
+;loopnz        imm1632,REG_ECX         32      E1              nil             $1r,8s  386
 ;
 ; Set byte on flag instructions
 ;
@@ -465,7 +465,7 @@ leave!onebyte               nil,C9          186
 ;  NOTE: cmpsd,movsd can't go to !onebyte group because of other variations
 cmpsb!onebyte          nil,A6          8086
 cmpsw!onebyte          10,A7           8086
-cmpsd  nil                     32      A7              nil     nil     386
+cmpsd  nil                     32      A7              nil             nil     386
 insb!onebyte           nil,6C          8086
 insw!onebyte           10,6D           8086
 insd!onebyte           20,6D           386
@@ -477,7 +477,7 @@ lodsw!onebyte               10,AD           8086
 lodsd!onebyte          20,AD           386
 movsb!onebyte          nil,A4          8086
 movsw!onebyte          10,A5           8086
-movsd  nil                     32      A5              nil     nil     386
+movsd  nil                     32      A5              nil             nil     386
 scasb!onebyte          nil,AE          8086
 scasw!onebyte          10,AF           8086
 scasd!onebyte          20,AF           386
@@ -514,7 +514,7 @@ bts!bittest         AB,5
 ;
 ; Interrupts and operating system instructions
 ;
-int    imm8                    nil     CD              nil     $1,8    8086
+int    imm8                    nil     CD              nil             $1,8    8086
 int3!onebyte           nil,CC          8086
 int03!onebyte          nil,CC          8086
 into!onebyte           nil,CE          8086
@@ -522,8 +522,8 @@ iret!onebyte                nil,CF          8086
 iretw!onebyte          10,CF           8086
 iretd!onebyte          20,CF           386
 rsm!twobyte            0F,AA           P5,SMM
-bound  reg16,mem16             16      62              $2,$1   nil     186
-bound  reg32,mem32             32      62              $2,$1   nil     386
+bound  reg16,mem16             16      62              $2,$1           nil     186
+bound  reg32,mem32             32      62              $2,$1           nil     386
 hlt!onebyte            nil,F4          8086,PRIV
 nop!onebyte            nil,90          8086
 ;
@@ -531,24 +531,24 @@ nop!onebyte               nil,90          8086
 ;
 ;  286 rm16 protected mode group (LLDT/LTR/STR/VERR/VERW):
 !prot286       rm16            nil     0F,00           $1,$0.1         nil     286,PROT,@0
-arpl   rm16,reg16              nil     63              $1,$2   nil     286,PROT
-lar    reg16,rm16              16      0F,02           $2,$1   nil     286,PROT
-lar    reg32,rm32              32      0F,02           $2,$1   nil     386,PROT
+arpl   rm16,reg16              nil     63              $1,$2           nil     286,PROT
+lar    reg16,rm16              16      0F,02           $2,$1           nil     286,PROT
+lar    reg32,rm32              32      0F,02           $2,$1           nil     386,PROT
 lgdt!twobytemem                0F,01,2         286,PRIV
 lidt!twobytemem                0F,01,3         286,PRIV
 lldt!prot286           2               PRIV
-lmsw   rm16                    nil     0F,01           $1,6    nil     286,PRIV
-lsl    reg16,rm16              16      0F,03           $2,$1   nil     286,PROT
-lsl    reg32,rm32              32      0F,03           $2,$1   nil     286,PROT
+lmsw   rm16                    nil     0F,01           $1,6            nil     286,PRIV
+lsl    reg16,rm16              16      0F,03           $2,$1           nil     286,PROT
+lsl    reg32,rm32              32      0F,03           $2,$1           nil     286,PROT
 ltr!prot286            3               PRIV
 sgdt!twobytemem                0F,01,0         286
 sidt!twobytemem                0F,01,1         286
-sldt   mem1632                 nil     0F,00           $1,0    nil     286
-sldt   reg16                   16      0F,00           $1r,0   nil     286
-sldt   reg32                   32      0F,00           $1r,0   nil     386
-smsw   mem1632                 nil     0F,01           $1,4    nil     286
-smsw   reg16                   16      0F,01           $1r,4   nil     286
-smsw   reg32                   32      0F,01           $1r,4   nil     386
+sldt   mem1632                 nil     0F,00           $1,0            nil     286
+sldt   reg16                   16      0F,00           $1r,0           nil     286
+sldt   reg32                   32      0F,00           $1r,0           nil     386
+smsw   mem1632                 nil     0F,01           $1,4            nil     286
+smsw   reg16                   16      0F,01           $1r,4           nil     286
+smsw   reg32                   32      0F,01           $1r,4           nil     386
 str!prot286            1
 verr!prot286           4
 verw!prot286           5
@@ -556,35 +556,35 @@ verw!prot286              5
 ; Floating point instructions
 ;
 ;  Load
-fld    mem32x                  nil     D9              $1,0    nil     8086,FPU
-fld    mem64x                  nil     DD              $1,0    nil     8086,FPU
-fld    mem80x                  nil     DB              $1,5    nil     8086,FPU
-fld    fpureg                  nil     D9,C0+$1        nil     nil     8086,FPU
-fild   mem16x                  nil     DF              $1,0    nil     8086,FPU
-fild   mem32x                  nil     DB              $1,0    nil     8086,FPU
-fild   mem64x                  nil     DF              $1,5    nil     8086,FPU
-fbld   mem80                   nil     DF              $1,4    nil     8086,FPU
+fld    mem32x                  nil     D9              $1,0            nil     8086,FPU
+fld    mem64x                  nil     DD              $1,0            nil     8086,FPU
+fld    mem80x                  nil     DB              $1,5            nil     8086,FPU
+fld    fpureg                  nil     D9,C0+$1        nil             nil     8086,FPU
+fild   mem16x                  nil     DF              $1,0            nil     8086,FPU
+fild   mem32x                  nil     DB              $1,0            nil     8086,FPU
+fild   mem64x                  nil     DF              $1,5            nil     8086,FPU
+fbld   mem80                   nil     DF              $1,4            nil     8086,FPU
 ;  Store
-fst    mem32x                  nil     D9              $1,2    nil     8086,FPU
-fst    mem64x                  nil     DD              $1,2    nil     8086,FPU
-fst    fpureg                  nil     DD,D0+$1        nil     nil     8086,FPU
-fist   mem16x                  nil     DF              $1,2    nil     8086,FPU
-fist   mem32x                  nil     DB              $1,2    nil     8086,FPU
+fst    mem32x                  nil     D9              $1,2            nil     8086,FPU
+fst    mem64x                  nil     DD              $1,2            nil     8086,FPU
+fst    fpureg                  nil     DD,D0+$1        nil             nil     8086,FPU
+fist   mem16x                  nil     DF              $1,2            nil     8086,FPU
+fist   mem32x                  nil     DB              $1,2            nil     8086,FPU
 ;  Store (with pop)
-fstp   mem32x                  nil     D9              $1,3    nil     8086,FPU
-fstp   mem64x                  nil     DD              $1,3    nil     8086,FPU
-fstp   mem80x                  nil     DB              $1,7    nil     8086,FPU
-fstp   fpureg                  nil     DD,D8+$1        nil     nil     8086,FPU
-fistp  mem16x                  nil     DF              $1,3    nil     8086,FPU
-fistp  mem32x                  nil     DB              $1,3    nil     8086,FPU
-fistp  mem64x                  nil     DF              $1,7    nil     8086,FPU
-fbstp  mem80                   nil     DF              $1,6    nil     8086,FPU
+fstp   mem32x                  nil     D9              $1,3            nil     8086,FPU
+fstp   mem64x                  nil     DD              $1,3            nil     8086,FPU
+fstp   mem80x                  nil     DB              $1,7            nil     8086,FPU
+fstp   fpureg                  nil     DD,D8+$1        nil             nil     8086,FPU
+fistp  mem16x                  nil     DF              $1,3            nil     8086,FPU
+fistp  mem32x                  nil     DB              $1,3            nil     8086,FPU
+fistp  mem64x                  nil     DF              $1,7            nil     8086,FPU
+fbstp  mem80                   nil     DF              $1,6            nil     8086,FPU
 ;  Exchange (with ST0)
-fxch   fpureg                  nil     D9,C8+$1        nil     nil     8086,FPU
-fxch   ST0,ST0                 nil     D9,C8           nil     nil     8086,FPU
-fxch   ST0,FPUREG_NOTST0       nil     D9,C8+$2        nil     nil     8086,FPU
-fxch   FPUREG_NOTST0,ST0       nil     D9,C8+$1        nil     nil     8086,FPU
-fxch   nil                     nil     D9,C9           nil     nil     8086,FPU
+fxch   fpureg                  nil     D9,C8+$1        nil             nil     8086,FPU
+fxch   ST0,ST0                 nil     D9,C8           nil             nil     8086,FPU
+fxch   ST0,FPUREG_NOTST0       nil     D9,C8+$2        nil             nil     8086,FPU
+fxch   FPUREG_NOTST0,ST0       nil     D9,C8+$1        nil             nil     8086,FPU
+fxch   nil                     nil     D9,C9           nil             nil     8086,FPU
 ;  Comparisons
 !fcomg mem32x                  nil     D8              $1,$0.1         nil     8086,FPU
 !fcomg mem64x                  nil     DC              $1,$0.1         nil     8086,FPU
@@ -595,12 +595,12 @@ fxch      nil                     nil     D9,C9           nil     nil     8086,FPU
 !fcomg2        ST0,fpureg              nil     $0.1,$0.2+$2    nil             nil     @0,FPU
 ;  Comparison (without pop)
 fcom!fcomg             2,D0
-ficom  mem16x                  nil     DE              $1,2    nil     8086,FPU
-ficom  mem32x                  nil     DA              $1,2    nil     8086,FPU
+ficom  mem16x                  nil     DE              $1,2            nil     8086,FPU
+ficom  mem32x                  nil     DA              $1,2            nil     8086,FPU
 ;  Comparison (with pop)
 fcomp!fcomg            3,D8
-ficomp mem16x                  nil     DE              $1,3    nil     8086,FPU
-ficomp mem32x                  nil     DA              $1,3    nil     8086,FPU
+ficomp mem16x                  nil     DE              $1,3            nil     8086,FPU
+ficomp mem32x                  nil     DA              $1,3            nil     8086,FPU
 fcompp!twobyte         DE,D9           8086,FPU
 ;  Unordered comparison (with pop)
 fucom!fcomg2           DD,E0           286
@@ -670,13 +670,13 @@ fabs!twobyte              D9,E1           8086,FPU
 ;  Processor control
 fninit!twobyte         DB,E3           8086,FPU
 finit!threebyte                9B,DB,E3        8086,FPU
-fldcw  mem16                   nil     D9              $1,5    nil     8086,FPU
-fnstcw mem16                   nil     D9              $1,7    nil     8086,FPU
-fstcw  mem16                   nil     9B,D9           $1,7    nil     8086,FPU
-fnstsw mem16                   nil     DD              $1,7    nil     8086,FPU
-fnstsw REG_AX                  nil     DF,E0           nil     nil     8086,FPU
-fstsw  mem16                   nil     9B,DD           $1,7    nil     8086,FPU
-fstsw  REG_AX                  nil     9B,DF,E0        nil     nil     8086,FPU
+fldcw  mem16                   nil     D9              $1,5            nil     8086,FPU
+fnstcw mem16                   nil     D9              $1,7            nil     8086,FPU
+fstcw  mem16                   nil     9B,D9           $1,7            nil     8086,FPU
+fnstsw mem16                   nil     DD              $1,7            nil     8086,FPU
+fnstsw REG_AX                  nil     DF,E0           nil             nil     8086,FPU
+fstsw  mem16                   nil     9B,DD           $1,7            nil     8086,FPU
+fstsw  REG_AX                  nil     9B,DF,E0        nil             nil     8086,FPU
 fnclex!twobyte         DB,E2           8086,FPU
 fclex!threebyte                9B,DB,E2        8086,FPU
 fnstenv!onebytemem     D9,6            8086,FPU
@@ -685,8 +685,8 @@ fldenv!onebytemem   D9,4            8086,FPU
 fnsave!onebytemem      DD,6            8086,FPU
 fsave!twobytemem       9B,DD,6         8086,FPU
 frstor!onebytemem      DD,4            8086,FPU
-ffree  fpureg                  nil     DD,C0+$1        nil     nil     8086,FPU
-ffreep fpureg                  nil     DF,C0+$1        nil     nil     P6,FPU,UNDOC
+ffree  fpureg                  nil     DD,C0+$1        nil             nil     8086,FPU
+ffreep fpureg                  nil     DF,C0+$1        nil             nil     P6,FPU,UNDOC
 fnop!twobyte           D9,D0           8086,FPU
 fwait!onebyte          nil,9B          8086,FPU
 ;
@@ -698,18 +698,18 @@ wait!onebyte              nil,9B          8086
 ;
 ;  Compare & exchange, exchange & add
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-!cmpxchgxadd   reg8,reg8               nil     0F,$0.1         $1r,$2  nil     @0
-!cmpxchgxadd   mem,reg8                nil     0F,$0.1         $1,$2   nil     @0
-!cmpxchgxadd   mem8x,reg8              nil     0F,$0.1         $1,$2   nil     @0
+!cmpxchgxadd   reg8,reg8       nil     0F,$0.1         $1r,$2          nil     @0
+!cmpxchgxadd   mem,reg8        nil     0F,$0.1         $1,$2           nil     @0
+!cmpxchgxadd   mem8x,reg8      nil     0F,$0.1         $1,$2           nil     @0
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-!cmpxchgxadd   reg16,reg16             16      0F,$0.1+1       $1r,$2  nil     @0
-!cmpxchgxadd   mem,reg16               16      0F,$0.1+1       $1,$2   nil     @0
-!cmpxchgxadd   mem16x,reg16            16      0F,$0.1+1       $1,$2   nil     @0
+!cmpxchgxadd   reg16,reg16     16      0F,$0.1+1       $1r,$2          nil     @0
+!cmpxchgxadd   mem,reg16       16      0F,$0.1+1       $1,$2           nil     @0
+!cmpxchgxadd   mem16x,reg16    16      0F,$0.1+1       $1,$2           nil     @0
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-!cmpxchgxadd   reg32,reg32             32      0F,$0.1+1       $1r,$2  nil     @0
-!cmpxchgxadd   mem,reg32               32      0F,$0.1+1       $1,$2   nil     @0
-!cmpxchgxadd   mem32x,reg32            32      0F,$0.1+1       $1,$2   nil     @0
-bswap  reg32                   32      0F,C8+$1        nil     nil     486
+!cmpxchgxadd   reg32,reg32     32      0F,$0.1+1       $1r,$2          nil     @0
+!cmpxchgxadd   mem,reg32       32      0F,$0.1+1       $1,$2           nil     @0
+!cmpxchgxadd   mem32x,reg32    32      0F,$0.1+1       $1,$2           nil     @0
+bswap  reg32                   32      0F,C8+$1        nil             nil     486
 xadd!cmpxchgxadd       C0              486
 cmpxchg!cmpxchgxadd    B0              486
 cmpxchg486!cmpxchgxadd A6              486,UNDOC
@@ -726,7 +726,7 @@ cpuid!twobyte               0F,A2           486
 wrmsr!twobyte          0F,30           P5,PRIV
 rdtsc!twobyte          0F,31           P5
 rdmsr!twobyte          0F,32           P5,PRIV
-cmpxchg8b      mem64           nil     0F,C7           $1,1    nil     P5
+cmpxchg8b      mem64           nil     0F,C7           $1,1            nil     P5
 ;
 ; Pentium II/Pentium Pro extensions
 ;
@@ -746,8 +746,8 @@ fucomip!fcomg2              DF,E8           P6
 ;
 ; Pentium4 extensions
 ;
-movnti mem32,reg32             nil     0F,C3           $1,$2   nil     P4
-clflush        mem8                    nil     0F,AE           $1,7    nil     KATMAI
+movnti mem32,reg32             nil     0F,C3           $1,$2           nil     P4
+clflush        mem8                    nil     0F,AE           $1,7            nil     KATMAI
 lfence!threebyte       0F,AE,E8        KATMAI
 mfence!threebyte       0F,AE,F0        KATMAI
 pause!twobyte          F3,90           P4
@@ -763,18 +763,18 @@ pause!twobyte             F3,90           P4
 !pshift        MMXREG,imm8             nil     0F,$0.2         $1r,$0.3        $2,8    P5,MMX
 !pshift        XMMREG,imm8             nil     66,0F,$0.2      $1r,$0.3        $2,8    P4,SSE2
 emms!twobyte           0F,77           P5,MMX
-movd   MMXREG,rm32             nil     0F,6E           $2,$1   nil     P5,MMX
-movd   rm32,MMXREG             nil     0F,7E           $1,$2   nil     P5,MMX
-movd   XMMREG,rm32             nil     66,0F,6E        $2,$1   nil     P4,SSE2
-movd   rm32,XMMREG             nil     66,0F,7E        $1,$2   nil     P4,SSE2
+movd   MMXREG,rm32             nil     0F,6E           $2,$1           nil     P5,MMX
+movd   rm32,MMXREG             nil     0F,7E           $1,$2           nil     P5,MMX
+movd   XMMREG,rm32             nil     66,0F,6E        $2,$1           nil     P4,SSE2
+movd   rm32,XMMREG             nil     66,0F,7E        $1,$2           nil     P4,SSE2
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movq   MMXREG,MMXREG           nil     0F,6F           $2r,$1  nil     P5,MMX
-movq   MMXREG,mem64            nil     0F,6F           $2,$1   nil     P5,MMX
-movq   mem64,MMXREG            nil     0F,7F           $1,$2   nil     P5,MMX
+movq   MMXREG,MMXREG           nil     0F,6F           $2r,$1          nil     P5,MMX
+movq   MMXREG,mem64            nil     0F,6F           $2,$1           nil     P5,MMX
+movq   mem64,MMXREG            nil     0F,7F           $1,$2           nil     P5,MMX
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movq   XMMREG,XMMREG           nil     F3,0F,7E        $2r,$1  nil     P4,SSE2
-movq   XMMREG,mem64            nil     F3,0F,7E        $2,$1   nil     P4,SSE2
-movq   mem64,XMMREG            nil     66,0F,D6        $1,$2   nil     P4,SSE2
+movq   XMMREG,XMMREG           nil     F3,0F,7E        $2r,$1          nil     P4,SSE2
+movq   XMMREG,mem64            nil     F3,0F,7E        $2,$1           nil     P4,SSE2
+movq   mem64,XMMREG            nil     66,0F,D6        $1,$2           nil     P4,SSE2
 packssdw!mmxsse                6B              P5              P4,SSE2
 packsswb!mmxsse                63              P5              P4,SSE2
 packuswb!mmxsse                67              P5              P4,SSE2
@@ -806,10 +806,10 @@ psrad!pshift              E2,72,4
 psrlw!pshift           D1,71,2
 psrld!pshift           D2,72,2
 psrlq!pshift           D3,73,2
-psubb  MMXREG,imm8             nil     0F,F8           $1r,2   $2,8    P5,MMX
-psubb  XMMREG,imm8             nil     66,0F,F8        $1r,2   $2,8    P4,SSE2
-psubw  MMXREG,imm8             nil     0F,F9           $1r,2   $2,8    P5,MMX
-psubw  XMMREG,imm8             nil     66,0F,F9        $1r,2   $2,8    P4,SSE2
+psubb  MMXREG,imm8             nil     0F,F8           $1r,2           $2,8    P5,MMX
+psubb  XMMREG,imm8             nil     66,0F,F8        $1r,2           $2,8    P4,SSE2
+psubw  MMXREG,imm8             nil     0F,F9           $1r,2           $2,8    P5,MMX
+psubw  XMMREG,imm8             nil     66,0F,F9        $1r,2           $2,8    P4,SSE2
 psubd!mmxsse           FA              P5              P4,SSE2
 psubq!mmxsse           FB              P5              P4,SSE2
 psubsb!mmxsse          E8              P5              P4,SSE2
@@ -855,7 +855,7 @@ cmpordss!ssecmpss   7
 cmpunordps!ssecmpps    3
 cmpunordss!ssecmpss    3
 cmpps!ssepsimm         C2
-cmpss  XMMREG,rm128,imm8       nil     F3,0F,C2        $2,$1   $3,8    KATMAI,SSE
+cmpss  XMMREG,rm128,imm8       nil     F3,0F,C2        $2,$1           $3,8    KATMAI,SSE
 comiss!sseps           2F              KATMAI,SSE
 cvtpi2ps!sseps         2A              KATMAI,SSE
 cvtps2pi!sseps         2D              KATMAI,SSE
@@ -865,58 +865,58 @@ cvttps2pi!sseps           2C              KATMAI,SSE
 cvttss2si!ssess                2C              KATMAI,SSE
 divps!sseps            5E              KATMAI,SSE
 divss!ssess            5E              KATMAI,SSE
-ldmxcsr        mem32                   nil     0F,AE           $1,2    nil     KATMAI,SSE
-maskmovq       MMXREG,MMXREG   nil     0F,F7           $2r,$1  nil     KATMAI,MMX
+ldmxcsr        mem32                   nil     0F,AE           $1,2            nil     KATMAI,SSE
+maskmovq       MMXREG,MMXREG   nil     0F,F7           $2r,$1          nil     KATMAI,MMX
 maxps!sseps            5F              KATMAI,SSE
 maxss!ssess            5F              KATMAI,SSE
 minps!sseps            5D              KATMAI,SSE
 minss!ssess            5D              KATMAI,SSE
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movaps XMMREG,XMMREG           nil     0F,28           $2r,$1  nil     KATMAI,SSE
-movaps XMMREG,mem128           nil     0F,28           $2,$1   nil     KATMAI,SSE
-movaps mem128,XMMREG           nil     0F,29           $1,$2   nil     KATMAI,SSE
-movhlps        XMMREG,XMMREG           nil     0F,12           $2r,$1  nil     KATMAI,SSE
-movhps XMMREG,mem64            nil     0F,16           $2,$1   nil     KATMAI,SSE
-movhps mem64,XMMREG            nil     0F,17           $1,$2   nil     KATMAI,SSE
-movlhps        XMMREG,XMMREG           nil     0F,16           $2r,$1  nil     KATMAI,SSE
-movlps XMMREG,mem64            nil     0F,12           $2,$1   nil     KATMAI,SSE
-movlps mem64,XMMREG            nil     0F,13           $1,$2   nil     KATMAI,SSE
-movmskps       reg32,XMMREG    nil     0F,50           $1r,$2  nil     KATMAI,SSE
-movntps        mem128,XMMREG           nil     0F,2B           $1,$2   nil     KATMAI,SSE
-movntq mem64,MMXREG            nil     0F,E7           $1,$2   nil     KATMAI,MMX
-movntdq        mem128,XMMREG           nil     66,0F,E7        $1,$2   nil     P4,SSE2
+movaps XMMREG,XMMREG           nil     0F,28           $2r,$1          nil     KATMAI,SSE
+movaps XMMREG,mem128           nil     0F,28           $2,$1           nil     KATMAI,SSE
+movaps mem128,XMMREG           nil     0F,29           $1,$2           nil     KATMAI,SSE
+movhlps        XMMREG,XMMREG           nil     0F,12           $2r,$1          nil     KATMAI,SSE
+movhps XMMREG,mem64            nil     0F,16           $2,$1           nil     KATMAI,SSE
+movhps mem64,XMMREG            nil     0F,17           $1,$2           nil     KATMAI,SSE
+movlhps        XMMREG,XMMREG           nil     0F,16           $2r,$1          nil     KATMAI,SSE
+movlps XMMREG,mem64            nil     0F,12           $2,$1           nil     KATMAI,SSE
+movlps mem64,XMMREG            nil     0F,13           $1,$2           nil     KATMAI,SSE
+movmskps       reg32,XMMREG    nil     0F,50           $1r,$2          nil     KATMAI,SSE
+movntps        mem128,XMMREG           nil     0F,2B           $1,$2           nil     KATMAI,SSE
+movntq mem64,MMXREG            nil     0F,E7           $1,$2           nil     KATMAI,MMX
+movntdq        mem128,XMMREG           nil     66,0F,E7        $1,$2           nil     P4,SSE2
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movss  XMMREG,XMMREG           nil     F3,0F,10        $2r,$1  nil     KATMAI,SSE
-movss  XMMREG,mem64            nil     F3,0F,10        $2,$1   nil     KATMAI,SSE
-movss  mem64,XMMREG            nil     F3,0F,11        $1,$2   nil     KATMAI,SSE
+movss  XMMREG,XMMREG           nil     F3,0F,10        $2r,$1          nil     KATMAI,SSE
+movss  XMMREG,mem64            nil     F3,0F,10        $2,$1           nil     KATMAI,SSE
+movss  mem64,XMMREG            nil     F3,0F,11        $1,$2           nil     KATMAI,SSE
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movups XMMREG,XMMREG           nil     0F,10           $2r,$1  nil     KATMAI,SSE
-movups XMMREG,mem64            nil     0F,10           $2,$1   nil     KATMAI,SSE
-movups mem64,XMMREG            nil     0F,11           $1,$2   nil     KATMAI,SSE
+movups XMMREG,XMMREG           nil     0F,10           $2r,$1          nil     KATMAI,SSE
+movups XMMREG,mem64            nil     0F,10           $2,$1           nil     KATMAI,SSE
+movups mem64,XMMREG            nil     0F,11           $1,$2           nil     KATMAI,SSE
 mulps!sseps            59              KATMAI,SSE
 mulss!ssess            59              KATMAI,SSE
 orps!sseps             56              KATMAI,SSE
 pavgb!mmxsse           E0              KATMAI          P4,SSE2
 pavgw!mmxsse           E3              KATMAI          P4,SSE2
-pextrw reg32,MMXREG,imm8       nil     0F,C5           $1r,$2  $3,8    KATMAI,MMX
-pextrw reg32,XMMREG,imm8       nil     66,0F,C5        $1r,$2  $3,8    P4,SSE2
-pinsrw MMXREG,reg32,imm8       nil     0F,C4           $2r,$1  $3,8    KATMAI,MMX
-pinsrw MMXREG,rm16,imm8        nil     0F,C4           $2,$1   $3,8    KATMAI,MMX
-pinsrw XMMREG,reg32,imm8       nil     66,0F,C4        $2r,$1  $3,8    P4,SSE2
-pinsrw XMMREG,rm16,imm8        nil     66,0F,C4        $2,$1   $3,8    P4,SSE2
+pextrw reg32,MMXREG,imm8       nil     0F,C5           $1r,$2          $3,8    KATMAI,MMX
+pextrw reg32,XMMREG,imm8       nil     66,0F,C5        $1r,$2          $3,8    P4,SSE2
+pinsrw MMXREG,reg32,imm8       nil     0F,C4           $2r,$1          $3,8    KATMAI,MMX
+pinsrw MMXREG,rm16,imm8        nil     0F,C4           $2,$1           $3,8    KATMAI,MMX
+pinsrw XMMREG,reg32,imm8       nil     66,0F,C4        $2r,$1          $3,8    P4,SSE2
+pinsrw XMMREG,rm16,imm8        nil     66,0F,C4        $2,$1           $3,8    P4,SSE2
 pmaxsw!mmxsse          EE              KATMAI          P4,SSE2
 pmaxub!mmxsse          DE              KATMAI          P4,SSE2
 pminsw!mmxsse          EA              KATMAI          P4,SSE2
 pminub!mmxsse          DA              KATMAI          P4,SSE2
-pmovmskb       reg32,MMXREG    nil     0F,D7           $1r,$2  nil     KATMAI,SSE
-pmovmskb       reg32,XMMREG    nil     66,0F,D7        $1r,$2  nil     P4,SSE2
+pmovmskb       reg32,MMXREG    nil     0F,D7           $1r,$2          nil     KATMAI,SSE
+pmovmskb       reg32,XMMREG    nil     66,0F,D7        $1r,$2          nil     P4,SSE2
 pmulhuw!mmxsse         E4              KATMAI          P4,SSE2
 prefetchnta!twobytemem 0F,18,0         KATMAI
 prefetcht0!twobytemem  0F,18,1         KATMAI
 prefetcht1!twobytemem  0F,18,2         KATMAI
 prefetcht2!twobytemem  0F,18,3         KATMAI
 psadbw!mmxsse          F6              KATMAI          KATMAI,SSE
-pshufw MMXREG,rm64,imm8        nil     0F,70           $2,$1   $3,8    KATMAI,MMX
+pshufw MMXREG,rm64,imm8        nil     0F,70           $2,$1           $3,8    KATMAI,MMX
 rcpps!sseps            53              KATMAI,SSE
 rcpss!ssess            53              KATMAI,SSE
 rsqrtps!sseps          52              KATMAI,SSE
@@ -925,7 +925,7 @@ sfence!threebyte    0F,AE,F8        KATMAI
 shufps!ssepsimm                C6
 sqrtps!sseps           51              KATMAI,SSE
 sqrtss!ssess           51              KATMAI,SSE
-stmxcsr        mem32                   nil     0F,AE           $1,3    nil     KATMAI,SSE
+stmxcsr        mem32                   nil     0F,AE           $1,3            nil     KATMAI,SSE
 subps!sseps            5C              KATMAI,SSE
 subss!ssess            5C              KATMAI,SSE
 ucomiss!ssess          2E              KATMAI,SSE
@@ -964,7 +964,7 @@ cmpordsd!sse2cmpsd  7
 cmpunordpd!sse2cmppd   3
 cmpunordsd!sse2cmpsd   3
 cmppd!sse2pdimm                C2
-cmpsd  XMMREG,rm128,imm8       nil     F2,0F,C2        $2,$1   $3,8    P4,SSE2
+cmpsd  XMMREG,rm128,imm8       nil     F2,0F,C2        $2,$1           $3,8    P4,SSE2
 comisd!sse2pd          2F
 cvtpi2pd!sse2pd                2A
 cvtsi2sd!sse2sd                2A
@@ -975,23 +975,23 @@ maxsd!sse2sd              5F
 minpd!sse2pd           5D
 minsd!sse2sd           5D
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movapd XMMREG,XMMREG           nil     66,0F,28        $2r,$1  nil     P4,SSE2
-movapd XMMREG,mem128           nil     66,0F,28        $2,$1   nil     P4,SSE2
-movapd mem128,XMMREG           nil     66,0F,29        $1,$2   nil     P4,SSE2
-movhpd XMMREG,mem64            nil     66,0F,16        $2,$1   nil     P4,SSE2
-movhpd mem64,XMMREG            nil     66,0F,17        $1,$2   nil     P4,SSE2
-movlpd XMMREG,mem64            nil     66,0F,12        $2,$1   nil     P4,SSE2
-movlpd mem64,XMMREG            nil     66,0F,13        $1,$2   nil     P4,SSE2
-movmskpd       reg32,XMMREG    nil     66,0F,50        $1r,$2  nil     P4,SSE2
-movntpd        mem128,XMMREG           nil     66,0F,2B        $1,$2   nil     P4,SSE2
+movapd XMMREG,XMMREG           nil     66,0F,28        $2r,$1          nil     P4,SSE2
+movapd XMMREG,mem128           nil     66,0F,28        $2,$1           nil     P4,SSE2
+movapd mem128,XMMREG           nil     66,0F,29        $1,$2           nil     P4,SSE2
+movhpd XMMREG,mem64            nil     66,0F,16        $2,$1           nil     P4,SSE2
+movhpd mem64,XMMREG            nil     66,0F,17        $1,$2           nil     P4,SSE2
+movlpd XMMREG,mem64            nil     66,0F,12        $2,$1           nil     P4,SSE2
+movlpd mem64,XMMREG            nil     66,0F,13        $1,$2           nil     P4,SSE2
+movmskpd       reg32,XMMREG    nil     66,0F,50        $1r,$2          nil     P4,SSE2
+movntpd        mem128,XMMREG           nil     66,0F,2B        $1,$2           nil     P4,SSE2
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movsd  XMMREG,XMMREG           nil     F2,0F,10        $2r,$1  nil     P4,SSE2
-movsd  XMMREG,mem64            nil     F2,0F,10        $2,$1   nil     P4,SSE2
-movsd  mem64,XMMREG            nil     F2,0F,11        $1,$2   nil     P4,SSE2
+movsd  XMMREG,XMMREG           nil     F2,0F,10        $2r,$1          nil     P4,SSE2
+movsd  XMMREG,mem64            nil     F2,0F,10        $2,$1           nil     P4,SSE2
+movsd  mem64,XMMREG            nil     F2,0F,11        $1,$2           nil     P4,SSE2
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movupd XMMREG,XMMREG           nil     66,0F,10        $2r,$1  nil     P4,SSE2
-movupd XMMREG,mem64            nil     66,0F,10        $2,$1   nil     P4,SSE2
-movupd mem64,XMMREG            nil     66,0F,11        $1,$2   nil     P4,SSE2
+movupd XMMREG,XMMREG           nil     66,0F,10        $2r,$1          nil     P4,SSE2
+movupd XMMREG,mem64            nil     66,0F,10        $2,$1           nil     P4,SSE2
+movupd mem64,XMMREG            nil     66,0F,11        $1,$2           nil     P4,SSE2
 mulpd!sse2pd           59
 mulsd!sse2sd           59
 orpd!sse2pd            56
@@ -1018,23 +1018,23 @@ cvttpd2pi!sse2pd        2C
 cvttsd2si!sse2sd       2C
 cvttpd2dq!sse2pd       E6
 cvttps2dq!ssess                5B              P4,SSE2
-maskmovdqu     XMMREG,XMMREG   nil     66,0F,F7        $2r,$1  nil     P4,SSE2
+maskmovdqu     XMMREG,XMMREG   nil     66,0F,F7        $2r,$1          nil     P4,SSE2
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movdqa XMMREG,XMMREG           nil     66,0F,6F        $2r,$1  nil     P4,SSE2
-movdqa XMMREG,mem128           nil     66,0F,6F        $2,$1   nil     P4,SSE2
-movdqa mem128,XMMREG           nil     66,0F,7F        $1,$2   nil     P4,SSE2
+movdqa XMMREG,XMMREG           nil     66,0F,6F        $2r,$1          nil     P4,SSE2
+movdqa XMMREG,mem128           nil     66,0F,6F        $2,$1           nil     P4,SSE2
+movdqa mem128,XMMREG           nil     66,0F,7F        $1,$2           nil     P4,SSE2
 ; arbitrary encoding, picked $2r,$1 instead of $1r,$2
-movdqu XMMREG,XMMREG           nil     F3,0F,6F        $2r,$1  nil     P4,SSE2
-movdqu XMMREG,mem128           nil     F3,0F,6F        $2,$1   nil     P4,SSE2
-movdqu mem128,XMMREG           nil     F3,0F,7F        $1,$2   nil     P4,SSE2
-movdq2q        MMXREG,XMMREG           nil     F2,0F,D6        $2r,$1  nil     P4,SSE2
-movq2dq        XMMREG,MMXREG           nil     F3,0F,D6        $2r,$1  nil     P4,SSE2
+movdqu XMMREG,XMMREG           nil     F3,0F,6F        $2r,$1          nil     P4,SSE2
+movdqu XMMREG,mem128           nil     F3,0F,6F        $2,$1           nil     P4,SSE2
+movdqu mem128,XMMREG           nil     F3,0F,7F        $1,$2           nil     P4,SSE2
+movdq2q        MMXREG,XMMREG           nil     F2,0F,D6        $2r,$1          nil     P4,SSE2
+movq2dq        XMMREG,MMXREG           nil     F3,0F,D6        $2r,$1          nil     P4,SSE2
 pmuludq!mmxsse         F4              P4              P4,SSE2
 pshufd!sse2pdimm       70
-pshufhw        XMMREG,rm128,imm8       nil     F3,0F,70        $2,$1   $3,8    P4,SSE2
-pshuflw        XMMREG,rm128,imm8       nil     F2,0F,70        $2,$1   $3,8    P4,SSE2
-pslldq XMMREG,imm8             nil     66,0F,73        $1r,7   $2,8    P4,SSE2
-psrldq XMMREG,imm8             nil     66,0F,73        $1r,3   $2,8    P4,SSE2
+pshufhw        XMMREG,rm128,imm8       nil     F3,0F,70        $2,$1           $3,8    P4,SSE2
+pshuflw        XMMREG,rm128,imm8       nil     F2,0F,70        $2,$1           $3,8    P4,SSE2
+pslldq XMMREG,imm8             nil     66,0F,73        $1r,7           $2,8    P4,SSE2
+psrldq XMMREG,imm8             nil     66,0F,73        $1r,3           $2,8    P4,SSE2
 punpckhqdq!sse2pd      6D
 punpcklqdq!sse2pd      6C
 ;
@@ -1081,7 +1081,7 @@ sysret!twobyte            0F,07           P6,PRIV,AMD
 paddsiw!cyrixmmx       51
 paveb!cyrixmmx         50
 pdistib!cyrixmmx       54
-pmachriw       MMXREG,mem64    nil     0F,5E           $2,$1   nil     P5,MMX,CYRIX
+pmachriw       MMXREG,mem64    nil     0F,5E           $2,$1           nil     P5,MMX,CYRIX
 pmagw!cyrixmmx         52
 pmulhriw!cyrixmmx      5D
 pmulhrwc!cyrixmmx      59
@@ -1095,10 +1095,10 @@ psubsiw!cyrixmmx        55
 ;
 !cyrixsmm      mem80           nil     0F,$0.1         $1,0            nil     486,CYRIX,SMM
 rdshr!twobyte          0F,36           P6,CYRIX,SMM
-rsdc   segreg,mem80            nil     0F,79           $2,$1   nil     486,CYRIX,SMM
+rsdc   segreg,mem80            nil     0F,79           $2,$1           nil     486,CYRIX,SMM
 rsldt!cyrixsmm         7B
 rsts!cyrixsmm          7D
-svdc   mem80,segreg            nil     0F,78           $1,$2   nil     486,CYRIX,SMM
+svdc   mem80,segreg            nil     0F,78           $1,$2           nil     486,CYRIX,SMM
 svldt!cyrixsmm         7A
 svts!cyrixsmm          7C
 smint!twobyte          0F,38           P6,CYRIX
@@ -1109,30 +1109,30 @@ wrshr!twobyte           0F,37           P6,CYRIX,SMM
 ;
 fsetpm!twobyte         DB,E4           286,FPU,OBS
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-ibts   reg16,reg16             16      0F,A7           $1r,$2  nil     386,UNDOC,OBS
-ibts   mem,reg16               16      0F,A7           $1,$2   nil     386,UNDOC,OBS
-ibts   mem16x,reg16            16      0F,A7           $1,$2   nil     386,UNDOC,OBS
+ibts   reg16,reg16             16      0F,A7           $1r,$2          nil     386,UNDOC,OBS
+ibts   mem,reg16               16      0F,A7           $1,$2           nil     386,UNDOC,OBS
+ibts   mem16x,reg16            16      0F,A7           $1,$2           nil     386,UNDOC,OBS
 ; arbitrary encoding, picked $1r,$2 instead of $2r,$1
-ibts   reg32,reg32             32      0F,A7           $1r,$2  nil     386,UNDOC,OBS
-ibts   mem,reg32               32      0F,A7           $1,$2   nil     386,UNDOC,OBS
-ibts   mem32x,reg32            32      0F,A7           $1,$2   nil     386,UNDOC,OBS
+ibts   reg32,reg32             32      0F,A7           $1r,$2          nil     386,UNDOC,OBS
+ibts   mem,reg32               32      0F,A7           $1,$2           nil     386,UNDOC,OBS
+ibts   mem32x,reg32            32      0F,A7           $1,$2           nil     386,UNDOC,OBS
 loadall!twobyte                0F,07           386,UNDOC
 loadall286!twobyte     0F,05           286,UNDOC
-;pop   REG_CS                  nil     0F              nil     nil     8086,UNDOC,OBS
+;pop   REG_CS                  nil     0F              nil             nil     8086,UNDOC,OBS
 salc!onebyte           nil,D6          8086,UNDOC
 smi!onebyte            nil,F1          386,UNDOC
 ; opcode arbitrarily picked for next 3 (could be 12/13 instead of 10/11).
-umov   reg8,reg8               nil     0F,10           $1r,$2  nil     386,UNDOC
-umov   reg16,reg16             16      0F,11           $1r,$2  nil     386,UNDOC
-umov   reg32,reg32             32      0F,11           $1r,$2  nil     386,UNDOC
-umov   mem,reg8                nil     0F,10           $1,$2   nil     386,UNDOC
-umov   mem8x,reg8              nil     0F,10           $1,$2   nil     386,UNDOC
-umov   mem,reg16               16      0F,11           $1,$2   nil     386,UNDOC
-umov   mem16x,reg16            16      0F,11           $1,$2   nil     386,UNDOC
-umov   mem,reg32               32      0F,11           $1,$2   nil     386,UNDOC
-umov   mem32x,reg32            32      0F,11           $1,$2   nil     386,UNDOC
-umov   reg8,mem8               nil     0F,12           $2,$1   nil     386,UNDOC
-umov   reg16,mem16             16      0F,13           $2,$1   nil     386,UNDOC
-umov   reg32,mem32             32      0F,13           $2,$1   nil     386,UNDOC
-xbts   reg16,mem16             16      0F,A6           $2,$1   nil     386,UNDOC,OBS
-xbts   reg32,mem32             32      0F,A6           $2,$1   nil     386,UNDOC,OBS
+umov   reg8,reg8               nil     0F,10           $1r,$2          nil     386,UNDOC
+umov   reg16,reg16             16      0F,11           $1r,$2          nil     386,UNDOC
+umov   reg32,reg32             32      0F,11           $1r,$2          nil     386,UNDOC
+umov   mem,reg8                nil     0F,10           $1,$2           nil     386,UNDOC
+umov   mem8x,reg8              nil     0F,10           $1,$2           nil     386,UNDOC
+umov   mem,reg16               16      0F,11           $1,$2           nil     386,UNDOC
+umov   mem16x,reg16            16      0F,11           $1,$2           nil     386,UNDOC
+umov   mem,reg32               32      0F,11           $1,$2           nil     386,UNDOC
+umov   mem32x,reg32            32      0F,11           $1,$2           nil     386,UNDOC
+umov   reg8,mem8               nil     0F,12           $2,$1           nil     386,UNDOC
+umov   reg16,mem16             16      0F,13           $2,$1           nil     386,UNDOC
+umov   reg32,mem32             32      0F,13           $2,$1           nil     386,UNDOC
+xbts   reg16,mem16             16      0F,A6           $2,$1           nil     386,UNDOC,OBS
+xbts   reg32,mem32             32      0F,A6           $2,$1           nil     386,UNDOC,OBS