Changeset 41735 in vbox for trunk/src/VBox/Disassembler
- Timestamp:
- Jun 15, 2012 12:26:44 AM (13 years ago)
- svn:sync-xref-src-repo-rev:
- 78543
- Location:
- trunk/src/VBox/Disassembler
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Disassembler/DisasmCore.cpp
r41734 r41735 295 295 { 296 296 paOneByteMap = g_aOneByteMapX64; 297 pCpu-> addrmode= DISCPUMODE_64BIT;298 pCpu-> opmode= DISCPUMODE_32BIT;297 pCpu->uAddrMode = DISCPUMODE_64BIT; 298 pCpu->uOpMode = DISCPUMODE_32BIT; 299 299 } 300 300 else 301 301 { 302 302 paOneByteMap = g_aOneByteMapX86; 303 pCpu-> addrmode= enmCpuMode;304 pCpu-> opmode= enmCpuMode;303 pCpu->uAddrMode = enmCpuMode; 304 pCpu->uOpMode = enmCpuMode; 305 305 } 306 306 pCpu->fPrefix = DISPREFIX_NONE; … … 378 378 pCpu->fPrefix |= DISPREFIX_ADDRSIZE; 379 379 if (pCpu->mode == DISCPUMODE_16BIT) 380 pCpu-> addrmode = DISCPUMODE_32BIT;380 pCpu->uAddrMode = DISCPUMODE_32BIT; 381 381 else 382 382 if (pCpu->mode == DISCPUMODE_32BIT) 383 pCpu-> addrmode = DISCPUMODE_16BIT;383 pCpu->uAddrMode = DISCPUMODE_16BIT; 384 384 else 385 pCpu-> addrmode = DISCPUMODE_32BIT; /* 64 bits */385 pCpu->uAddrMode = DISCPUMODE_32BIT; /* 64 bits */ 386 386 387 387 iByte += sizeof(uint8_t); … … 392 392 pCpu->fPrefix |= DISPREFIX_OPSIZE; 393 393 if (pCpu->mode == DISCPUMODE_16BIT) 394 pCpu-> opmode = DISCPUMODE_32BIT;394 pCpu->uOpMode = DISCPUMODE_32BIT; 395 395 else 396 pCpu-> opmode = DISCPUMODE_16BIT; /* for 32 and 64 bits mode (there is no 32 bits operand size override prefix) */396 pCpu->uOpMode = DISCPUMODE_16BIT; /* for 32 and 64 bits mode (there is no 32 bits operand size override prefix) */ 397 397 398 398 iByte += sizeof(uint8_t); … … 418 418 419 419 if (pCpu->fRexPrefix & DISPREFIX_REX_FLAGS_W) 420 pCpu-> opmode = DISCPUMODE_64BIT; /* overrides size prefix byte */420 pCpu->uOpMode = DISCPUMODE_64BIT; /* overrides size prefix byte */ 421 421 continue; //fetch the next byte 422 422 } … … 479 479 { 480 480 if (pOp->optype & DISOPTYPE_FORCED_64_OP_SIZE) 481 pCpu-> opmode = DISCPUMODE_64BIT;481 pCpu->uOpMode = DISCPUMODE_64BIT; 482 482 else 483 483 if ( (pOp->optype & DISOPTYPE_DEFAULT_64_OP_SIZE) 484 484 && !(pCpu->fPrefix & DISPREFIX_OPSIZE)) 485 pCpu-> opmode = DISCPUMODE_64BIT;485 pCpu->uOpMode = DISCPUMODE_64BIT; 486 486 } 487 487 else … … 490 490 /* Forced 32 bits operand size for certain instructions (mov crx, mov drx). */ 491 491 Assert(pCpu->mode != DISCPUMODE_64BIT); 492 pCpu-> opmode = DISCPUMODE_32BIT;492 pCpu->uOpMode = DISCPUMODE_32BIT; 493 493 } 494 494 … … 558 558 /* Note: redundant, but just in case this ever changes */ 559 559 if (fpop->optype & DISOPTYPE_FORCED_64_OP_SIZE) 560 pCpu-> opmode = DISCPUMODE_64BIT;560 pCpu->uOpMode = DISCPUMODE_64BIT; 561 561 else 562 562 if ( (fpop->optype & DISOPTYPE_DEFAULT_64_OP_SIZE) 563 563 && !(pCpu->fPrefix & DISPREFIX_OPSIZE)) 564 pCpu-> opmode = DISCPUMODE_64BIT;564 pCpu->uOpMode = DISCPUMODE_64BIT; 565 565 } 566 566 … … 601 601 index = pCpu->SIB.Bits.Index; 602 602 603 if (pCpu-> addrmode == DISCPUMODE_32BIT)603 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 604 604 { 605 605 ppszSIBIndexReg = szSIBIndexReg; … … 629 629 { 630 630 // [scaled index] + disp32 631 if (pCpu-> addrmode == DISCPUMODE_32BIT)631 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 632 632 { 633 633 pParam->fUse |= DISUSE_DISPLACEMENT32; … … 738 738 739 739 if ( pCpu->pCurInstr->opcode == OP_MOV_CR 740 && pCpu-> opmode == DISCPUMODE_32BIT740 && pCpu->uOpMode == DISCPUMODE_32BIT 741 741 && (pCpu->fPrefix & DISPREFIX_LOCK)) 742 742 { … … 787 787 /* @todo bound */ 788 788 789 if (pCpu-> addrmode != DISCPUMODE_16BIT)790 { 791 Assert(pCpu-> addrmode == DISCPUMODE_32BIT || pCpu->addrmode == DISCPUMODE_64BIT);789 if (pCpu->uAddrMode != DISCPUMODE_16BIT) 790 { 791 Assert(pCpu->uAddrMode == DISCPUMODE_32BIT || pCpu->uAddrMode == DISCPUMODE_64BIT); 792 792 793 793 /* … … 906 906 *pSibInc = 0; 907 907 908 if (pCpu-> addrmode != DISCPUMODE_16BIT)909 { 910 Assert(pCpu-> addrmode == DISCPUMODE_32BIT || pCpu->addrmode == DISCPUMODE_64BIT);908 if (pCpu->uAddrMode != DISCPUMODE_16BIT) 909 { 910 Assert(pCpu->uAddrMode == DISCPUMODE_32BIT || pCpu->uAddrMode == DISCPUMODE_64BIT); 911 911 912 912 /* … … 989 989 *pSibInc = 0; 990 990 991 if (pCpu-> addrmode != DISCPUMODE_16BIT)992 { 993 Assert(pCpu-> addrmode == DISCPUMODE_32BIT || pCpu->addrmode == DISCPUMODE_64BIT);991 if (pCpu->uAddrMode != DISCPUMODE_16BIT) 992 { 993 Assert(pCpu->uAddrMode == DISCPUMODE_32BIT || pCpu->uAddrMode == DISCPUMODE_64BIT); 994 994 /* 995 995 * Note: displacements in long mode are 8 or 32 bits and sign-extended to 64 bits … … 1181 1181 { 1182 1182 NOREF(pOp); 1183 if (pCpu-> opmode == DISCPUMODE_32BIT)1183 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1184 1184 { 1185 1185 pParam->parval = (uint32_t)(int8_t)disReadByte(pCpu, uCodePtr); … … 1188 1188 } 1189 1189 else 1190 if (pCpu-> opmode == DISCPUMODE_64BIT)1190 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1191 1191 { 1192 1192 pParam->parval = (uint64_t)(int8_t)disReadByte(pCpu, uCodePtr); … … 1265 1265 { 1266 1266 NOREF(pOp); 1267 if (pCpu-> opmode == DISCPUMODE_32BIT)1267 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1268 1268 { 1269 1269 pParam->parval = disReadDWord(pCpu, uCodePtr); … … 1273 1273 } 1274 1274 1275 if (pCpu-> opmode == DISCPUMODE_64BIT)1275 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1276 1276 { 1277 1277 pParam->parval = disReadQWord(pCpu, uCodePtr); … … 1291 1291 { 1292 1292 NOREF(uCodePtr); NOREF(pOp); NOREF(pParam); 1293 if (pCpu-> opmode == DISCPUMODE_32BIT)1293 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1294 1294 return sizeof(uint32_t); 1295 if (pCpu-> opmode == DISCPUMODE_64BIT)1295 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1296 1296 return sizeof(uint64_t); 1297 1297 return sizeof(uint16_t); … … 1303 1303 NOREF(pOp); 1304 1304 /* Word for 16-bit operand-size or doubleword for 32 or 64-bit operand-size. */ 1305 if (pCpu-> opmode == DISCPUMODE_16BIT)1305 if (pCpu->uOpMode == DISCPUMODE_16BIT) 1306 1306 { 1307 1307 pParam->parval = disReadWord(pCpu, uCodePtr); … … 1312 1312 1313 1313 /* 64 bits op mode means *sign* extend to 64 bits. */ 1314 if (pCpu-> opmode == DISCPUMODE_64BIT)1314 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1315 1315 { 1316 1316 pParam->parval = (uint64_t)(int32_t)disReadDWord(pCpu, uCodePtr); … … 1332 1332 NOREF(uCodePtr); NOREF(pOp); NOREF(pParam); 1333 1333 /* Word for 16-bit operand-size or doubleword for 32 or 64-bit operand-size. */ 1334 if (pCpu-> opmode == DISCPUMODE_16BIT)1334 if (pCpu->uOpMode == DISCPUMODE_16BIT) 1335 1335 return sizeof(uint16_t); 1336 1336 return sizeof(uint32_t); … … 1362 1362 { 1363 1363 NOREF(pOp); 1364 if (pCpu-> opmode == DISCPUMODE_32BIT)1364 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1365 1365 { 1366 1366 pParam->parval = disReadDWord(pCpu, uCodePtr); … … 1370 1370 } 1371 1371 1372 if (pCpu-> opmode == DISCPUMODE_64BIT)1372 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1373 1373 { 1374 1374 /* 32 bits relative immediate sign extended to 64 bits. */ … … 1390 1390 { 1391 1391 NOREF(uCodePtr); NOREF(pOp); NOREF(pParam); 1392 if (pCpu-> opmode == DISCPUMODE_16BIT)1392 if (pCpu->uOpMode == DISCPUMODE_16BIT) 1393 1393 return sizeof(int16_t); 1394 1394 /* Both 32 & 64 bits mode use 32 bits relative immediates. */ … … 1399 1399 unsigned ParseImmAddr(RTUINTPTR uCodePtr, PCDISOPCODE pOp, PDISOPPARAM pParam, PDISCPUSTATE pCpu) 1400 1400 { 1401 if (pCpu-> addrmode == DISCPUMODE_32BIT)1401 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 1402 1402 { 1403 1403 if (OP_PARM_VSUBTYPE(pParam->param) == OP_PARM_p) … … 1423 1423 } 1424 1424 1425 if (pCpu-> addrmode == DISCPUMODE_64BIT)1425 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 1426 1426 { 1427 1427 Assert(OP_PARM_VSUBTYPE(pParam->param) != OP_PARM_p); … … 1462 1462 { 1463 1463 NOREF(uCodePtr); NOREF(pOp); 1464 if (pCpu-> addrmode == DISCPUMODE_32BIT)1464 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 1465 1465 { 1466 1466 if (OP_PARM_VSUBTYPE(pParam->param) == OP_PARM_p) … … 1473 1473 } 1474 1474 } 1475 if (pCpu-> addrmode == DISCPUMODE_64BIT)1475 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 1476 1476 { 1477 1477 Assert(OP_PARM_VSUBTYPE(pParam->param) != OP_PARM_p); … … 1495 1495 { 1496 1496 // immediate far pointers - only 16:16 or 16:32; determined by operand, *not* address size! 1497 Assert(pCpu-> opmode == DISCPUMODE_16BIT || pCpu->opmode == DISCPUMODE_32BIT);1497 Assert(pCpu->uOpMode == DISCPUMODE_16BIT || pCpu->uOpMode == DISCPUMODE_32BIT); 1498 1498 Assert(OP_PARM_VSUBTYPE(pParam->param) == OP_PARM_p); 1499 if (pCpu-> opmode == DISCPUMODE_32BIT)1499 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1500 1500 { 1501 1501 // far 16:32 pointer … … 1519 1519 NOREF(uCodePtr); NOREF(pOp); 1520 1520 // immediate far pointers - only 16:16 or 16:32 1521 Assert(pCpu-> opmode == DISCPUMODE_16BIT || pCpu->opmode == DISCPUMODE_32BIT);1521 Assert(pCpu->uOpMode == DISCPUMODE_16BIT || pCpu->uOpMode == DISCPUMODE_32BIT); 1522 1522 Assert(OP_PARM_VSUBTYPE(pParam->param) == OP_PARM_p); 1523 if (pCpu-> opmode == DISCPUMODE_32BIT)1523 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1524 1524 { 1525 1525 // far 16:32 pointer … … 1556 1556 { 1557 1557 /* 32-bit EAX..EDI registers. */ 1558 if (pCpu-> opmode == DISCPUMODE_32BIT)1558 if (pCpu->uOpMode == DISCPUMODE_32BIT) 1559 1559 { 1560 1560 /* Use 32-bit registers. */ … … 1564 1564 } 1565 1565 else 1566 if (pCpu-> opmode == DISCPUMODE_64BIT)1566 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1567 1567 { 1568 1568 /* Use 64-bit registers. */ … … 1610 1610 pParam->cb = 1; 1611 1611 1612 if (pCpu-> opmode == DISCPUMODE_64BIT)1612 if (pCpu->uOpMode == DISCPUMODE_64BIT) 1613 1613 { 1614 1614 if ( (pOp->optype & DISOPTYPE_REXB_EXTENDS_OPREG) … … 1640 1640 1641 1641 pParam->fUse |= DISUSE_POINTER_DS_BASED; 1642 if (pCpu-> addrmode == DISCPUMODE_32BIT)1642 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 1643 1643 { 1644 1644 pParam->base.reg_gen = DISGREG_ESI; … … 1646 1646 } 1647 1647 else 1648 if (pCpu-> addrmode == DISCPUMODE_64BIT)1648 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 1649 1649 { 1650 1650 pParam->base.reg_gen = DISGREG_RSI; … … 1665 1665 1666 1666 pParam->fUse |= DISUSE_POINTER_DS_BASED; 1667 if (pCpu-> addrmode == DISCPUMODE_32BIT)1667 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 1668 1668 { 1669 1669 pParam->base.reg_gen = DISGREG_ESI; … … 1671 1671 } 1672 1672 else 1673 if (pCpu-> addrmode == DISCPUMODE_64BIT)1673 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 1674 1674 { 1675 1675 pParam->base.reg_gen = DISGREG_RSI; … … 1690 1690 1691 1691 pParam->fUse |= DISUSE_POINTER_ES_BASED; 1692 if (pCpu-> addrmode == DISCPUMODE_32BIT)1692 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 1693 1693 { 1694 1694 pParam->base.reg_gen = DISGREG_EDI; … … 1696 1696 } 1697 1697 else 1698 if (pCpu-> addrmode == DISCPUMODE_64BIT)1698 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 1699 1699 { 1700 1700 pParam->base.reg_gen = DISGREG_RDI; … … 1715 1715 1716 1716 pParam->fUse |= DISUSE_POINTER_ES_BASED; 1717 if (pCpu-> addrmode == DISCPUMODE_32BIT)1717 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 1718 1718 { 1719 1719 pParam->base.reg_gen = DISGREG_EDI; … … 1721 1721 } 1722 1722 else 1723 if (pCpu-> addrmode == DISCPUMODE_64BIT)1723 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 1724 1724 { 1725 1725 pParam->base.reg_gen = DISGREG_RDI; … … 1761 1761 /* Cancel prefix changes. */ 1762 1762 pCpu->fPrefix &= ~DISPREFIX_OPSIZE; 1763 pCpu-> opmode = pCpu->mode;1763 pCpu->uOpMode = pCpu->mode; 1764 1764 } 1765 1765 break; … … 1828 1828 /* Cancel prefix changes. */ 1829 1829 pCpu->fPrefix &= ~DISPREFIX_OPSIZE; 1830 pCpu-> opmode = pCpu->mode;1830 pCpu->uOpMode = pCpu->mode; 1831 1831 } 1832 1832 } … … 1879 1879 /* Cancel prefix changes. */ 1880 1880 pCpu->fPrefix &= ~DISPREFIX_OPSIZE; 1881 pCpu-> opmode = pCpu->mode;1881 pCpu->uOpMode = pCpu->mode; 1882 1882 } 1883 1883 } … … 2306 2306 subtype = OP_PARM_VSUBTYPE(pParam->param); 2307 2307 if (fRegAddr) 2308 subtype = (pCpu-> addrmode == DISCPUMODE_64BIT) ? OP_PARM_q : OP_PARM_d;2308 subtype = (pCpu->uAddrMode == DISCPUMODE_64BIT) ? OP_PARM_q : OP_PARM_d; 2309 2309 else 2310 2310 if (subtype == OP_PARM_v || subtype == OP_PARM_NONE) 2311 2311 { 2312 switch (pCpu->opmode)2312 switch (pCpu->uOpMode) 2313 2313 { 2314 2314 case DISCPUMODE_32BIT: -
trunk/src/VBox/Disassembler/DisasmFormatYasm.cpp
r41734 r41735 204 204 static const char *disasmFormatYasmIndexReg(PCDISCPUSTATE pCpu, PCDISOPPARAM pParam, size_t *pcchReg) 205 205 { 206 switch (pCpu-> addrmode)206 switch (pCpu->uAddrMode) 207 207 { 208 208 case DISCPUMODE_16BIT: … … 231 231 232 232 default: 233 AssertMsgFailed(("%#x %#x\n", pParam->fUse, pCpu-> addrmode));233 AssertMsgFailed(("%#x %#x\n", pParam->fUse, pCpu->uAddrMode)); 234 234 *pcchReg = 3; 235 235 return "r??"; … … 417 417 { 418 418 case OP_JECXZ: 419 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "jcxz %Jb" : pCpu->opmode == DISCPUMODE_32BIT ? "jecxz %Jb" : "jrcxz %Jb";419 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "jcxz %Jb" : pCpu->uOpMode == DISCPUMODE_32BIT ? "jecxz %Jb" : "jrcxz %Jb"; 420 420 break; 421 421 case OP_PUSHF: 422 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "pushfw" : pCpu->opmode == DISCPUMODE_32BIT ? "pushfd" : "pushfq";422 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "pushfw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "pushfd" : "pushfq"; 423 423 break; 424 424 case OP_POPF: 425 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "popfw" : pCpu->opmode == DISCPUMODE_32BIT ? "popfd" : "popfq";425 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "popfw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "popfd" : "popfq"; 426 426 break; 427 427 case OP_PUSHA: 428 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "pushaw" : "pushad";428 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "pushaw" : "pushad"; 429 429 break; 430 430 case OP_POPA: 431 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "popaw" : "popad";431 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "popaw" : "popad"; 432 432 break; 433 433 case OP_INSB: … … 435 435 break; 436 436 case OP_INSWD: 437 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "insw" : pCpu->opmode == DISCPUMODE_32BIT ? "insd" : "insq";437 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "insw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "insd" : "insq"; 438 438 break; 439 439 case OP_OUTSB: … … 441 441 break; 442 442 case OP_OUTSWD: 443 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "outsw" : pCpu->opmode == DISCPUMODE_32BIT ? "outsd" : "outsq";443 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "outsw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "outsd" : "outsq"; 444 444 break; 445 445 case OP_MOVSB: … … 447 447 break; 448 448 case OP_MOVSWD: 449 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "movsw" : pCpu->opmode == DISCPUMODE_32BIT ? "movsd" : "movsq";449 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "movsw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "movsd" : "movsq"; 450 450 break; 451 451 case OP_CMPSB: … … 453 453 break; 454 454 case OP_CMPWD: 455 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "cmpsw" : pCpu->opmode == DISCPUMODE_32BIT ? "cmpsd" : "cmpsq";455 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "cmpsw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "cmpsd" : "cmpsq"; 456 456 break; 457 457 case OP_SCASB: … … 459 459 break; 460 460 case OP_SCASWD: 461 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "scasw" : pCpu->opmode == DISCPUMODE_32BIT ? "scasd" : "scasq";461 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "scasw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "scasd" : "scasq"; 462 462 break; 463 463 case OP_LODSB: … … 465 465 break; 466 466 case OP_LODSWD: 467 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "lodsw" : pCpu->opmode == DISCPUMODE_32BIT ? "lodsd" : "lodsq";467 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "lodsw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "lodsd" : "lodsq"; 468 468 break; 469 469 case OP_STOSB: … … 471 471 break; 472 472 case OP_STOSWD: 473 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "stosw" : pCpu->opmode == DISCPUMODE_32BIT ? "stosd" : "stosq";473 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "stosw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "stosd" : "stosq"; 474 474 break; 475 475 case OP_CBW: 476 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "cbw" : pCpu->opmode == DISCPUMODE_32BIT ? "cwde" : "cdqe";476 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "cbw" : pCpu->uOpMode == DISCPUMODE_32BIT ? "cwde" : "cdqe"; 477 477 break; 478 478 case OP_CWD: 479 pszFmt = pCpu-> opmode == DISCPUMODE_16BIT ? "cwd" : pCpu->opmode == DISCPUMODE_32BIT ? "cdq" : "cqo";479 pszFmt = pCpu->uOpMode == DISCPUMODE_16BIT ? "cwd" : pCpu->uOpMode == DISCPUMODE_32BIT ? "cdq" : "cqo"; 480 480 break; 481 481 case OP_SHL: … … 574 574 { \ 575 575 case OP_PARM_v: \ 576 switch (pCpu-> opmode) \576 switch (pCpu->uOpMode) \ 577 577 { \ 578 578 case DISCPUMODE_16BIT: PUT_SZ("word "); break; \ … … 800 800 801 801 case DISUSE_IMMEDIATE16: 802 if ( pCpu->mode != pCpu-> opmode802 if ( pCpu->mode != pCpu->uOpMode 803 803 || ( (fFlags & DIS_FMT_FLAGS_STRICT) 804 804 && ( (int8_t)pParam->parval == (int16_t)pParam->parval … … 823 823 824 824 case DISUSE_IMMEDIATE32: 825 if ( pCpu-> opmode != (pCpu->mode == DISCPUMODE_16BIT ? DISCPUMODE_16BIT : DISCPUMODE_32BIT) /* not perfect */825 if ( pCpu->uOpMode != (pCpu->mode == DISCPUMODE_16BIT ? DISCPUMODE_16BIT : DISCPUMODE_32BIT) /* not perfect */ 826 826 || ( (fFlags & DIS_FMT_FLAGS_STRICT) 827 827 && ( (int8_t)pParam->parval == (int32_t)pParam->parval … … 1213 1213 * Mod rm + SIB: Check for duplicate EBP encodings that yasm won't use for very good reasons. 1214 1214 */ 1215 if ( pCpu-> addrmode != DISCPUMODE_16BIT ///@todo correct?1215 if ( pCpu->uAddrMode != DISCPUMODE_16BIT ///@todo correct? 1216 1216 && pCpu->ModRM.Bits.Rm == 4 1217 1217 && pCpu->ModRM.Bits.Mod != 3) -
trunk/src/VBox/Disassembler/DisasmReg.cpp
r41734 r41735 207 207 if (subtype == OP_PARM_v) 208 208 { 209 switch (pCpu->opmode)209 switch (pCpu->uOpMode) 210 210 { 211 211 case DISCPUMODE_32BIT: … … 240 240 241 241 case OP_PARM_p: /* far pointer */ 242 if (pCpu-> addrmode == DISCPUMODE_32BIT)242 if (pCpu->uAddrMode == DISCPUMODE_32BIT) 243 243 return 6; /* 16:32 */ 244 244 else 245 if (pCpu-> addrmode == DISCPUMODE_64BIT)245 if (pCpu->uAddrMode == DISCPUMODE_64BIT) 246 246 return 12; /* 16:64 */ 247 247 else -
trunk/src/VBox/Disassembler/DisasmTestCore.cpp
r41690 r41735 1 1 /* $Id$ */ 2 2 /** @file 3 * VBox disassembler - Test application for core. 3 * VBox disassembler - Test application for core. 4 4 */ 5 5 … … 39 39 DISCPUSTATE cpu; 40 40 if (DISInstr((void *)(uintptr_t)&DISInstr, DISCPUMODE_32BIT, &cpu, &cb)) 41 printf("ok %d\n", cpu. addrmode);41 printf("ok %d\n", cpu.uAddrMode); 42 42 else 43 43 {
Note:
See TracChangeset
for help on using the changeset viewer.