| Age | Commit message (Collapse) | Author |
|
Drop MemoryBarrier from the buffer cache and use Maxwell3D's register
WaitForIdle.
To implement this on OpenGL we just call glMemoryBarrier with the
necessary bits.
Vulkan lacks this synchronization primitive, so we set an event and
immediately wait for it. This is not a pretty solution, but it's what
Vulkan can do without submitting the current command buffer to the queue
(which ends up being more expensive on the CPU).
|
|
vk_renderpass_cache: Pack renderpass cache key and unify keys
|
|
vk_memory_manager: Remove unified memory model flag
|
|
services: hid: Stub StopSevenSixAxisSensor.
|
|
Optimize GPU Command Lists and Introduce Fast GPU Time Option
|
|
Fix "Port citra-emu/citra#4956: "Fixes to game list sorting" #3611"
|
|
service: Update function tables
|
|
{gl,vk}_rasterizer: Add lazy default buffer maker and use it for empty buffers
|
|
configuration: Add Restore Default and Clear options to hotkeys
|
|
configure_input_player: Use slider to edit modifier scale
|
|
- Used by The Legend of Zelda: Breath of the Wild v1.6.0
|
|
|
|
vulkan/wrapper: Sort physical devices
|
|
decode/arithmetic_half: Fix HADD2 and HMUL2 absolute and negation bits
|
|
svc: Re-add MapProcessCodeMemory/UnmapProcessCodeMemory
|
|
Sometimes for unknown reasons NVN games can bind a render target format
of 0. This may be a yuzu bug.
With the commits before this the formats were specified without being
"packed", assuming all formats and texceptions will be written like in
the color_attachments vector.
To address this issue, iterate all render targets and pack them as they
are valid. This way they will match color_attachments.
- Fixes validation errors and graphical issues on Breath of the Wild.
|
|
|
|
shader/arithmetic_integer: Fix LEA_IMM encoding
|
|
|
|
|
|
frontend/filesystem: Add a trailing separator to the string path
|
|
page_table: Remove unused captures
|
|
svc: Remove unused variable
|
|
Amends the parameter to match the documentation reference.
Resolves a -Wdocumentation warning with clang.
|
|
These were lost in the re-implementation of the virtual memory manager.
|
|
Since the VMM refactor, this is no longer used or needed.
|
|
Any time the lambda function is called, the permission being used in the
capture would be passed in as an argument to the lambda, so the capture
is unnecessary.
|
|
The encoding for negation and absolute value was wrong.
Extracting is now done manually. Similar instructions having different
encodings is the rule, not the exception. To keep sanity and readability
I preferred to extract the desired bit manually.
This is implemented against nxas:
https://github.com/ReinUsesLisp/nxas/blob/8dbc38995711cc12206aa370145a3a02665fd989/table.h#L68
That is itself tested against nvdisasm (Nvidia's official disassembler).
|
|
Framebuffer creation was ignoring the number of color attachments.
|
|
This allows us to call Common::CityHash and std::memcmp only once for
GraphicsPipelineCacheKey. While we are at it, do the same for compute.
|
|
|
|
Fix format error in performance statistics
|
|
* kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
* fixup! kernel: memory: Improve implementation of device shared memory.
|
|
|
|
|
|
|
|
|
|
service/time: Remove reliance on the global system accessor
|
|
CMakeLists: Enable -Wmissing-declarations on Linux builds
|
|
|
|
Formatting
|
|
Introduce Predictive Flushing and Improve ASYNC GPU
|
|
vk_pipeline_cache: Fix unintentional memcpy into optional
|
|
The intention behind this was to assign a float to from an uint32_t, but
it was unintentionally being copied directly into the std::optional.
Copy to a temporary and assign that temporary to std::optional. This can
be replaced with std::bit_cast<float> once we are in C++20.
|
|
|
|
thread: FPCR.FZ is likely not 1 (and FPCR.RMode = TieAway and FPCR.DN = 0)
|
|
Add missing ;
|
|
|
|
Introduce dummy context for yuzu-cmd VK support
|
|
renderer_vulkan: Integrate Nvidia Nsight Aftermath on Windows
|