Changeset 4953
- Timestamp:
- 09/21/07 16:08:19 (1 year ago)
- Files:
-
- trunk/include/VBox/dis.h (modified) (10 diffs)
- trunk/include/VBox/err.h (modified) (1 diff)
- trunk/src/VBox/Disassembler/Disasm.cpp (modified) (9 diffs)
- trunk/src/VBox/Disassembler/DisasmCore.cpp (modified) (62 diffs)
- trunk/src/VBox/Disassembler/DisasmInternal.h (modified) (1 diff)
- trunk/src/VBox/VMM/CPUM.cpp (modified) (8 diffs)
- trunk/src/VBox/VMM/DBGFDisas.cpp (modified) (9 diffs)
- trunk/src/VBox/VMM/PATM/CSAM.cpp (modified) (8 diffs)
- trunk/src/VBox/VMM/PATM/PATM.cpp (modified) (1 diff)
- trunk/src/VBox/VMM/PATM/PATMInternal.h (modified) (2 diffs)
- trunk/src/VBox/VMM/PGMInternal.h (modified) (1 diff)
- trunk/src/VBox/VMM/VMMAll/EMAll.cpp (modified) (1 diff)
- trunk/src/VBox/VMM/VMMAll/IOMAllMMIO.cpp (modified) (2 diffs)
- trunk/src/VBox/VMM/VMMAll/PGMAllHandler.cpp (modified) (1 diff)
- trunk/src/VBox/VMM/VMMR0/VMMR0.cpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/include/VBox/dis.h
r4071 r4953 33 33 * @{ 34 34 */ 35 #define CPUMODE_16BIT 1 36 #define CPUMODE_32BIT 2 35 typedef enum 36 { 37 CPUMODE_16BIT = 1, 38 CPUMODE_32BIT = 2, 39 CPUMODE_64BIT = 3 40 } DISCPUMODE; 37 41 /** @} */ 38 42 … … 313 317 typedef const struct _OPCODE *PCOPCODE; 314 318 315 typedef DECLCALLBACK(int 32_t) FN_DIS_READBYTES(RTUINTPTR pSrc, uint8_t *pDest, uint32_t size, RTUINTPTR dwUserdata);319 typedef DECLCALLBACK(int) FN_DIS_READBYTES(RTUINTPTR pSrc, uint8_t *pDest, uint32_t size, void *pvUserdata); 316 320 typedef FN_DIS_READBYTES *PFN_DIS_READBYTES; 317 321 … … 323 327 /** Parser callback. 324 328 * @remark no DECLCALLBACK() here because it's considered to be internal (really, I'm too lazy to update all the functions). */ 325 typedef intFNDISPARSE(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);329 typedef unsigned FNDISPARSE(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 326 330 typedef FNDISPARSE *PFNDISPARSE; 327 331 … … 370 374 PCOPCODE pCurInstr; 371 375 372 RTUINTPTR dwUserData[3];376 void *apvUserData[3]; 373 377 374 378 /** Optional read function */ … … 402 406 * Disassembles a code block. 403 407 * 404 * @returns Success indicator.408 * @returns VBox error code 405 409 * @param pCpu Pointer to cpu structure which have DISCPUSTATE::mode 406 410 * set correctly. … … 419 423 * This means *pcbSize >= cbMax sometimes. 420 424 */ 421 DISDECL( bool) DISBlock(PDISCPUSTATE pCpu, RTUINTPTR pvCodeBlock, int32_t cbMax, uint32_t*pSize);425 DISDECL(int) DISBlock(PDISCPUSTATE pCpu, RTUINTPTR pvCodeBlock, unsigned cbMax, unsigned *pSize); 422 426 423 427 /** 424 428 * Disassembles one instruction 425 429 * 426 * @returns Success indicator.430 * @returns VBox error code 427 431 * @param pCpu Pointer to cpu structure which have DISCPUSTATE::mode 428 432 * set correctly. … … 435 439 * @todo Define output callback. 436 440 */ 437 DISDECL( bool) DISInstr(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, uint32_t u32EipOffset, uint32_t*pcbSize, char *pszOutput);441 DISDECL(int) DISInstr(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, unsigned u32EipOffset, unsigned *pcbSize, char *pszOutput); 438 442 439 443 /** 440 444 * Disassembles one instruction 441 445 * 442 * @returns Success indicator.446 * @returns VBox error code 443 447 * @param pCpu Pointer to cpu structure which have DISCPUSTATE::mode 444 448 * set correctly. … … 452 456 * @todo Define output callback. 453 457 */ 454 DISDECL( bool) DISInstrEx(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, uint32_t u32EipOffset, uint32_t *pcbSize,455 char *pszOutput, u int32_tuFilter);458 DISDECL(int) DISInstrEx(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, uint32_t u32EipOffset, uint32_t *pcbSize, 459 char *pszOutput, unsigned uFilter); 456 460 457 461 /** … … 459 463 * The result is found in pCpu. 460 464 * 461 * @returns Success indicator.465 * @returns VBox error code 462 466 * @param pCpu Pointer to cpu structure which has DISCPUSTATE::mode set correctly. 463 467 * @param InstructionAddr Pointer to the instruction to parse. … … 465 469 * NULL is allowed. 466 470 */ 467 DISDECL( bool) DISCoreOne(PDISCPUSTATE pCpu, RTUINTPTR InstructionAddr, unsigned *pcbInstruction);471 DISDECL(int) DISCoreOne(PDISCPUSTATE pCpu, RTUINTPTR InstructionAddr, unsigned *pcbInstruction); 468 472 469 473 /** trunk/include/VBox/err.h
r4738 r4953 1117 1117 1118 1118 1119 /** @name VBox Disassembler Status Codes 1120 * @{ 1121 */ 1122 /** Invalid opcode byte(s) */ 1123 #define VERR_DIS_INVALID_OPCODE (-5000) 1124 /** Generic failure during disassembly. */ 1125 #define VERR_DIS_GEN_FAILURE (-5001) 1126 /** @} */ 1127 1119 1128 /* SED-END */ 1120 1129 trunk/src/VBox/Disassembler/Disasm.cpp
r4071 r4953 36 36 * Disassembles a code block. 37 37 * 38 * @returns Success indicator.38 * @returns VBox error code 39 39 * @param pCpu Pointer to cpu structure which have DISCPUSTATE::mode 40 40 * set correctly. … … 53 53 * This means *pcbSize >= cbMax sometimes. 54 54 */ 55 DISDECL( bool) DISBlock(PDISCPUSTATE pCpu, RTUINTPTR pvCodeBlock, int32_t cbMax, uint32_t*pSize)55 DISDECL(int) DISBlock(PDISCPUSTATE pCpu, RTUINTPTR pvCodeBlock, unsigned cbMax, unsigned *pSize) 56 56 { 57 int32_ti = 0;57 unsigned i = 0; 58 58 char szOutput[256]; 59 59 60 60 while (i < cbMax) 61 61 { 62 uint32_t cbInstr; 63 if (!DISInstr(pCpu, pvCodeBlock + i, 0, &cbInstr, szOutput)) 64 return false; 62 unsigned cbInstr; 63 int rc = DISInstr(pCpu, pvCodeBlock + i, 0, &cbInstr, szOutput); 64 if (VBOX_FAILURE(rc)) 65 return rc; 65 66 66 67 i += cbInstr; … … 75 76 * Disassembles one instruction 76 77 * 77 * @returns Success indicator.78 * @returns VBox error code 78 79 * @param pCpu Pointer to cpu structure which have DISCPUSTATE::mode 79 80 * set correctly. … … 86 87 * @todo Define output callback. 87 88 */ 88 DISDECL( bool) DISInstr(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, uint32_t u32EipOffset, uint32_t*pcbSize,89 DISDECL(int) DISInstr(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, unsigned u32EipOffset, unsigned *pcbSize, 89 90 char *pszOutput) 90 91 { … … 95 96 * Disassembles one instruction; only fully disassembly an instruction if it matches the filter criteria 96 97 * 97 * @returns Success indicator.98 * @returns VBox error code 98 99 * @param pCpu Pointer to cpu structure which have DISCPUSTATE::mode 99 100 * set correctly. … … 107 108 * @todo Define output callback. 108 109 */ 109 DISDECL( bool) DISInstrEx(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, uint32_t u32EipOffset, uint32_t*pcbSize,110 char *pszOutput, u int32_tuFilter)110 DISDECL(int) DISInstrEx(PDISCPUSTATE pCpu, RTUINTPTR pu8Instruction, unsigned u32EipOffset, unsigned *pcbSize, 111 char *pszOutput, unsigned uFilter) 111 112 { 112 inti = 0, prefixbytes;113 intidx, inc;113 unsigned i = 0, prefixbytes; 114 unsigned idx, inc; 114 115 #ifdef __L4ENV__ 115 116 jmp_buf jumpbuffer; … … 165 166 AssertMsgFailed(("Invalid opcode!!\n")); 166 167 #endif 167 return false;168 return VERR_DIS_INVALID_OPCODE; 168 169 169 170 // segment override prefix byte … … 245 246 if (pcbSize) 246 247 *pcbSize = 0; 247 return false;248 return VERR_DIS_GEN_FAILURE; 248 249 } 249 250 … … 251 252 *pcbSize = i; 252 253 253 return true;254 return VINF_SUCCESS; 254 255 } 255 256 //***************************************************************************** trunk/src/VBox/Disassembler/DisasmCore.cpp
r4283 r4953 60 60 #endif 61 61 62 static intQueryModRM(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc = NULL);63 static intQueryModRM_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc = NULL);64 static intUseSIB(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);65 static intParseSIB_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);62 static unsigned QueryModRM(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc = NULL); 63 static unsigned QueryModRM_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc = NULL); 64 static void UseSIB(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 65 static unsigned ParseSIB_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 66 66 67 67 /******************************************************************************* … … 257 257 * NULL is allowed. 258 258 */ 259 DISDECL( bool) DISCoreOne(PDISCPUSTATE pCpu, RTUINTPTR InstructionAddr, unsigned *pcbInstruction)259 DISDECL(int) DISCoreOne(PDISCPUSTATE pCpu, RTUINTPTR InstructionAddr, unsigned *pcbInstruction) 260 260 { 261 261 /* … … 295 295 * @param InstructionAddr Address of the instruction to decode. What this means 296 296 * is left to the pfnReadBytes function. 297 * @param CpuModeThe CPU mode. CPUMODE_32BIT, CPUMODE_16BIT, or CPUMODE_64BIT.297 * @param uCpuMode The CPU mode. CPUMODE_32BIT, CPUMODE_16BIT, or CPUMODE_64BIT. 298 298 * @param pfnReadBytes Callback for reading instruction bytes. 299 * @param pvUser User argument for the instruction reader. (Ends up in dwUserData[0].)299 * @param pvUser User argument for the instruction reader. (Ends up in apvUserData[0].) 300 300 * @param pCpu Pointer to cpu structure. Will be initialized. 301 301 * @param pcbInstruction Where to store the size of the instruction. 302 302 * NULL is allowed. 303 303 */ 304 DISDECL(int) DISCoreOneEx(RTUINTPTR InstructionAddr, unsigned CpuMode, PFN_DIS_READBYTES pfnReadBytes, void *pvUser,304 DISDECL(int) DISCoreOneEx(RTUINTPTR InstructionAddr, unsigned uCpuMode, PFN_DIS_READBYTES pfnReadBytes, void *pvUser, 305 305 PDISCPUSTATE pCpu, unsigned *pcbInstruction) 306 306 { … … 311 311 pCpu->prefix_seg = 0; 312 312 pCpu->lastprefix = 0; 313 pCpu->mode = CpuMode;314 pCpu->addrmode = CpuMode;315 pCpu->opmode = CpuMode;313 pCpu->mode = uCpuMode; 314 pCpu->addrmode = uCpuMode; 315 pCpu->opmode = uCpuMode; 316 316 pCpu->ModRM = 0; 317 317 pCpu->SIB = 0; … … 322 322 pCpu->param2.szParam[0] = '\0'; 323 323 pCpu->param3.szParam[0] = '\0'; 324 pCpu->param1.flags = 0;325 pCpu->param2.flags = 0;326 pCpu->param3.flags = 0;327 pCpu->param1.size = 0;328 pCpu->param2.size = 0;329 pCpu->param3.size = 0;330 pCpu->pfnReadBytes = pfnReadBytes;331 pCpu-> dwUserData[0] = (uintptr_t)pvUser; Assert(sizeof(pCpu->dwUserData) >= sizeof(uintptr_t));332 pCpu->uFilter = OPTYPE_ALL;333 pCpu->pfnDisasmFnTable = pfnFullDisasm;324 pCpu->param1.flags = 0; 325 pCpu->param2.flags = 0; 326 pCpu->param3.flags = 0; 327 pCpu->param1.size = 0; 328 pCpu->param2.size = 0; 329 pCpu->param3.size = 0; 330 pCpu->pfnReadBytes = pfnReadBytes; 331 pCpu->apvUserData[0] = pvUser; 332 pCpu->uFilter = OPTYPE_ALL; 333 pCpu->pfnDisasmFnTable = pfnFullDisasm; 334 334 335 335 return disCoreOne(pCpu, InstructionAddr, pcbInstruction); … … 838 838 //***************************************************************************** 839 839 //***************************************************************************** 840 intParseInstruction(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, PDISCPUSTATE pCpu)840 unsigned ParseInstruction(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, PDISCPUSTATE pCpu) 841 841 { 842 842 int size = 0; … … 888 888 /* Floating point opcode parsing */ 889 889 //***************************************************************************** 890 intParseEscFP(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)890 unsigned ParseEscFP(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 891 891 { 892 892 int index; 893 893 const OPCODE *fpop; 894 intsize = 0;894 unsigned size = 0; 895 895 896 896 pCpu->ModRM = DISReadByte(pCpu, lpszCodeBlock); … … 971 971 972 972 //***************************************************************************** 973 intUseSIB(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)973 void UseSIB(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 974 974 { 975 975 int scale, base, index; … … 1019 1019 pParam->base.reg_gen32 = base; 1020 1020 } 1021 return 0; //already fetched everything in ParseSIB1022 } 1023 //***************************************************************************** 1024 //***************************************************************************** 1025 intParseSIB(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1026 { 1027 intsize = sizeof(uint8_t), base;1021 return; /* Already fetched everything in ParseSIB; no size returned */ 1022 } 1023 //***************************************************************************** 1024 //***************************************************************************** 1025 unsigned ParseSIB(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1026 { 1027 unsigned size = sizeof(uint8_t), base; 1028 1028 1029 1029 pCpu->SIB = DISReadByte(pCpu, lpszCodeBlock); … … 1040 1040 //***************************************************************************** 1041 1041 //***************************************************************************** 1042 intParseSIB_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1043 { 1044 intsize = sizeof(uint8_t), base;1042 unsigned ParseSIB_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1043 { 1044 unsigned size = sizeof(uint8_t), base; 1045 1045 1046 1046 pCpu->SIB = DISReadByte(pCpu, lpszCodeBlock); … … 1059 1059 // Mod Reg/Opcode R/M 1060 1060 //***************************************************************************** 1061 intUseModRM(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1061 unsigned UseModRM(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1062 1062 { 1063 1063 int reg = MODRM_REG(pCpu->ModRM); … … 1262 1262 // Query the size of the ModRM parameters and fetch the immediate data (if any) 1263 1263 //***************************************************************************** 1264 intQueryModRM(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc)1264 unsigned QueryModRM(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc) 1265 1265 { 1266 1266 int mod, rm, sibinc; 1267 intsize = 0;1267 unsigned size = 0; 1268 1268 1269 1269 rm = MODRM_RM(pCpu->ModRM); … … 1340 1340 // Query the size of the ModRM parameters and fetch the immediate data (if any) 1341 1341 //***************************************************************************** 1342 intQueryModRM_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc)1342 unsigned QueryModRM_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu, int *pSibInc) 1343 1343 { 1344 1344 int mod, rm, sibinc; 1345 intsize = 0;1345 unsigned size = 0; 1346 1346 1347 1347 rm = MODRM_RM(pCpu->ModRM); … … 1411 1411 //***************************************************************************** 1412 1412 //***************************************************************************** 1413 intParseIllegal(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1413 unsigned ParseIllegal(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1414 1414 { 1415 1415 AssertFailed(); … … 1418 1418 //***************************************************************************** 1419 1419 //***************************************************************************** 1420 intParseModRM(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1421 { 1422 intsize = sizeof(uint8_t); //ModRM byte1420 unsigned ParseModRM(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1421 { 1422 unsigned size = sizeof(uint8_t); //ModRM byte 1423 1423 int sibinc; 1424 1424 … … 1435 1435 //***************************************************************************** 1436 1436 //***************************************************************************** 1437 intParseModRM_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1438 { 1439 intsize = sizeof(uint8_t); //ModRM byte1437 unsigned ParseModRM_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1438 { 1439 unsigned size = sizeof(uint8_t); //ModRM byte 1440 1440 int sibinc; 1441 1441 … … 1451 1451 //***************************************************************************** 1452 1452 //***************************************************************************** 1453 intParseModFence(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1453 unsigned ParseModFence(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1454 1454 { 1455 1455 ////AssertMsgFailed(("??\n")); … … 1459 1459 //***************************************************************************** 1460 1460 //***************************************************************************** 1461 intParseImmByte(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1461 unsigned ParseImmByte(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1462 1462 { 1463 1463 pParam->parval = DISReadByte(pCpu, lpszCodeBlock); … … 1469 1469 //***************************************************************************** 1470 1470 //***************************************************************************** 1471 intParseImmByte_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1471 unsigned ParseImmByte_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1472 1472 { 1473 1473 return sizeof(uint8_t); … … 1475 1475 //***************************************************************************** 1476 1476 //***************************************************************************** 1477 intParseImmByteSX(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1477 unsigned ParseImmByteSX(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1478 1478 { 1479 1479 if(pCpu->opmode == CPUMODE_32BIT) … … 1493 1493 //***************************************************************************** 1494 1494 //***************************************************************************** 1495 intParseImmByteSX_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1495 unsigned ParseImmByteSX_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1496 1496 { 1497 1497 return sizeof(uint8_t); … … 1499 1499 //***************************************************************************** 1500 1500 //***************************************************************************** 1501 intParseImmUshort(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1501 unsigned ParseImmUshort(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1502 1502 { 1503 1503 pParam->parval = DISReadWord(pCpu, lpszCodeBlock); … … 1509 1509 //***************************************************************************** 1510 1510 //***************************************************************************** 1511 intParseImmUshort_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1511 unsigned ParseImmUshort_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1512 1512 { 1513 1513 return sizeof(uint16_t); … … 1515 1515 //***************************************************************************** 1516 1516 //***************************************************************************** 1517 intParseImmUlong(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1517 unsigned ParseImmUlong(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1518 1518 { 1519 1519 pParam->parval = DISReadDWord(pCpu, lpszCodeBlock); … … 1525 1525 //***************************************************************************** 1526 1526 //***************************************************************************** 1527 intParseImmUlong_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1527 unsigned ParseImmUlong_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1528 1528 { 1529 1529 return sizeof(uint32_t); … … 1531 1531 //***************************************************************************** 1532 1532 //***************************************************************************** 1533 intParseImmQword(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1533 unsigned ParseImmQword(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1534 1534 { 1535 1535 pParam->parval = DISReadQWord(pCpu, lpszCodeBlock); … … 1542 1542 //***************************************************************************** 1543 1543 //***************************************************************************** 1544 intParseImmQword_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1544 unsigned ParseImmQword_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1545 1545 { 1546 1546 return sizeof(uint64_t); … … 1548 1548 //***************************************************************************** 1549 1549 //***************************************************************************** 1550 intParseImmV(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1550 unsigned ParseImmV(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1551 1551 { 1552 1552 if(pCpu->opmode == CPUMODE_32BIT) … … 1569 1569 //***************************************************************************** 1570 1570 //***************************************************************************** 1571 intParseImmV_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1571 unsigned ParseImmV_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1572 1572 { 1573 1573 if(pCpu->opmode == CPUMODE_32BIT) … … 1583 1583 // Relative displacement for branches (rel. to next instruction) 1584 1584 //***************************************************************************** 1585 intParseImmBRel(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1585 unsigned ParseImmBRel(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1586 1586 { 1587 1587 pParam->parval = DISReadByte(pCpu, lpszCodeBlock); … … 1594 1594 // Relative displacement for branches (rel. to next instruction) 1595 1595 //***************************************************************************** 1596 intParseImmBRel_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1596 unsigned ParseImmBRel_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1597 1597 { 1598 1598 return sizeof(char); … … 1601 1601 // Relative displacement for branches (rel. to next instruction) 1602 1602 //***************************************************************************** 1603 intParseImmVRel(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1603 unsigned ParseImmVRel(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1604 1604 { 1605 1605 if(pCpu->opmode == CPUMODE_32BIT) … … 1623 1623 // Relative displacement for branches (rel. to next instruction) 1624 1624 //***************************************************************************** 1625 intParseImmVRel_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1625 unsigned ParseImmVRel_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1626 1626 { 1627 1627 if(pCpu->opmode == CPUMODE_32BIT) … … 1636 1636 //***************************************************************************** 1637 1637 //***************************************************************************** 1638 intParseImmAddr(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1638 unsigned ParseImmAddr(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1639 1639 { 1640 1640 disasmGetPtrString(pCpu, pOp, pParam); … … 1689 1689 //***************************************************************************** 1690 1690 //***************************************************************************** 1691 intParseImmAddr_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1691 unsigned ParseImmAddr_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1692 1692 { 1693 1693 if(pCpu->addrmode == CPUMODE_32BIT) … … 1716 1716 //***************************************************************************** 1717 1717 //***************************************************************************** 1718 intParseFixedReg(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1718 unsigned ParseFixedReg(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1719 1719 { 1720 1720 /* … … 1786 1786 //***************************************************************************** 1787 1787 //***************************************************************************** 1788 intParseXv(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1788 unsigned ParseXv(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1789 1789 { 1790 1790 disasmGetPtrString(pCpu, pOp, pParam); … … 1806 1806 //***************************************************************************** 1807 1807 //***************************************************************************** 1808 intParseXb(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1808 unsigned ParseXb(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1809 1809 { 1810 1810 disasmAddStringF(pParam->szParam, sizeof(pParam->szParam), (pCpu->addrmode == CPUMODE_32BIT) ? "DS:ESI" : "DS:SI"); … … 1825 1825 //***************************************************************************** 1826 1826 //***************************************************************************** 1827 intParseYv(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1827 unsigned ParseYv(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1828 1828 { 1829 1829 disasmGetPtrString(pCpu, pOp, pParam); … … 1845 1845 //***************************************************************************** 1846 1846 //***************************************************************************** 1847 intParseYb(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1847 unsigned ParseYb(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1848 1848 { 1849 1849 disasmAddStringF(pParam->szParam, sizeof(pParam->szParam), (pCpu->addrmode == CPUMODE_32BIT) ? "ES:EDI" : "ES:DI"); … … 1864 1864 //***************************************************************************** 1865 1865 //***************************************************************************** 1866 intParseTwoByteEsc(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1866 unsigned ParseTwoByteEsc(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1867 1867 { 1868 1868 const OPCODE *pOpcode; … … 1920 1920 //***************************************************************************** 1921 1921 //***************************************************************************** 1922 intParseNopPause(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1923 { 1924 intsize = 0;1922 unsigned ParseNopPause(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1923 { 1924 unsigned size = 0; 1925 1925 1926 1926 if (pCpu->prefix & PREFIX_REP) … … 1937 1937 //***************************************************************************** 1938 1938 //***************************************************************************** 1939 intParseImmGrpl(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1939 unsigned ParseImmGrpl(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1940 1940 { 1941 1941 int idx = (pCpu->opcode - 0x80) * 8; 1942 intsize = 0, modrm, reg;1942 unsigned size = 0, modrm, reg; 1943 1943 1944 1944 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 1958 1958 //***************************************************************************** 1959 1959 //***************************************************************************** 1960 intParseShiftGrp2(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)1960 unsigned ParseShiftGrp2(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1961 1961 { 1962 1962 int idx; 1963 intsize = 0, modrm, reg;1963 unsigned size = 0, modrm, reg; 1964 1964 1965 1965 switch(pCpu->opcode) … … 1999 1999 //***************************************************************************** 2000 2000 //***************************************************************************** 2001 intParseGrp3(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2001 unsigned ParseGrp3(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2002 2002 { 2003 2003 int idx = (pCpu->opcode - 0xF6) * 8; 2004 intsize = 0, modrm, reg;2004 unsigned size = 0, modrm, reg; 2005 2005 2006 2006 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2021 2021 //***************************************************************************** 2022 2022 //***************************************************************************** 2023 intParseGrp4(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2024 { 2025 intsize = 0, modrm, reg;2023 unsigned ParseGrp4(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2024 { 2025 unsigned size = 0, modrm, reg; 2026 2026 2027 2027 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2042 2042 //***************************************************************************** 2043 2043 //***************************************************************************** 2044 intParseGrp5(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2045 { 2046 intsize = 0, modrm, reg;2044 unsigned ParseGrp5(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2045 { 2046 unsigned size = 0, modrm, reg; 2047 2047 2048 2048 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2067 2067 // 2068 2068 //***************************************************************************** 2069 intParse3DNow(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2070 { 2071 intsize = 0, modrmsize;2069 unsigned Parse3DNow(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2070 { 2071 unsigned size = 0, modrmsize; 2072 2072 2073 2073 #ifdef DEBUG_Sander … … 2100 2100 //***************************************************************************** 2101 2101 //***************************************************************************** 2102 intParseGrp6(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2103 { 2104 intsize = 0, modrm, reg;2102 unsigned ParseGrp6(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2103 { 2104 unsigned size = 0, modrm, reg; 2105 2105 2106 2106 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2121 2121 //***************************************************************************** 2122 2122 //***************************************************************************** 2123 intParseGrp7(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2124 { 2125 intsize = 0, modrm, reg, rm, mod;2123 unsigned ParseGrp7(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2124 { 2125 unsigned size = 0, modrm, reg, rm, mod; 2126 2126 2127 2127 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2154 2154 //***************************************************************************** 2155 2155 //***************************************************************************** 2156 intParseGrp8(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2157 { 2158 intsize = 0, modrm, reg;2156 unsigned ParseGrp8(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2157 { 2158 unsigned size = 0, modrm, reg; 2159 2159 2160 2160 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2175 2175 //***************************************************************************** 2176 2176 //***************************************************************************** 2177 intParseGrp9(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2178 { 2179 intsize = 0, modrm, reg;2177 unsigned ParseGrp9(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2178 { 2179 unsigned size = 0, modrm, reg; 2180 2180 2181 2181 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2196 2196 //***************************************************************************** 2197 2197 //***************************************************************************** 2198 intParseGrp10(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2199 { 2200 intsize = 0, modrm, reg;2198 unsigned ParseGrp10(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2199 { 2200 unsigned size = 0, modrm, reg; 2201 2201 2202 2202 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2217 2217 //***************************************************************************** 2218 2218 //***************************************************************************** 2219 intParseGrp12(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2220 { 2221 intsize = 0, modrm, reg;2219 unsigned ParseGrp12(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2220 { 2221 unsigned size = 0, modrm, reg; 2222 2222 2223 2223 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2243 2243 //***************************************************************************** 2244 2244 //***************************************************************************** 2245 intParseGrp13(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2246 { 2247 intsize = 0, modrm, reg;2245 unsigned ParseGrp13(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2246 { 2247 unsigned size = 0, modrm, reg; 2248 2248 2249 2249 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2268 2268 //***************************************************************************** 2269 2269 //***************************************************************************** 2270 intParseGrp14(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2271 { 2272 intsize = 0, modrm, reg;2270 unsigned ParseGrp14(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2271 { 2272 unsigned size = 0, modrm, reg; 2273 2273 2274 2274 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2293 2293 //***************************************************************************** 2294 2294 //***************************************************************************** 2295 intParseGrp15(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2296 { 2297 intsize = 0, modrm, reg, mod, rm;2295 unsigned ParseGrp15(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2296 { 2297 unsigned size = 0, modrm, reg, mod, rm; 2298 2298 2299 2299 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2319 2319 //***************************************************************************** 2320 2320 //***************************************************************************** 2321 intParseGrp16(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu)2322 { 2323 intsize = 0, modrm, reg;2321 unsigned ParseGrp16(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 2322 { 2323 unsigned size = 0, modrm, reg; 2324 2324 2325 2325 modrm = DISReadByte(pCpu, lpszCodeBlock); … … 2511 2511 int rc; 2512 2512 2513 rc = pCpu->pfnReadBytes(pAddress, &temp, sizeof(temp), (RTUINTPTR)pCpu);2513 rc = pCpu->pfnReadBytes(pAddress, &temp, sizeof(temp), pCpu); 2514 2514 if(VBOX_FAILURE(rc)) 2515 2515 { … … 2535 2535 int rc; 2536 2536 2537 rc = pCpu->pfnReadBytes(pAddress, (uint8_t*)&temp, sizeof(temp), (RTUINTPTR)pCpu);2537 rc = pCpu->pfnReadBytes(pAddress, (uint8_t*)&temp, sizeof(temp), pCpu); 2538 2538 if(VBOX_FAILURE(rc)) 2539 2539 { … … 2559 2559 int rc; 2560 2560 2561 rc = pCpu->pfnReadBytes(pAddress, (uint8_t*)&temp, sizeof(temp), (RTUINTPTR)pCpu);2561 rc = pCpu->pfnReadBytes(pAddress, (uint8_t*)&temp, sizeof(temp), pCpu); 2562 2562 if(VBOX_FAILURE(rc)) 2563 2563 { … … 2583 2583 int rc; 2584 2584 2585 rc = pCpu->pfnReadBytes(pAddress, (uint8_t*)&temp, sizeof(temp), (RTUINTPTR)pCpu);2585 rc = pCpu->pfnReadBytes(pAddress, (uint8_t*)&temp, sizeof(temp), pCpu); 2586 2586 if(VBOX_FAILURE(rc)) 2587 2587 { trunk/src/VBox/Disassembler/DisasmInternal.h
r4071 r4953 82 82 __BEGIN_DECLS 83 83 84 intParseInstruction(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, PDISCPUSTATE pCpu);84 unsigned ParseInstruction(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, PDISCPUSTATE pCpu); 85 85 86 intParseIllegal(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);87 intParseModRM(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);88 intParseModRM_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);89 intUseModRM(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);90 intParseImmByte(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);91 intParseImmByte_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);92 intParseImmByteSX(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);93 intParseImmByteSX_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);94 intParseImmBRel(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);95 intParseImmBRel_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);96 intParseImmUshort(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);97 intParseImmUshort_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);98 intParseImmV(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);99 intParseImmV_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);100 intParseImmVRel(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);101 intParseImmVRel_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);86 unsigned ParseIllegal(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 87 unsigned ParseModRM(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 88 unsigned ParseModRM_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 89 unsigned UseModRM(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 90 unsigned ParseImmByte(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 91 unsigned ParseImmByte_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 92 unsigned ParseImmByteSX(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 93 unsigned ParseImmByteSX_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 94 unsigned ParseImmBRel(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 95 unsigned ParseImmBRel_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 96 unsigned ParseImmUshort(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 97 unsigned ParseImmUshort_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 98 unsigned ParseImmV(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 99 unsigned ParseImmV_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 100 unsigned ParseImmVRel(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 101 unsigned ParseImmVRel_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 102 102 103 intParseImmAddr(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);104 intParseImmAddr_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);105 intParseFixedReg(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);106 intParseImmUlong(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);107 intParseImmUlong_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);108 intParseImmQword(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);109 intParseImmQword_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);103 unsigned ParseImmAddr(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 104 unsigned ParseImmAddr_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 105 unsigned ParseFixedReg(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 106 unsigned ParseImmUlong(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 107 unsigned ParseImmUlong_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 108 unsigned ParseImmQword(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 109 unsigned ParseImmQword_SizeOnly(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu); 110 110 111 intParseTwoByteEsc(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);112 intParseImmGrpl(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);113 intParseShiftGrp2(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);114 intParseGrp3(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);115 intParseGrp4(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);116 intParseGrp5(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);117 intParse3DNow(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);118 intParseGrp6(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);119 intParseGrp7(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);120 intParseGrp8(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);121 intParseGrp9(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);122 intParseGrp10(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);123 intParseGrp12(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);124 intParseGrp13(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);125 intParseGrp14(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);126 intParseGrp15(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);127 intParseGrp16(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);128 intParseModFence(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);129 intParseNopPause(RTUINTPTR pu8CodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu);111 unsigned

