- Timestamp:
- Aug 19, 2008 2:37:44 PM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 34986
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Disassembler/DisasmCore.cpp
r11464 r11489 1388 1388 if (pCpu->opmode == CPUMODE_64BIT) 1389 1389 { 1390 pParam->parval = DISReadQWord(pCpu, lpszCodeBlock); 1390 /* 32 bits relative immediate sign extended to 64 bits. */ 1391 pParam->parval = (uint64_t)(int32_t)DISReadDWord(pCpu, lpszCodeBlock); 1391 1392 pParam->flags |= USE_IMMEDIATE64_REL; 1392 pParam->size = sizeof( int64_t);1393 pParam->size = sizeof(uint64_t); 1393 1394 1394 1395 disasmAddStringF(pParam->szParam, sizeof(pParam->szParam), " (0%VX64h)", pParam->parval); 1395 return sizeof(int 64_t);1396 return sizeof(int32_t); 1396 1397 } 1397 1398 else … … 1410 1411 unsigned ParseImmVRel_SizeOnly(RTUINTPTR lpszCodeBlock, PCOPCODE pOp, POP_PARAMETER pParam, PDISCPUSTATE pCpu) 1411 1412 { 1412 if (pCpu->opmode == CPUMODE_32BIT) 1413 return sizeof(int32_t); 1414 else 1415 if (pCpu->opmode == CPUMODE_64BIT) 1416 return sizeof(int64_t); 1417 return sizeof(uint16_t); 1413 if (pCpu->opmode == CPUMODE_16BIT) 1414 return sizeof(uint16_t); 1415 /* Both 32 & 64 bits mode use 32 bits relative immediates. */ 1416 return sizeof(int32_t); 1418 1417 } 1419 1418 //*****************************************************************************
Note:
See TracChangeset
for help on using the changeset viewer.