VirtualBox

Changeset 103900 in vbox


Ignore:
Timestamp:
Mar 18, 2024 4:08:54 PM (13 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
162272
Message:

VMM/IEM: More mnemonic @todos. bugref:9898

Location:
trunk/src/VBox/VMM
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstPython.py

    r103899 r103900  
    328328    # VEX.vvvv
    329329    'By':           ( 'IDX_UseModRM',       'vvvv',   '%By',  'By',      'V',     ),
     330    'Hdq':          ( 'IDX_UseModRM',       'vvvv',   '%Hdq', 'Hdq',     'V',     ),
    330331    'Hps':          ( 'IDX_UseModRM',       'vvvv',   '%Hps', 'Hps',     'V',     ),
    331332    'Hpd':          ( 'IDX_UseModRM',       'vvvv',   '%Hpd', 'Hpd',     'V',     ),
     
    597598    'ignores_op_sizes':      '',                                        ##< Shorthand for "ignores_oz_pfx | ignores_op_sizes".
    598599    'vex_l_zero':            '',                                        ##< VEX.L must be 0.
     600    'vex_l_one':             '',                                        ##< VEX.L must be 1.
    599601    'vex_l_ignored':         '',                                        ##< VEX.L is ignored.
    600602    'vex_v_zero':            '',                                        ##< VEX.V must be 0. (generate sub-table?)
  • trunk/src/VBox/VMM/VMMAll/IEMAllInstVexMap3.cpp.h

    r103899 r103900  
    774774FNIEMOP_DEF(iemOp_vpclmulqdq_Vdq_Hdq_Wdq_Ib)
    775775{
    776     //IEMOP_MNEMONIC3(VEX_RVM, VPCLMULQDQ, vpclmulqdq, Vdq, Hdq, Wdq, DISOPTYPE_HARMLESS, 0); /* @todo */
    777 
     776    IEMOP_MNEMONIC4(VEX_RVMI, VPCLMULQDQ, vpclmulqdq, Vdq_WO, Hdq, Wdq, Id, DISOPTYPE_HARMLESS, IEMOPHINT_VEX_L_ZERO);
    778777    uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm);
    779778    if (IEM_IS_MODRM_REG_MODE(bRm))
     
    838837FNIEMOP_DEF(iemOp_vperm2i128_Vqq_Hqq_Wqq_Ib)
    839838{
    840     //IEMOP_MNEMONIC4(VEX_RVM, VPERM2I128, vperm2i128, Vqq, Hqq, Wqq, Ib, DISOPTYPE_HARMLESS, 0); /** @todo */
    841 
     839    IEMOP_MNEMONIC4(VEX_RVMI, VPERM2I128, vperm2i128, Vqq_WO, Hqq, Wqq, Ib, DISOPTYPE_HARMLESS, IEMOPHINT_VEX_L_ONE);
    842840    uint8_t bRm; IEM_OPCODE_GET_NEXT_U8(&bRm);
    843841    if (IEM_IS_MODRM_REG_MODE(bRm))
  • trunk/src/VBox/VMM/include/IEMInternal.h

    r103899 r103900  
    23732373/** The VEX.L value must be zero (i.e. 128-bit width only). */
    23742374#define IEMOPHINT_VEX_L_ZERO        RT_BIT_32(13)
     2375/** The VEX.L value must be one (i.e. 256-bit width only). */
     2376#define IEMOPHINT_VEX_L_ONE         RT_BIT_32(14)
    23752377/** The VEX.V value must be zero. */
    2376 #define IEMOPHINT_VEX_V_ZERO        RT_BIT_32(14)
     2378#define IEMOPHINT_VEX_V_ZERO        RT_BIT_32(15)
    23772379
    23782380/** Hint to IEMAllInstructionPython.py that this macro should be skipped.  */
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