Changeset 15181 in vbox
- Timestamp:
- Dec 9, 2008 2:52:36 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/EMAll.cpp
r15161 r15181 707 707 { 708 708 OP_PARAMVAL param1, param2; 709 709 710 int rc = DISQueryParamVal(pRegFrame, pCpu, &pCpu->param1, ¶m1, PARAM_DEST); 710 711 if(RT_FAILURE(rc)) … … 801 802 { 802 803 void *pvParam1; 803 804 804 OP_PARAMVAL param1, param2; 805 806 #ifdef HC_ARCH_BITS == 32 807 Assert(pCpu->param1.size <= 4); 808 #endif 809 805 810 int rc = DISQueryParamVal(pRegFrame, pCpu, &pCpu->param1, ¶m1, PARAM_DEST); 806 811 if(RT_FAILURE(rc)) … … 1410 1415 { 1411 1416 OP_PARAMVAL param1, param2; 1417 1418 #ifdef HC_ARCH_BITS == 32 1419 Assert(pCpu->param1.size <= 4); 1420 #endif 1412 1421 1413 1422 /* Source to make DISQueryParamVal read the register value - ugly hack */ … … 2920 2929 } 2921 2930 2931 #ifdef HC_ARCH_BITS == 32 2932 if (CPUMIsGuestIn64BitCode(pVM, pRegFrame)) 2933 { 2934 /* Unable to emulate in 32 bits mode. 2935 * Whitelisted instructions are safe. 2936 */ 2937 if ( pCpu->param1.size > 4 2938 && pCpu->pCurInstr->opcode != OP_STOSWD 2939 && pCpu->pCurInstr->opcode != OP_MOV 2940 && pCpu->pCurInstr->opcode != OP_CMPXCHG8B) 2941 return VERR_EM_INTERPRETER; 2942 } 2943 #endif 2944 2922 2945 int rc; 2923 2946 #if (defined(VBOX_STRICT) || defined(LOG_ENABLED))
Note:
See TracChangeset
for help on using the changeset viewer.