- 19 Sep, 2020 1 commit
-
-
ReinUsesLisp authored
This reworks how host<->device synchronization works on the Vulkan backend. Instead of "protecting" resources with a fence and signalling these as free when the fence is known to be signalled by the host GPU, use timeline semaphores. Vulkan timeline semaphores allow use to work on a subset of D3D12 fences. As far as we are concerned, timeline semaphores are a value set by the host or the device that can be waited by either of them. Taking advantange of this, we can have a monolithically increasing atomic value for each submission to the graphics queue. Instead of protecting resources with a fence, we simply store the current logical tick (the atomic value stored in CPU memory). When we want to know if a resource is free, it can be compared to the current GPU tick. This greatly simplifies resource management code and the free status of resources should have less false negatives. To workaround bugs in validation layers, when these are attached there's a thread waiting for timeline semaphores.
-
- 17 Sep, 2020 1 commit
-
-
bunnei authored
video_core: Enforce -Werror=switch
-
- 16 Sep, 2020 9 commits
-
-
Rodrigo Locatti authored
bis_factory/romfs_factory: Eliminate dependencies on the global system instance
-
Lioncash authored
-
Lioncash authored
-
Lioncash authored
-
Rodrigo Locatti authored
core/loader: Remove dependencies on the global system instance
-
ReinUsesLisp authored
This forces us to fix all -Wswitch warnings in video_core.
-
Lioncash authored
Now all that remains is: 18 instances in file_sys code 14 instances in GDB stub code (this can be tossed wholesale) 4 instances in HLE code 2 instances in settings code.
-
Rodrigo Locatti authored
nca_patch: Reduce stack usage size within SearchBucketEntry()
-
Rodrigo Locatti authored
cheat_engine: Remove unnecessary system argument to CheatParser's Parse function
-
- 15 Sep, 2020 5 commits
-
-
Lioncash authored
Previously this function was using ~16KB of stack (16528 bytes), which was caused by the function arguments being taken by value rather than by reference. We can make this significantly lighter on the stack by taking them by reference.
-
Lioncash authored
This is only used internally and doesn't depend on any class state, so we can make it fully internal.
-
Lioncash authored
We don't need to create two separate instantiations of the same code, we can simply make the character template argument a regular function parameter.
-
Lioncash authored
This isn't used within the function at all in any implementations, so we can remove it entirely.
-
Rodrigo Locatti authored
patch_manager: Minor cleanup
-
- 14 Sep, 2020 8 commits
-
-
Lioncash authored
We make it explicit that we're truncating arithmetic here to resolve compiler warnings (even if the sizes weren't u32/u64 arithmetic generally promotes to int :<)
-
Lioncash authored
We can use these to avoid typing the same type redundantly. This way, if these ever change, only a single location needs to be modified.
-
Lioncash authored
These functions are only used within this translation unit, so we can make them internally linked.
-
Rodrigo Locatti authored
crypto/key_manager: Remove dependency on the global system accessor
-
Lioncash authored
We can supply the content provider as an argument instead of hardcoding a global accessor in the implementation.
-
Rodrigo Locatti authored
kernel: Remove all dependencies on the global system instance
-
Lioncash authored
With this, the kernel finally doesn't depend directly on the global system instance anymore.
-
bunnei authored
service: Remove two usages of the global system accessor
-
- 12 Sep, 2020 2 commits
- 11 Sep, 2020 4 commits
- 10 Sep, 2020 4 commits
-
-
bunnei authored
Project Mjölnir: Part 2 - Controller Applet
-
bunnei authored
configure_input_player: Resolve sign conversion warnings in UpdateMappingWithDefaults()
-
Rodrigo Locatti authored
video_core: Remove all Core::System references in renderer
-
bunnei authored
gc_adapter: Make DeviceConnected() a const member function
-
- 09 Sep, 2020 1 commit
-
-
Morph authored
-
- 07 Sep, 2020 5 commits
-
-
Lioncash authored
Removes more instances of reliance on global state.
-
Lioncash authored
This doesn't modify instance state, so it can be made const.
-
Lioncash authored
Previously the address provided to SendToImpl would never be propagated to SendTo(). This fixes that.
-
Lioncash authored
-
Lioncash authored
Same behavior, less typing.
-