Changeset 35626 in vbox for trunk/src/VBox/Debugger
- Timestamp:
- Jan 19, 2011 12:29:20 PM (14 years ago)
- svn:sync-xref-src-repo-rev:
- 69528
- Location:
- trunk/src/VBox/Debugger
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Debugger/DBGCCmdHlp.cpp
r35625 r35626 129 129 case DBGCVAR_TYPE_HC_FLAT: 130 130 return RTStrFormat(pfnOutput, pvArgOutput, NULL, 0, "%%#%RHv", (uintptr_t)pVar->u.pvHCFlat); 131 case DBGCVAR_TYPE_HC_FAR:132 return RTStrFormat(pfnOutput, pvArgOutput, NULL, 0, "#%04x:%08x", pVar->u.HCFar.sel, pVar->u.HCFar.off);133 131 case DBGCVAR_TYPE_HC_PHYS: 134 132 return RTStrFormat(pfnOutput, pvArgOutput, NULL, 0, "#%%%%%RHp", pVar->u.HCPhys); … … 177 175 case DBGCVAR_TYPE_HC_FLAT: 178 176 return RTStrFormat(pfnOutput, pvArgOutput, NULL, 0, "%%#%RHv%s", (uintptr_t)pVar->u.pvHCFlat, szRange); 179 case DBGCVAR_TYPE_HC_FAR:180 return RTStrFormat(pfnOutput, pvArgOutput, NULL, 0, "#%04x:%08x%s", pVar->u.HCFar.sel, pVar->u.HCFar.off, szRange);181 177 case DBGCVAR_TYPE_HC_PHYS: 182 178 return RTStrFormat(pfnOutput, pvArgOutput, NULL, 0, "#%%%%%RHp%s", pVar->u.HCPhys, szRange); … … 386 382 break; 387 383 388 case DBGCVAR_TYPE_HC_FAR: /* not supported yet! */389 384 default: 390 385 return VERR_NOT_IMPLEMENTED; … … 431 426 case DBGCVAR_TYPE_HC_PHYS: 432 427 case DBGCVAR_TYPE_HC_FLAT: 433 case DBGCVAR_TYPE_HC_FAR:434 428 { 435 429 DBGCVAR Var2; … … 582 576 case DBGCVAR_TYPE_HC_FLAT: 583 577 case DBGCVAR_TYPE_HC_PHYS: 584 case DBGCVAR_TYPE_HC_FAR:585 578 { 586 579 /* … … 759 752 u64Number = (uintptr_t)pVar->u.u64Number; 760 753 return VINF_SUCCESS; 761 case DBGCVAR_TYPE_HC_FAR:762 u64Number = (uintptr_t)pVar->u.HCFar.off;763 break;764 754 case DBGCVAR_TYPE_GC_FAR: 765 755 u64Number = (uintptr_t)pVar->u.GCFar.off; … … 830 820 return VINF_SUCCESS; 831 821 832 case DBGCVAR_TYPE_HC_FAR:833 822 case DBGCVAR_TYPE_GC_FAR: 834 823 case DBGCVAR_TYPE_SYMBOL: … … 907 896 return VINF_SUCCESS; 908 897 return VERR_PARSE_CONVERSION_FAILED; 909 910 case DBGCVAR_TYPE_HC_FAR:911 return VERR_INVALID_PARAMETER;912 898 913 899 case DBGCVAR_TYPE_HC_PHYS: … … 974 960 return VERR_PARSE_CONVERSION_FAILED; 975 961 976 case DBGCVAR_TYPE_HC_FAR:977 return VERR_PARSE_INCORRECT_ARG_TYPE;978 979 962 case DBGCVAR_TYPE_HC_PHYS: 980 963 rc = DBGFR3AddrFromSelOff(pDbgc->pVM, pDbgc->idCpu, &Address, pArg->u.GCFar.sel, pArg->u.GCFar.off); … … 1026 1009 return VERR_PARSE_CONVERSION_FAILED; 1027 1010 1028 case DBGCVAR_TYPE_HC_FAR:1029 return VERR_PARSE_INCORRECT_ARG_TYPE;1030 1031 1011 case DBGCVAR_TYPE_HC_PHYS: 1032 1012 pResult->enmType = DBGCVAR_TYPE_HC_PHYS; … … 1073 1053 return VINF_SUCCESS; 1074 1054 1075 case DBGCVAR_TYPE_HC_FAR:1076 return VERR_PARSE_INCORRECT_ARG_TYPE;1077 1078 1055 case DBGCVAR_TYPE_HC_PHYS: 1079 1056 pResult->enmType = DBGCVAR_TYPE_HC_PHYS; … … 1099 1076 break; 1100 1077 1101 case DBGCVAR_TYPE_HC_FAR:1102 switch (enmToType)1103 {1104 case DBGCVAR_TYPE_GC_FLAT:1105 return VERR_PARSE_INCORRECT_ARG_TYPE;1106 1107 case DBGCVAR_TYPE_GC_FAR:1108 return VERR_PARSE_INCORRECT_ARG_TYPE;1109 1110 case DBGCVAR_TYPE_GC_PHYS:1111 return VERR_PARSE_INCORRECT_ARG_TYPE;1112 1113 case DBGCVAR_TYPE_HC_FLAT:1114 return VERR_PARSE_INCORRECT_ARG_TYPE;1115 1116 case DBGCVAR_TYPE_HC_FAR:1117 return VINF_SUCCESS;1118 1119 case DBGCVAR_TYPE_HC_PHYS:1120 return VERR_PARSE_INCORRECT_ARG_TYPE;1121 1122 case DBGCVAR_TYPE_NUMBER:1123 pResult->enmType = enmToType;1124 pResult->u.u64Number = (uintptr_t)InVar.u.HCFar.off;1125 return VINF_SUCCESS;1126 1127 case DBGCVAR_TYPE_STRING:1128 case DBGCVAR_TYPE_SYMBOL:1129 return VERR_PARSE_INCORRECT_ARG_TYPE;1130 1131 case DBGCVAR_TYPE_UNKNOWN:1132 case DBGCVAR_TYPE_ANY:1133 break;1134 }1135 break;1136 1137 1078 case DBGCVAR_TYPE_HC_PHYS: 1138 1079 switch (enmToType) … … 1154 1095 return VERR_PARSE_INCORRECT_ARG_TYPE; 1155 1096 1156 case DBGCVAR_TYPE_HC_FAR:1157 return VERR_PARSE_INCORRECT_ARG_TYPE;1158 1159 1097 case DBGCVAR_TYPE_HC_PHYS: 1160 1098 return VINF_SUCCESS; … … 1196 1134 return VERR_PARSE_INCORRECT_ARG_TYPE; 1197 1135 1198 case DBGCVAR_TYPE_HC_FAR:1199 return VERR_PARSE_INCORRECT_ARG_TYPE;1200 1201 1136 case DBGCVAR_TYPE_HC_PHYS: 1202 1137 pResult->enmType = DBGCVAR_TYPE_HC_PHYS; … … 1225 1160 case DBGCVAR_TYPE_GC_PHYS: 1226 1161 case DBGCVAR_TYPE_HC_FLAT: 1227 case DBGCVAR_TYPE_HC_FAR:1228 1162 case DBGCVAR_TYPE_HC_PHYS: 1229 1163 case DBGCVAR_TYPE_NUMBER: -
trunk/src/VBox/Debugger/DBGCCmdWorkers.cpp
r35346 r35626 228 228 229 229 case DBGCVAR_TYPE_HC_FLAT: 230 case DBGCVAR_TYPE_HC_FAR:231 230 case DBGCVAR_TYPE_HC_PHYS: 232 231 default: -
trunk/src/VBox/Debugger/DBGCCommands.cpp
r35346 r35626 1057 1057 paArgs[iArg].u.pvHCFlat); 1058 1058 break; 1059 case DBGCVAR_TYPE_HC_FAR:1060 if (paArgs[iArg].enmRangeType != DBGCVAR_RANGE_NONE)1061 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL,1062 "Host far address: %04x:%08x range %lld %s\n",1063 paArgs[iArg].u.HCFar.sel,1064 paArgs[iArg].u.HCFar.off,1065 paArgs[iArg].u64Range,1066 apszRangeDesc[paArgs[iArg].enmRangeType]);1067 else1068 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL,1069 "Host far address: %04x:%08x\n",1070 paArgs[iArg].u.HCFar.sel,1071 paArgs[iArg].u.HCFar.off);1072 break;1073 1059 case DBGCVAR_TYPE_HC_PHYS: 1074 1060 if (paArgs[iArg].enmRangeType != DBGCVAR_RANGE_NONE) -
trunk/src/VBox/Debugger/DBGCEmulateCodeView.cpp
r35625 r35626 1033 1033 case DBGCVAR_TYPE_HC_FLAT: 1034 1034 case DBGCVAR_TYPE_HC_PHYS: 1035 case DBGCVAR_TYPE_HC_FAR:1036 1035 { 1037 1036 DBGCVAR VarTmp; … … 1167 1166 case DBGCVAR_TYPE_HC_FLAT: 1168 1167 case DBGCVAR_TYPE_HC_PHYS: 1169 case DBGCVAR_TYPE_HC_FAR:1170 1168 { 1171 1169 int rc = DBGCCmdHlpEval(pCmdHlp, &pDbgc->SourcePos, "%%(%Dv)", &pDbgc->SourcePos); … … 2103 2101 case DBGCVAR_TYPE_GC_FLAT: u64 = paArgs[i].u.GCFlat; break; 2104 2102 case DBGCVAR_TYPE_GC_PHYS: u64 = paArgs[i].u.GCPhys; break; 2105 case DBGCVAR_TYPE_HC_FAR: u64 = paArgs[i].u.HCFar.sel; break;2106 2103 case DBGCVAR_TYPE_HC_FLAT: u64 = (uintptr_t)paArgs[i].u.pvHCFlat; break; 2107 2104 case DBGCVAR_TYPE_HC_PHYS: u64 = paArgs[i].u.HCPhys; break; … … 3606 3603 { 3607 3604 case DBGCVAR_TYPE_GC_FAR: 3608 case DBGCVAR_TYPE_HC_FAR:3609 3605 case DBGCVAR_TYPE_GC_FLAT: 3610 3606 case DBGCVAR_TYPE_GC_PHYS: -
trunk/src/VBox/Debugger/DBGCOps.cpp
r35625 r35626 123 123 (pResult)->u.pvHCFlat = (void *)((uintptr_t)(pResult)->u.pvHCFlat Operator u64Right); \ 124 124 break; \ 125 case DBGCVAR_TYPE_HC_FAR: \126 (pResult)->u.HCFar.off = (pResult)->u.HCFar.off Operator u64Right; \127 break; \128 125 case DBGCVAR_TYPE_HC_PHYS: \ 129 126 (pResult)->u.HCPhys = (pResult)->u.HCPhys Operator u64Right; \ … … 227 224 *pu64Ret = (uintptr_t)Var.u.pvHCFlat; 228 225 break; 229 case DBGCVAR_TYPE_HC_FAR:230 *pu64Ret = Var.u.HCFar.off;231 break;232 226 case DBGCVAR_TYPE_HC_PHYS: 233 227 *pu64Ret = Var.u.HCPhys; … … 279 273 pResult->u.pvHCFlat = (void *) -(intptr_t)pResult->u.pvHCFlat; 280 274 break; 281 case DBGCVAR_TYPE_HC_FAR:282 pResult->u.HCFar.off = -(int32_t)pResult->u.HCFar.off;283 break;284 275 case DBGCVAR_TYPE_HC_PHYS: 285 276 pResult->u.HCPhys = (RTHCPHYS) -(int64_t)pResult->u.HCPhys; … … 319 310 case DBGCVAR_TYPE_GC_PHYS: 320 311 case DBGCVAR_TYPE_HC_FLAT: 321 case DBGCVAR_TYPE_HC_FAR:322 312 case DBGCVAR_TYPE_HC_PHYS: 323 313 case DBGCVAR_TYPE_NUMBER: … … 362 352 pResult->u.u64Number = !pResult->u.pvHCFlat; 363 353 break; 364 case DBGCVAR_TYPE_HC_FAR:365 pResult->u.u64Number = !pResult->u.HCFar.off && pResult->u.HCFar.sel <= 3;366 break;367 354 case DBGCVAR_TYPE_HC_PHYS: 368 355 pResult->u.u64Number = !pResult->u.HCPhys; … … 412 399 case DBGCVAR_TYPE_HC_FLAT: 413 400 pResult->u.pvHCFlat = (void *)~(uintptr_t)pResult->u.pvHCFlat; 414 break;415 case DBGCVAR_TYPE_HC_FAR:416 pResult->u.HCFar.off= ~pResult->u.HCFar.off;417 401 break; 418 402 case DBGCVAR_TYPE_HC_PHYS: … … 585 569 return VINF_SUCCESS; 586 570 587 case DBGCVAR_TYPE_HC_FAR:588 return VERR_PARSE_INCORRECT_ARG_TYPE;589 590 571 case DBGCVAR_TYPE_HC_PHYS: 591 572 Assert(pDbgc->pVM); … … 663 644 /** @todo more memory types! */ 664 645 return VERR_PARSE_CONVERSION_FAILED; 665 666 case DBGCVAR_TYPE_HC_FAR:667 return VERR_PARSE_INCORRECT_ARG_TYPE;668 646 669 647 case DBGCVAR_TYPE_HC_PHYS: … … 748 726 return VERR_PARSE_CONVERSION_FAILED; 749 727 750 case DBGCVAR_TYPE_HC_FAR:751 return VERR_PARSE_INCORRECT_ARG_TYPE;752 753 728 case DBGCVAR_TYPE_HC_PHYS: 754 729 return VINF_SUCCESS; … … 827 802 return VINF_SUCCESS; 828 803 829 case DBGCVAR_TYPE_HC_FAR:830 804 case DBGCVAR_TYPE_HC_PHYS: 831 805 /** @todo !*/ … … 877 851 case DBGCVAR_TYPE_GC_PHYS: 878 852 case DBGCVAR_TYPE_HC_FLAT: 879 case DBGCVAR_TYPE_HC_FAR:880 853 case DBGCVAR_TYPE_HC_PHYS: 881 854 case DBGCVAR_TYPE_UNKNOWN: … … 894 867 895 868 case DBGCVAR_TYPE_HC_FLAT: 896 pResult->u. HCFar.off =pArg2->u.GCFlat;869 pResult->u.pvHCFlat = (void *)(uintptr_t)pArg2->u.GCFlat; 897 870 pResult->enmType = DBGCVAR_TYPE_GC_FAR; 898 871 break; … … 916 889 case DBGCVAR_TYPE_GC_FAR: 917 890 case DBGCVAR_TYPE_GC_PHYS: 918 case DBGCVAR_TYPE_HC_FAR:919 891 case DBGCVAR_TYPE_HC_PHYS: 920 892 case DBGCVAR_TYPE_UNKNOWN: … … 1036 1008 { 1037 1009 case DBGCVAR_TYPE_HC_FLAT: 1038 case DBGCVAR_TYPE_HC_FAR:1039 1010 case DBGCVAR_TYPE_HC_PHYS: 1040 1011 return VERR_PARSE_INVALID_OPERATION; … … 1056 1027 { 1057 1028 case DBGCVAR_TYPE_HC_FLAT: 1058 case DBGCVAR_TYPE_HC_FAR:1059 1029 case DBGCVAR_TYPE_HC_PHYS: 1060 1030 return VERR_PARSE_INVALID_OPERATION; … … 1082 1052 { 1083 1053 case DBGCVAR_TYPE_HC_FLAT: 1084 case DBGCVAR_TYPE_HC_FAR:1085 1054 case DBGCVAR_TYPE_HC_PHYS: 1086 1055 return VERR_PARSE_INVALID_OPERATION; … … 1109 1078 return rc; 1110 1079 pResult->u.pvHCFlat = (char *)pResult->u.pvHCFlat + (uintptr_t)Var.u.pvHCFlat; 1111 break;1112 1113 /*1114 * HC Far1115 */1116 case DBGCVAR_TYPE_HC_FAR:1117 switch (pArg2->enmType)1118 {1119 case DBGCVAR_TYPE_NUMBER:1120 *pResult = *pArg1;1121 pResult->u.HCFar.off += (uintptr_t)pArg2->u.u64Number;1122 break;1123 1124 default:1125 rc = dbgcOpAddrFlat(pDbgc, pArg1, pResult);1126 if (RT_FAILURE(rc))1127 return rc;1128 rc = dbgcOpAddrHost(pDbgc, pArg2, &Var2);1129 if (RT_FAILURE(rc))1130 return rc;1131 rc = dbgcOpAddrFlat(pDbgc, &Var2, &Var);1132 if (RT_FAILURE(rc))1133 return rc;1134 pResult->u.pvHCFlat = (char *)pResult->u.pvHCFlat + (uintptr_t)Var.u.pvHCFlat;1135 break;1136 }1137 1080 break; 1138 1081 … … 1225 1168 enmType = DBGCVAR_TYPE_GC_FLAT; 1226 1169 break; 1227 case DBGCVAR_TYPE_HC_FAR:1228 enmType = DBGCVAR_TYPE_HC_FLAT;1229 break;1230 1170 1231 1171 default: … … 1255 1195 pOp = dbgcOpAddrPhys; 1256 1196 break; 1257 case DBGCVAR_TYPE_HC_FAR:1258 1197 case DBGCVAR_TYPE_HC_FLAT: 1259 1198 pOp = dbgcOpAddrHost; … … 1294 1233 { 1295 1234 case DBGCVAR_TYPE_HC_FLAT: 1296 case DBGCVAR_TYPE_HC_FAR:1297 1235 case DBGCVAR_TYPE_HC_PHYS: 1298 1236 return VERR_PARSE_INVALID_OPERATION; … … 1314 1252 { 1315 1253 case DBGCVAR_TYPE_HC_FLAT: 1316 case DBGCVAR_TYPE_HC_FAR:1317 1254 case DBGCVAR_TYPE_HC_PHYS: 1318 1255 return VERR_PARSE_INVALID_OPERATION; … … 1340 1277 { 1341 1278 case DBGCVAR_TYPE_HC_FLAT: 1342 case DBGCVAR_TYPE_HC_FAR:1343 1279 case DBGCVAR_TYPE_HC_PHYS: 1344 1280 return VERR_PARSE_INVALID_OPERATION; … … 1367 1303 return rc; 1368 1304 pResult->u.pvHCFlat = (char *)pResult->u.pvHCFlat - (uintptr_t)Var.u.pvHCFlat; 1369 break;1370 1371 /*1372 * HC Far1373 */1374 case DBGCVAR_TYPE_HC_FAR:1375 switch (pArg2->enmType)1376 {1377 case DBGCVAR_TYPE_NUMBER:1378 *pResult = *pArg1;1379 pResult->u.HCFar.off -= (uintptr_t)pArg2->u.u64Number;1380 break;1381 1382 default:1383 rc = dbgcOpAddrFlat(pDbgc, pArg1, pResult);1384 if (RT_FAILURE(rc))1385 return rc;1386 rc = dbgcOpAddrHost(pDbgc, pArg2, &Var2);1387 if (RT_FAILURE(rc))1388 return rc;1389 rc = dbgcOpAddrFlat(pDbgc, &Var2, &Var);1390 if (RT_FAILURE(rc))1391 return rc;1392 pResult->u.pvHCFlat = (char *)pResult->u.pvHCFlat - (uintptr_t)Var.u.pvHCFlat;1393 break;1394 }1395 1305 break; 1396 1306 … … 1688 1598 case DBGCVAR_TYPE_GC_FAR: 1689 1599 case DBGCVAR_TYPE_STRING: 1690 case DBGCVAR_TYPE_HC_FAR:1691 1600 default: 1692 1601 AssertMsgFailed(("Impossible!\n")); -
trunk/src/VBox/Debugger/DBGConsole.cpp
r35625 r35626 305 305 return dbgcOpAddrPhys(pDbgc, &VarTmp, pResult); 306 306 307 case DBGCVAR_TYPE_HC_FAR:308 307 case DBGCVAR_TYPE_HC_FLAT: 309 308 VarTmp = *pResult; … … 438 437 case DBGCVAR_TYPE_GC_PHYS: 439 438 case DBGCVAR_TYPE_HC_FLAT: 440 case DBGCVAR_TYPE_HC_FAR:441 439 case DBGCVAR_TYPE_HC_PHYS: 442 440 return VINF_SUCCESS; … … 494 492 495 493 case DBGCVAR_TYPE_HC_FLAT: 496 case DBGCVAR_TYPE_HC_FAR:497 494 case DBGCVAR_TYPE_HC_PHYS: 498 495 return VERR_PARSE_CONVERSION_FAILED;
Note:
See TracChangeset
for help on using the changeset viewer.