VirtualBox

Changeset 66474 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
Apr 7, 2017 1:18:29 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
114463
Message:

IEM: Stubbed the three byte opcode tables.

Location:
trunk/src/VBox/VMM/VMMAll
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstructions.cpp.h

    r66471 r66474  
    734734# include "IEMAllInstructions3DNow.cpp.h"
    735735#endif
     736#ifdef IEM_WITH_THREE_0F_38
     737# include "IEMAllInstructionsThree0f38.cpp.h"
     738#endif
     739#ifdef IEM_WITH_THREE_0F_3A
     740# include "IEMAllInstructionsThree0f3a.cpp.h"
     741#endif
    736742#include "IEMAllInstructionsTwoByte0f.cpp.h"
    737743#ifdef IEM_WITH_VEX
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsPython.py

    r66471 r66474  
    30733073        Raises exception on fatal trouble.
    30743074        """
    3075         self.debug('Parsing %s' % (self.sSrcFile,));
     3075        #self.debug('Parsing %s' % (self.sSrcFile,));
    30763076
    30773077        while self.iLine < len(self.asLines):
     
    31303130
    31313131        self.doneInstructions();
    3132         self.debug('%s instructions in %s' % (self.cTotalInstr, self.sSrcFile,));
    3133         self.debug('%s instruction stubs' % (self.cTotalStubs,));
     3132        self.debug('%3s stubs out of %3s instructions in %s' % (self.cTotalStubs, self.cTotalInstr, os.path.basename(self.sSrcFile),));
    31343133        return self.printErrors();
    31353134
     
    32173216    cErrors = 0;
    32183217    for sDefaultMap, sName in [
    3219         ( 'one',     'IEMAllInstructionsOneByte.cpp.h'),
    3220         ( 'two0f',   'IEMAllInstructionsTwoByte0f.cpp.h'),
    3221         ( 'vexmap1', 'IEMAllInstructionsVexMap1.cpp.h'),
    3222         ( '3dnow',   'IEMAllInstructions3DNow.cpp.h'),
     3218        ( 'one',        'IEMAllInstructionsOneByte.cpp.h'),
     3219        ( 'two0f',      'IEMAllInstructionsTwoByte0f.cpp.h'),
     3220        ( 'three0f38',  'IEMAllInstructionsThree0f38.cpp.h'),
     3221        ( 'three0f3a',  'IEMAllInstructionsThree0f3a.cpp.h'),
     3222        ( 'vexmap1',    'IEMAllInstructionsVexMap1.cpp.h'),
     3223        ( '3dnow',      'IEMAllInstructions3DNow.cpp.h'),
    32233224    ]:
    32243225        cErrors += __parseFileByName(os.path.join(sSrcDir, sName), sDefaultMap);
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstructionsTwoByte0f.cpp.h

    r66473 r66474  
    20382038/** Opcode 0x0f 0x37. */
    20392039FNIEMOP_STUB(iemOp_getsec);
     2040
     2041
    20402042/** Opcode 0x0f 0x38. */
    2041 FNIEMOP_STUB(iemOp_3byte_Esc_0f_38);
     2043FNIEMOP_DEF(iemOp_3byte_Esc_0f_38)
     2044{
     2045#ifdef IEM_WITH_THREE_0F_38
     2046    uint8_t b; IEM_OPCODE_GET_NEXT_U8(&b);
     2047    return FNIEMOP_CALL(g_apfnThreeByte0f38[(uintptr_t)b * 4 + pVCpu->iem.s.idxPrefix]);
     2048#else
     2049    IEMOP_BITCH_ABOUT_STUB();
     2050    return VERR_IEM_INSTR_NOT_IMPLEMENTED;
     2051#endif
     2052}
     2053
     2054
    20422055/** Opcode 0x0f 0x3a. */
    2043 FNIEMOP_STUB(iemOp_3byte_Esc_0f_3a);
     2056FNIEMOP_DEF(iemOp_3byte_Esc_0f_3a)
     2057{
     2058#ifdef IEM_WITH_THREE_0F_3A
     2059    uint8_t b; IEM_OPCODE_GET_NEXT_U8(&b);
     2060    return FNIEMOP_CALL(g_apfnThreeByte0f3a[(uintptr_t)b * 4 + pVCpu->iem.s.idxPrefix]);
     2061#else
     2062    IEMOP_BITCH_ABOUT_STUB();
     2063    return VERR_IEM_INSTR_NOT_IMPLEMENTED;
     2064#endif
     2065}
    20442066
    20452067
     
    84668488AssertCompile(RT_ELEMENTS(g_apfnTwoByteMap) == 1024);
    84678489
     8490/** @} */
     8491
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette