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: dcbx loop detection for improved performance when invalidating large memory regions #10035

Merged
merged 3 commits into from Aug 30, 2021

Conversation

JosJuice
Copy link
Member

Follow-up to PR #10007.

If W30 is in use and we don't lock it, it will be pushed to the
stack before the BLR, so there isn't really any reason to lock W30.
@AdmiralCurtiss
Copy link
Contributor

In the commit message of the last commit you say bits 5-10, but I think it's only bits 5-9 that are actually relevant here.

x64 changes look reasonable to me, can't say much about the ARM code...

@JosJuice
Copy link
Member Author

I meant 5 inclusive, 10 exclusive. I'm not sure if that's really clear from how I wrote it, though.

@AdmiralCurtiss
Copy link
Contributor

Yeah that's not clear, maybe write [5-10[ or [5-10) then.

We were using a "value" register to avoid clobbering physical_addr,
but this isn't actually needed anymore. The only bits we need from
physical_addr after we start clobbering it are bits 5-9, and
those bits are identical in effective_addr and physical_addr,
so we can read them from effective_addr instead.
@JosJuice
Copy link
Member Author

Changed it to 5-9.

@leoetlino leoetlino merged commit 6659f80 into dolphin-emu:master Aug 30, 2021
11 checks passed
@JosJuice JosJuice deleted the jitarm64-dcbx-in-loop branch August 31, 2021 07:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants