Index: /trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsOneByte.cpp.h
===================================================================
--- /trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsOneByte.cpp.h	(revision 66115)
+++ /trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsOneByte.cpp.h	(revision 66116)
@@ -80,4 +80,5 @@
  * @opgroup     op_gen_arith_bin
  * @opflmodify  of,sf,zf,af,pf,cf
+ * @opcopytests add_Eb_Gb
  */
 FNIEMOP_DEF(iemOp_add_Gb_Eb)
@@ -104,5 +105,5 @@
  * @opgroup     op_gen_arith_bin
  * @opflmodify  of,sf,zf,af,pf,cf
- * @optest      op1=1 op2=1 -> op1=2 efl&|=nv,pl,nz,na,pe
+ * @opcopytests add_Eb_Gb
  */
 FNIEMOP_DEF(iemOp_add_Al_Ib)
Index: /trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-generated-1-template.c
===================================================================
--- /trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-generated-1-template.c	(revision 66115)
+++ /trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-generated-1-template.c	(revision 66116)
@@ -75,11 +75,11 @@
  * Debug print macro.
  */
-#if 1
+#if 0
 # define BS3CG1_DPRINTF(a_ArgList) Bs3TestPrintf a_ArgList
+# define BS3CG1_DEBUG_CTX_MOD
 #else
 # define BS3CG1_DPRINTF(a_ArgList) do { } while (0)
 #endif
 
-#define BS3CG1_DEBUG_CTX_MOD
 
 
@@ -618,5 +618,19 @@
             break;
 
+        case BS3CG1ENC_MODRM_Gb_Eb:
+            /* Start by reg,reg encoding. */
+            if (iEncoding == 0)
+            {
+                off = Bs3Cg1InsertOpcodes(pThis, 0);
+                pThis->abCurInstr[off++] = X86_MODRM_MAKE(3, X86_GREG_xAX, X86_GREG_xCX);
+                pThis->cbCurInstr = off;
+                pThis->aOperands[pThis->iRegOp].idxField = BS3CG1DST_AL;
+                pThis->aOperands[pThis->iRmOp ].idxField = BS3CG1DST_CL;
+                iEncoding++;
+            }
+            break;
+
         case BS3CG1ENC_MODRM_Ev_Gv:
+        case BS3CG1ENC_MODRM_Gv_Ev:
         case BS3CG1ENC_FIXED_AL_Ib:
         case BS3CG1ENC_FIXED_rAX_Iz:
@@ -664,4 +678,22 @@
             pThis->iRmOp  = 0;
             pThis->iRegOp = 1;
+            pThis->aOperands[0].cbOp = 2;
+            pThis->aOperands[1].cbOp = 2;
+            pThis->aOperands[0].fMem = false;
+            pThis->aOperands[1].fMem = false;
+            break;
+
+        case BS3CG1ENC_MODRM_Gb_Eb:
+            pThis->iRmOp  = 1;
+            pThis->iRegOp = 0;
+            pThis->aOperands[0].cbOp = 1;
+            pThis->aOperands[1].cbOp = 1;
+            pThis->aOperands[0].fMem = false;
+            pThis->aOperands[1].fMem = false;
+            break;
+
+        case BS3CG1ENC_MODRM_Gv_Ev:
+            pThis->iRmOp  = 1;
+            pThis->iRegOp = 0;
             pThis->aOperands[0].cbOp = 2;
             pThis->aOperands[1].cbOp = 2;
Index: /trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-generated-1.h
===================================================================
--- /trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-generated-1.h	(revision 66115)
+++ /trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-generated-1.h	(revision 66116)
@@ -72,4 +72,7 @@
     BS3CG1ENC_MODRM_Eb_Gb,
     BS3CG1ENC_MODRM_Ev_Gv,
+
+    BS3CG1ENC_MODRM_Gb_Eb,
+    BS3CG1ENC_MODRM_Gv_Ev,
 
     BS3CG1ENC_FIXED_AL_Ib,
