VirtualBox

Changeset 102685 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Dec 21, 2023 10:32:47 PM (14 months ago)
Author:
vboxsync
Message:

VMM/IEM: ARM64 fixes in BODY_CHECK_PC_AFTER_BRANCH. bugref:10371

File:
1 edited

Legend:

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

    r102683 r102685  
    10431043    }
    10441044# else
    1045 off = iemNativeEmitBrk(pReNative, off, 0x1234);
    10461045
    10471046    /* Assert(pVCpu->cpum.GstCtx.cs.u64Base == 0 || !IEM_F_MODE_X86_IS_FLAT(pReNative->fExec)); */
     
    10511050# ifdef RT_ARCH_ARM64
    10521051        uint32_t * const pu32CodeBuf = iemNativeInstrBufEnsure(pReNative, off, 2);
    1053         pu32CodeBuf[off++] = Armv8A64MkInstrCbzCbnz(false /*fJmpIfNotZero*/, 1, idxRegTmp);
     1052        pu32CodeBuf[off++] = Armv8A64MkInstrCbzCbnz(false /*fJmpIfNotZero*/, 2, idxRegTmp);
    10541053        pu32CodeBuf[off++] = Armv8A64MkInstrBrk(0x2004);
    10551054        IEMNATIVE_ASSERT_INSTR_BUF_ENSURE(pReNative, off);
     
    11081107    off = iemNativeEmitLoadGprFromVCpuU64(pReNative, off, idxRegTmp2, RT_UOFFSETOF(VMCPUCC, iem.s.GCPhysInstrBuf));
    11091108    uint32_t *pu32CodeBuf = iemNativeInstrBufEnsure(pReNative, off, 1);
    1110     pu32CodeBuf[off++] = Armv8A64MkInstrSubReg(idxRegTmp, idxRegTmp, idxRegTmp2);
     1109    pu32CodeBuf[off++] = Armv8A64MkInstrAddReg(idxRegTmp, idxRegTmp, idxRegTmp2);
    11111110    IEMNATIVE_ASSERT_INSTR_BUF_ENSURE(pReNative, off);
    11121111
    11131112# ifdef VBOX_STRICT /* Assert(!(pVCpu->iem.s.GCPhysInstrBuf & X86_PAGE_OFFSET_MASK)); */
    1114     off = iemNativeEmitAndGpr32ByImm(pReNative, off, idxRegTmp, X86_PAGE_OFFSET_MASK, true /*fSetFlags*/);
     1113    off = iemNativeEmitAndGpr32ByImm(pReNative, off, idxRegTmp2, X86_PAGE_OFFSET_MASK, true /*fSetFlags*/);
    11151114    off = iemNativeEmitJzToFixed(pReNative, off, 1);
    11161115    off = iemNativeEmitBrk(pReNative, off, 0x2005);
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