[dynarmic] fix 64-bit indexing in pagetable being cutoff on ARM64 (#3314)
Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3314 Reviewed-by: DraVee <dravee@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
This commit is contained in:
parent
9aa8e9b0a1
commit
16c7c03b33
|
|
@ -269,7 +269,7 @@ std::pair<oaknut::XReg, oaknut::XReg> InlinePageTableEmitVAddrLookup(oaknut::Cod
|
||||||
}
|
}
|
||||||
|
|
||||||
// index = index << log2
|
// index = index << log2
|
||||||
code.SBFIZ(Xscratch0, Xscratch0, ctx.conf.page_table_log2_stride, 32);
|
code.LSL(Xscratch0, Xscratch0, ctx.conf.page_table_log2_stride);
|
||||||
// load x0 = *<(u8*)pagetable + index>
|
// load x0 = *<(u8*)pagetable + index>
|
||||||
code.LDR(Xscratch0, Xpagetable, Xscratch0);
|
code.LDR(Xscratch0, Xpagetable, Xscratch0);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue