Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JitArm64: Move MMIO handler result before popping stack #11227

Merged
merged 2 commits into from Nov 2, 2022

Conversation

JosJuice
Copy link
Member

Otherwise we might throw the result away. Fixes https://bugs.dolphin-emu.org/issues/13083.

Because of the previous commit, `regs_in_use` must not include `dest_reg`
when calling MMIOLoadToReg. There are also some other registers we can
skip including in regs_in_use just for efficiency's sake.

The `addr_reg_set = false` statements that I've added in this commit are
technically redundant – if `mmio_address` is non-zero then `addr_reg_set`
is already false – but it's just a coincidence that that's the case.
@dvessel
Copy link
Contributor

dvessel commented Oct 29, 2022

It stalls in RSII & III with the MMU being enabled. I forced it on for other games and ran into the same problem so it’s what is triggering the bug.

This fixes it.

@degasus degasus merged commit 0210d11 into dolphin-emu:master Nov 2, 2022
11 checks passed
@JosJuice JosJuice deleted the jitarm64-mmio-clobber branch November 2, 2022 17:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants