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

Virtual memory minor refactoring #9222

Merged
merged 6 commits into from Nov 8, 2020
Merged

Virtual memory minor refactoring #9222

merged 6 commits into from Nov 8, 2020

Conversation

Nekotekina
Copy link
Member

rsx_cache, oh my...

But could be worse.

@Nekotekina Nekotekina changed the title Refactor Utilities/VirtualMemory Virtual memory minor refactoring Nov 8, 2020
Move bits to the highest, set RWX order.
Use only one reserved value (W = locked).
Assume lock size 128 for range_locked.
Add new "Size" template argument that replaces normal argument.
Add complementary unmap_self() method.
Move VirtualMemory to util/vm.hpp
Minor associated include cleanup.
Move asm.h to util/asm.hpp
Renamed from g_shareable. Contains pointers instead of bits.
Used in range locks to prevent any "collision" between memory.
Use optimistic locking and optimistic loop (expecting 1 iteration).
Use some prefetching
Use optimistic locking
Also to sys_semaphore_create, although we don't do it.
@Nekotekina Nekotekina merged commit 733b46d into RPCS3:master Nov 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants