Diff for /np2/i386c/ia32/inst_table.c between versions 1.5 and 1.7

version 1.5, 2004/02/05 16:43:44 version 1.7, 2004/02/20 16:09:04
Line 60  undef_op(void) Line 60  undef_op(void)
 }  }
   
 static void  static void
 undef_op2(DWORD v)  undef_op2(UINT32 v)
 {  {
   
         (void)v;          (void)v;
Line 68  undef_op2(DWORD v) Line 68  undef_op2(DWORD v)
 }  }
   
   
 BYTE insttable_info[256] = {  UINT8 insttable_info[256] = {
         0,                              /* 00 */          0,                              /* 00 */
         0,          0,
         0,          0,
Line 558  void (*insttable_1byte[2][256])(void) =  Line 558  void (*insttable_1byte[2][256])(void) = 
                 MOV_EbIb,                  MOV_EbIb,
                 MOV_EwIw,                  MOV_EwIw,
                 ENTER16_IwIb,           /* C8 */                  ENTER16_IwIb,           /* C8 */
                 LEAVE16,                  LEAVE,
                 RETfar16_Iw,                  RETfar16_Iw,
                 RETfar16,                  RETfar16,
                 INT3,                  INT3,
Line 833  void (*insttable_1byte[2][256])(void) =  Line 833  void (*insttable_1byte[2][256])(void) = 
                 MOV_EbIb,                  MOV_EbIb,
                 MOV_EdId,                  MOV_EdId,
                 ENTER32_IwIb,           /* C8 */                  ENTER32_IwIb,           /* C8 */
                 LEAVE32,                  LEAVE,
                 RETfar32_Iw,                  RETfar32_Iw,
                 RETfar32,                  RETfar32,
                 INT3,                  INT3,
Line 1452  void (*insttable_2byte[2][256])(void) =  Line 1452  void (*insttable_2byte[2][256])(void) = 
  */   */
   
 /* group 1 */  /* group 1 */
 void (*insttable_G1EbIb[])(BYTE *, DWORD) = {  void (*insttable_G1EbIb[])(UINT8 *, UINT32) = {
         ADD_EbIb,          ADD_EbIb,
         OR_EbIb,          OR_EbIb,
         ADC_EbIb,          ADC_EbIb,
Line 1462  void (*insttable_G1EbIb[])(BYTE *, DWORD Line 1462  void (*insttable_G1EbIb[])(BYTE *, DWORD
         XOR_EbIb,          XOR_EbIb,
         CMP_EbIb,          CMP_EbIb,
 };  };
 void (*insttable_G1EbIb_ext[])(DWORD, DWORD) = {  void (*insttable_G1EbIb_ext[])(UINT32, UINT32) = {
         ADD_EbIb_ext,          ADD_EbIb_ext,
         OR_EbIb_ext,          OR_EbIb_ext,
         ADC_EbIb_ext,          ADC_EbIb_ext,
Line 1473  void (*insttable_G1EbIb_ext[])(DWORD, DW Line 1473  void (*insttable_G1EbIb_ext[])(DWORD, DW
         CMP_EbIb_ext,          CMP_EbIb_ext,
 };  };
   
 void (*insttable_G1EwIx[])(WORD *, DWORD) = {  void (*insttable_G1EwIx[])(UINT16 *, UINT32) = {
         ADD_EwIx,          ADD_EwIx,
         OR_EwIx,          OR_EwIx,
         ADC_EwIx,          ADC_EwIx,
Line 1483  void (*insttable_G1EwIx[])(WORD *, DWORD Line 1483  void (*insttable_G1EwIx[])(WORD *, DWORD
         XOR_EwIx,          XOR_EwIx,
         CMP_EwIx,          CMP_EwIx,
 };  };
 void (*insttable_G1EwIx_ext[])(DWORD, DWORD) = {  void (*insttable_G1EwIx_ext[])(UINT32, UINT32) = {
         ADD_EwIx_ext,          ADD_EwIx_ext,
         OR_EwIx_ext,          OR_EwIx_ext,
         ADC_EwIx_ext,          ADC_EwIx_ext,
Line 1494  void (*insttable_G1EwIx_ext[])(DWORD, DW Line 1494  void (*insttable_G1EwIx_ext[])(DWORD, DW
         CMP_EwIx_ext,          CMP_EwIx_ext,
 };  };
   
 void (*insttable_G1EdIx[])(DWORD *, DWORD) = {  void (*insttable_G1EdIx[])(UINT32 *, UINT32) = {
         ADD_EdIx,          ADD_EdIx,
         OR_EdIx,          OR_EdIx,
         ADC_EdIx,          ADC_EdIx,
Line 1504  void (*insttable_G1EdIx[])(DWORD *, DWOR Line 1504  void (*insttable_G1EdIx[])(DWORD *, DWOR
         XOR_EdIx,          XOR_EdIx,
         CMP_EdIx,          CMP_EdIx,
 };  };
 void (*insttable_G1EdIx_ext[])(DWORD, DWORD) = {  void (*insttable_G1EdIx_ext[])(UINT32, UINT32) = {
         ADD_EdIx_ext,          ADD_EdIx_ext,
         OR_EdIx_ext,          OR_EdIx_ext,
         ADC_EdIx_ext,          ADC_EdIx_ext,
Line 1517  void (*insttable_G1EdIx_ext[])(DWORD, DW Line 1517  void (*insttable_G1EdIx_ext[])(DWORD, DW
   
   
 /* group 2 */  /* group 2 */
 void (*insttable_G2Eb[])(BYTE *) = {  void (*insttable_G2Eb[])(UINT8 *) = {
         ROL_Eb,          ROL_Eb,
         ROR_Eb,          ROR_Eb,
         RCL_Eb,          RCL_Eb,
Line 1527  void (*insttable_G2Eb[])(BYTE *) = { Line 1527  void (*insttable_G2Eb[])(BYTE *) = {
         SHL_Eb,          SHL_Eb,
         SAR_Eb,          SAR_Eb,
 };  };
 void (*insttable_G2Eb_ext[])(DWORD) = {  void (*insttable_G2Eb_ext[])(UINT32) = {
         ROL_Eb_ext,          ROL_Eb_ext,
         ROR_Eb_ext,          ROR_Eb_ext,
         RCL_Eb_ext,          RCL_Eb_ext,
Line 1538  void (*insttable_G2Eb_ext[])(DWORD) = { Line 1538  void (*insttable_G2Eb_ext[])(DWORD) = {
         SAR_Eb_ext,          SAR_Eb_ext,
 };  };
   
 void (*insttable_G2Ew[])(WORD *) = {  void (*insttable_G2Ew[])(UINT16 *) = {
         ROL_Ew,          ROL_Ew,
         ROR_Ew,          ROR_Ew,
         RCL_Ew,          RCL_Ew,
Line 1548  void (*insttable_G2Ew[])(WORD *) = { Line 1548  void (*insttable_G2Ew[])(WORD *) = {
         SHL_Ew,          SHL_Ew,
         SAR_Ew,          SAR_Ew,
 };  };
 void (*insttable_G2Ew_ext[])(DWORD) = {  void (*insttable_G2Ew_ext[])(UINT32) = {
         ROL_Ew_ext,          ROL_Ew_ext,
         ROR_Ew_ext,          ROR_Ew_ext,
         RCL_Ew_ext,          RCL_Ew_ext,
Line 1559  void (*insttable_G2Ew_ext[])(DWORD) = { Line 1559  void (*insttable_G2Ew_ext[])(DWORD) = {
         SAR_Ew_ext,          SAR_Ew_ext,
 };  };
   
 void (*insttable_G2Ed[])(DWORD *) = {  void (*insttable_G2Ed[])(UINT32 *) = {
         ROL_Ed,          ROL_Ed,
         ROR_Ed,          ROR_Ed,
         RCL_Ed,          RCL_Ed,
Line 1569  void (*insttable_G2Ed[])(DWORD *) = { Line 1569  void (*insttable_G2Ed[])(DWORD *) = {
         SHL_Ed,          SHL_Ed,
         SAR_Ed,          SAR_Ed,
 };  };
 void (*insttable_G2Ed_ext[])(DWORD) = {  void (*insttable_G2Ed_ext[])(UINT32) = {
         ROL_Ed_ext,          ROL_Ed_ext,
         ROR_Ed_ext,          ROR_Ed_ext,
         RCL_Ed_ext,          RCL_Ed_ext,
Line 1580  void (*insttable_G2Ed_ext[])(DWORD) = { Line 1580  void (*insttable_G2Ed_ext[])(DWORD) = {
         SAR_Ed_ext,          SAR_Ed_ext,
 };  };
   
 void (*insttable_G2EbCL[])(BYTE *, BYTE) = {  void (*insttable_G2EbCL[])(UINT8 *, UINT) = {
         ROL_EbCL,          ROL_EbCL,
         ROR_EbCL,          ROR_EbCL,
         RCL_EbCL,          RCL_EbCL,
Line 1590  void (*insttable_G2EbCL[])(BYTE *, BYTE) Line 1590  void (*insttable_G2EbCL[])(BYTE *, BYTE)
         SHL_EbCL,          SHL_EbCL,
         SAR_EbCL,          SAR_EbCL,
 };  };
 void (*insttable_G2EbCL_ext[])(DWORD, BYTE) = {  void (*insttable_G2EbCL_ext[])(UINT32, UINT) = {
         ROL_EbCL_ext,          ROL_EbCL_ext,
         ROR_EbCL_ext,          ROR_EbCL_ext,
         RCL_EbCL_ext,          RCL_EbCL_ext,
Line 1601  void (*insttable_G2EbCL_ext[])(DWORD, BY Line 1601  void (*insttable_G2EbCL_ext[])(DWORD, BY
         SAR_EbCL_ext,          SAR_EbCL_ext,
 };  };
   
 void (*insttable_G2EwCL[])(WORD *, BYTE) = {  void (*insttable_G2EwCL[])(UINT16 *, UINT) = {
         ROL_EwCL,          ROL_EwCL,
         ROR_EwCL,          ROR_EwCL,
         RCL_EwCL,          RCL_EwCL,
Line 1611  void (*insttable_G2EwCL[])(WORD *, BYTE) Line 1611  void (*insttable_G2EwCL[])(WORD *, BYTE)
         SHL_EwCL,          SHL_EwCL,
         SAR_EwCL,          SAR_EwCL,
 };  };
 void (*insttable_G2EwCL_ext[])(DWORD, BYTE) = {  void (*insttable_G2EwCL_ext[])(UINT32, UINT) = {
         ROL_EwCL_ext,          ROL_EwCL_ext,
         ROR_EwCL_ext,          ROR_EwCL_ext,
         RCL_EwCL_ext,          RCL_EwCL_ext,
Line 1622  void (*insttable_G2EwCL_ext[])(DWORD, BY Line 1622  void (*insttable_G2EwCL_ext[])(DWORD, BY
         SAR_EwCL_ext,          SAR_EwCL_ext,
 };  };
   
 void (*insttable_G2EdCL[])(DWORD *, BYTE) = {  void (*insttable_G2EdCL[])(UINT32 *, UINT) = {
         ROL_EdCL,          ROL_EdCL,
         ROR_EdCL,          ROR_EdCL,
         RCL_EdCL,          RCL_EdCL,
Line 1632  void (*insttable_G2EdCL[])(DWORD *, BYTE Line 1632  void (*insttable_G2EdCL[])(DWORD *, BYTE
         SHL_EdCL,          SHL_EdCL,
         SAR_EdCL,          SAR_EdCL,
 };  };
 void (*insttable_G2EdCL_ext[])(DWORD, BYTE) = {  void (*insttable_G2EdCL_ext[])(UINT32, UINT) = {
         ROL_EdCL_ext,          ROL_EdCL_ext,
         ROR_EdCL_ext,          ROR_EdCL_ext,
         RCL_EdCL_ext,          RCL_EdCL_ext,
Line 1644  void (*insttable_G2EdCL_ext[])(DWORD, BY Line 1644  void (*insttable_G2EdCL_ext[])(DWORD, BY
 };  };
   
 /* group 3 */  /* group 3 */
 void (*insttable_G3Eb[])(DWORD) = {  void (*insttable_G3Eb[])(UINT32) = {
         TEST_EbIb,          TEST_EbIb,
         TEST_EbIb,          TEST_EbIb,
         NOT_Eb,          NOT_Eb,
Line 1655  void (*insttable_G3Eb[])(DWORD) = { Line 1655  void (*insttable_G3Eb[])(DWORD) = {
         IDIV_ALEb,          IDIV_ALEb,
 };  };
   
 void (*insttable_G3Ew[])(DWORD) = {  void (*insttable_G3Ew[])(UINT32) = {
         TEST_EwIw,          TEST_EwIw,
         TEST_EwIw,          TEST_EwIw,
         NOT_Ew,          NOT_Ew,
Line 1666  void (*insttable_G3Ew[])(DWORD) = { Line 1666  void (*insttable_G3Ew[])(DWORD) = {
         IDIV_AXEw,          IDIV_AXEw,
 };  };
   
 void (*insttable_G3Ed[])(DWORD) = {  void (*insttable_G3Ed[])(UINT32) = {
         TEST_EdId,          TEST_EdId,
         TEST_EdId,          TEST_EdId,
         NOT_Ed,          NOT_Ed,
Line 1678  void (*insttable_G3Ed[])(DWORD) = { Line 1678  void (*insttable_G3Ed[])(DWORD) = {
 };  };
   
 /* group 4 */  /* group 4 */
 void (*insttable_G4[])(DWORD) = {  void (*insttable_G4[])(UINT32) = {
         INC_Eb,          INC_Eb,
         DEC_Eb,          DEC_Eb,
         undef_op2,          undef_op2,
Line 1690  void (*insttable_G4[])(DWORD) = { Line 1690  void (*insttable_G4[])(DWORD) = {
 };  };
   
 /* group 5 */  /* group 5 */
 void (*insttable_G5Ew[])(DWORD) = {  void (*insttable_G5Ew[])(UINT32) = {
         INC_Ew,          INC_Ew,
         DEC_Ew,          DEC_Ew,
         CALL_Ew,          CALL_Ew,
Line 1701  void (*insttable_G5Ew[])(DWORD) = { Line 1701  void (*insttable_G5Ew[])(DWORD) = {
         undef_op2,      /* POP_Ew_G5 */          undef_op2,      /* POP_Ew_G5 */
 };  };
   
 void (*insttable_G5Ed[])(DWORD) = {  void (*insttable_G5Ed[])(UINT32) = {
         INC_Ed,          INC_Ed,
         DEC_Ed,          DEC_Ed,
         CALL_Ed,          CALL_Ed,
Line 1713  void (*insttable_G5Ed[])(DWORD) = { Line 1713  void (*insttable_G5Ed[])(DWORD) = {
 };  };
   
 /* group 6 */  /* group 6 */
 void (*insttable_G6[])(DWORD) = {  void (*insttable_G6[])(UINT32) = {
         SLDT_Ew,          SLDT_Ew,
         STR_Ew,          STR_Ew,
         LLDT_Ew,          LLDT_Ew,
Line 1725  void (*insttable_G6[])(DWORD) = { Line 1725  void (*insttable_G6[])(DWORD) = {
 };  };
   
 /* group 7 */  /* group 7 */
 void (*insttable_G7[])(DWORD) = {  void (*insttable_G7[])(UINT32) = {
         SGDT_Ms,          SGDT_Ms,
         SIDT_Ms,          SIDT_Ms,
         LGDT_Ms,          LGDT_Ms,
Line 1737  void (*insttable_G7[])(DWORD) = { Line 1737  void (*insttable_G7[])(DWORD) = {
 };  };
   
 /* group 8 */  /* group 8 */
 void (*insttable_G8EwIb[])(DWORD) = {  void (*insttable_G8EwIb[])(UINT32) = {
         undef_op2,          undef_op2,
         undef_op2,          undef_op2,
         undef_op2,          undef_op2,
Line 1748  void (*insttable_G8EwIb[])(DWORD) = { Line 1748  void (*insttable_G8EwIb[])(DWORD) = {
         BTC_EwIb,          BTC_EwIb,
 };  };
   
 void (*insttable_G8EdIb[])(DWORD) = {  void (*insttable_G8EdIb[])(UINT32) = {
         undef_op2,          undef_op2,
         undef_op2,          undef_op2,
         undef_op2,          undef_op2,
Line 1760  void (*insttable_G8EdIb[])(DWORD) = { Line 1760  void (*insttable_G8EdIb[])(DWORD) = {
 };  };
   
 /* group 9 */  /* group 9 */
 void (*insttable_G9[])(DWORD) = {  void (*insttable_G9[])(UINT32) = {
         undef_op2,          undef_op2,
         CMPXCHG8B,          CMPXCHG8B,
         undef_op2,          undef_op2,

Removed from v.1.5  
changed lines
  Added in v.1.7


RetroPC.NET-CVS <cvs@retropc.net>