VirtualBox

Ignore:
Timestamp:
Mar 15, 2023 12:24:47 AM (21 months ago)
Author:
vboxsync
Message:

VMM/IEM: More work on processing MC blocks, mainly related to reworking common functions for binary operations into body macros. bugref:10369

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/include/IEMInternal.h

    r98921 r98969  
    569569    /** @name Decoder state.
    570570     * @{ */
    571 #ifdef IEM_WITH_CODE_TLB
     571#ifndef IEM_WITH_OPAQUE_DECODER_STATE
     572# ifdef IEM_WITH_CODE_TLB
    572573    /** The offset of the next instruction byte. */
    573574    uint32_t                offInstrNextByte;                                                               /* 0x08 */
     
    589590     */
    590591    uint8_t const          *pbInstrBuf;                                                                     /* 0x10 */
    591 # if ARCH_BITS == 32
     592#  if ARCH_BITS == 32
    592593    uint32_t                uInstrBufHigh; /** The high dword of the host context pbInstrBuf member. */
    593 # endif
     594#  endif
    594595    /** The program counter corresponding to pbInstrBuf.
    595596     * This is set to a non-canonical address when we need to invalidate it. */
     
    617618    /** The offset of the ModR/M byte relative to the start of the instruction. */
    618619    uint8_t                 offModRm;                                                                       /* 0x2c */
    619 #else  /* !IEM_WITH_CODE_TLB */
     620# else  /* !IEM_WITH_CODE_TLB */
    620621    /** The size of what has currently been fetched into abOpcode. */
    621622    uint8_t                 cbOpcode;                                                                       /*       0x08 */
     
    638639    uint8_t                 uRexIndex;                                                                      /*       0x12 */
    639640
    640 #endif /* !IEM_WITH_CODE_TLB */
     641# endif /* !IEM_WITH_CODE_TLB */
    641642
    642643    /** The effective operand mode. */
     
    663664    /** The FPU opcode (FOP). */
    664665    uint16_t                uFpuOpcode;                                                                     /* 0x36, 0x1c */
    665 #ifndef IEM_WITH_CODE_TLB
     666# ifndef IEM_WITH_CODE_TLB
    666667    /** Explicit alignment padding. */
    667668    uint8_t                 abAlignment2b[2];                                                               /*       0x1e */
    668 #endif
     669# endif
    669670
    670671    /** The opcode bytes. */
    671672    uint8_t                 abOpcode[15];                                                                   /* 0x48, 0x20 */
    672673    /** Explicit alignment padding. */
    673 #ifdef IEM_WITH_CODE_TLB
     674# ifdef IEM_WITH_CODE_TLB
    674675    uint8_t                 abAlignment2c[0x48 - 0x47];                                                     /* 0x37 */
    675 #else
     676# else
    676677    uint8_t                 abAlignment2c[0x48 - 0x2f];                                                     /*       0x2f */
    677 #endif
     678# endif
     679#else  /* IEM_WITH_OPAQUE_DECODER_STATE */
     680    uint8_t                 abOpaqueDecoder[0x48 - 0x8];
     681#endif /* IEM_WITH_OPAQUE_DECODER_STATE */
    678682    /** @} */
    679683
Note: See TracChangeset for help on using the changeset viewer.

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