VirtualBox

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


Ignore:
Timestamp:
Oct 16, 2024 8:56:01 PM (7 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
165219
Message:

VMM/IEM: Disable control flow guard for the core IEM jump table call loops. bugref:10720

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

Legend:

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

    r106380 r106401  
    157157 * Used by TB code when encountering a non-zero status or rcPassUp after a call.
    158158 */
    159 template <bool const a_fWithIrqCheck>
     159template<bool const a_fWithIrqCheck>
    160160IEM_DECL_NATIVE_HLP_DEF(uintptr_t, iemNativeHlpReturnBreakViaLookup,(PVMCPUCC pVCpu, uint8_t idxTbLookup,
    161161                                                                     uint32_t fFlags, RTGCPHYS GCPhysPc))
     
    1006710067 * @param   pTb     The threaded translation to recompile to native.
    1006810068 */
    10069 DECLHIDDEN(PIEMTB) iemNativeRecompile(PVMCPUCC pVCpu, PIEMTB pTb) RT_NOEXCEPT
     10069IEM_DECL_MSC_GUARD_IGNORE DECLHIDDEN(PIEMTB) iemNativeRecompile(PVMCPUCC pVCpu, PIEMTB pTb) RT_NOEXCEPT
    1007010070{
    1007110071#if 0 /* For profiling the native recompiler code. */
  • trunk/src/VBox/VMM/VMMAll/IEMAllThrdRecompiler.cpp

    r106329 r106401  
    28532853 *                      IEMTB_F_INHIBIT_NMI, IEMTB_F_CS_LIM_CHECKS.
    28542854 */
    2855 static VBOXSTRICTRC iemThreadedCompile(PVMCC pVM, PVMCPUCC pVCpu, RTGCPHYS GCPhysPc, uint32_t fExtraFlags) IEM_NOEXCEPT_MAY_LONGJMP
     2855static IEM_DECL_MSC_GUARD_IGNORE VBOXSTRICTRC
     2856iemThreadedCompile(PVMCC pVM, PVMCPUCC pVCpu, RTGCPHYS GCPhysPc, uint32_t fExtraFlags) IEM_NOEXCEPT_MAY_LONGJMP
    28562857{
    28572858    IEMTLBTRACE_TB_COMPILE(pVCpu, GCPhysPc);
     
    35733574 * @param   pTb     The translation block to execute.
    35743575 */
    3575 static VBOXSTRICTRC iemTbExec(PVMCPUCC pVCpu, PIEMTB pTb) IEM_NOEXCEPT_MAY_LONGJMP
     3576static IEM_DECL_MSC_GUARD_IGNORE VBOXSTRICTRC iemTbExec(PVMCPUCC pVCpu, PIEMTB pTb) IEM_NOEXCEPT_MAY_LONGJMP
    35763577{
    35773578    Assert(!(pVCpu->iem.s.GCPhysInstrBuf & (RTGCPHYS)GUEST_PAGE_OFFSET_MASK));
  • trunk/src/VBox/VMM/VMMAll/IEMAllThrdTables.h

    r106061 r106401  
    403403    return iemThreadedRecompilerMcDeferToCImpl0(pVCpu, a_fFlags, a_fGstShwFlush, a_pfnCImpl)
    404404
    405 DECLINLINE(VBOXSTRICTRC)
     405IEM_DECL_MSC_GUARD_IGNORE  DECLINLINE(VBOXSTRICTRC)
    406406iemThreadedRecompilerMcDeferToCImpl0(PVMCPUCC pVCpu, uint32_t fFlags, uint64_t fGstShwFlush, PFNIEMCIMPL0 pfnCImpl)
    407407{
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