- Timestamp:
- Aug 6, 2009 8:39:54 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/HWACCM.cpp
r22002 r22015 1771 1771 * 1772 1772 */ 1773 bool fUsesEax = (pDis->param2.flags == USE_REG_GEN32 && pDis->param2.base.reg_gen == USE_REG_EAX); 1774 1773 1775 aPatch[off++] = 0x51; /* push ecx */ 1774 1776 aPatch[off++] = 0x52; /* push edx */ 1775 aPatch[off++] = 0x50; /* push eax */ 1777 if (!fUsesEax) 1778 aPatch[off++] = 0x50; /* push eax */ 1776 1779 aPatch[off++] = 0x31; /* xor edx, edx */ 1777 1780 aPatch[off++] = 0xD2; 1778 1781 if (pDis->param2.flags == USE_REG_GEN32) 1779 1782 { 1780 if ( pDis->param2.base.reg_gen != USE_REG_EAX)1783 if (!fUsesEax) 1781 1784 { 1782 1785 aPatch[off++] = 0x89; /* mov eax, src_reg */ … … 1797 1800 aPatch[off++] = 0x0F; /* wrmsr */ 1798 1801 aPatch[off++] = 0x30; 1799 aPatch[off++] = 0x58; /* pop eax */ 1802 if (!fUsesEax) 1803 aPatch[off++] = 0x58; /* pop eax */ 1800 1804 aPatch[off++] = 0x5A; /* pop edx */ 1801 1805 aPatch[off++] = 0x59; /* pop ecx */
Note:
See TracChangeset
for help on using the changeset viewer.