Changeset 102803 in vbox
- Timestamp:
- Jan 10, 2024 12:39:02 AM (16 months ago)
- svn:sync-xref-src-repo-rev:
- 160991
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/include/IEMN8veRecompilerEmit.h
r102800 r102803 924 924 pCodeBuf[off++] = Armv8A64MkInstrStLdRUOff(kArmv8A64InstrLdStType_Ld_Dword, idxTmp1, 925 925 IEMNATIVE_REG_FIXED_PVMCPU, offVCpu / cbData); 926 pCodeBuf[off++] = Armv8A64MkInstrAddUImm12(idxTmp1, 1);926 pCodeBuf[off++] = Armv8A64MkInstrAddUImm12(idxTmp1, idxTmp1, 1); 927 927 pCodeBuf[off++] = Armv8A64MkInstrStLdRUOff(kArmv8A64InstrLdStType_St_Dword, idxTmp1, 928 928 IEMNATIVE_REG_FIXED_PVMCPU, offVCpu / cbData); … … 932 932 pCodeBuf[off++] = Armv8A64MkInstrStLdRUOff(kArmv8A64InstrLdStType_Ld_Dword, idxTmp1, IEMNATIVE_REG_FIXED_PCPUMCTX, 933 933 (offVCpu - RT_UOFFSETOF(VMCPU, cpum.GstCtx)) / cbData); 934 pCodeBuf[off++] = Armv8A64MkInstrAddUImm12(idxTmp1, 1);934 pCodeBuf[off++] = Armv8A64MkInstrAddUImm12(idxTmp1, idxTmp1, 1); 935 935 pCodeBuf[off++] = Armv8A64MkInstrStLdRUOff(kArmv8A64InstrLdStType_St_Dword, idxTmp1, IEMNATIVE_REG_FIXED_PCPUMCTX, 936 936 (offVCpu - RT_UOFFSETOF(VMCPU, cpum.GstCtx)) / cbData); … … 940 940 /* The offset is too large, so we must load it into a register and use 941 941 ldr Wt, [<Xn|SP>, (<Wm>|<Xm>)]. */ 942 off = iemNativeEmitLoadGprImmEx(p ReNative, off, idxTmp2, offVCpu);942 off = iemNativeEmitLoadGprImmEx(pCodeBuf, off, idxTmp2, offVCpu); 943 943 pCodeBuf[off++] = Armv8A64MkInstrStLdRegIdx(kArmv8A64InstrLdStType_Ld_Dword, idxTmp1, IEMNATIVE_REG_FIXED_PVMCPU, idxTmp2); 944 pCodeBuf[off++] = Armv8A64MkInstrAddUImm12(idxTmp1, 1);944 pCodeBuf[off++] = Armv8A64MkInstrAddUImm12(idxTmp1, idxTmp1, 1); 945 945 pCodeBuf[off++] = Armv8A64MkInstrStLdRegIdx(kArmv8A64InstrLdStType_St_Dword, idxTmp1, IEMNATIVE_REG_FIXED_PVMCPU, idxTmp2); 946 946 }
Note:
See TracChangeset
for help on using the changeset viewer.