Age | Commit message (Collapse) | Author |
|
[[nodiscard]] doesn't do anything on functions with a void return type
and causes superfluous warnings.
|
|
This previously duplicated the case of the PBK case above it.
|
|
Prevents undefined behavior from occurring.
|
|
Fold shaders doing "a * b + c" on integers from the pattern generated by
Nvidia's GL compiler.
On a somewhat complex compute shader it reduces the code size by 16
instructions from 2 matches on Turing GPUs.
On Intel as extracted from KHR_pipeline_executable_properties:
Before the optimization:
```
Instruction Count: 2057
Basic Block Count: 45
Scratch Memory Size: 14752
Spill Count: 232
Fill Count: 261
SEND Count: 610
Cycle Count: 11325
```
After the optimization:
```
Instruction Count: 2046
Basic Block Count: 44
Scratch Memory Size: 13728
Spill Count: 219
Fill Count: 268
SEND Count: 604
Cycle Count: 11367
```
|
|
Simplify a bit the logic.
|
|
|
|
config, nvflinger: Add FPS cap setting
|
|
|
|
Settings: Eliminate ASYNC & MULTICORE Toggles and add GPU Accuracy to status bar
|
|
main: Fix screenshot filepath construction
|
|
Shader Decompiler Rewrite
|
|
The screenshot directory path returned does not have a trailing directory separator character. This caused screenshots to be saved in the parent directory of the configured screenshot directory.
This fixes that behavior
|
|
common: Publically link to pthreads
|
|
buffer_cache: Misc fixups related to buffer clears
|
|
use_framelimiter was not being used internally by the renderers.
set_background_color was always set to true as there is no toggle for the renderer background color, instead users directly choose the color of their choice.
|
|
This setting is best referred to as a speed limit, as it involves the limits of all timing based aspects of the emulator, not only framerate.
This allows us to differentiate it from the fps unlocker setting.
|
|
Allows finer tuning of the FPS limit.
|
|
Improve management of kernel objects
|
|
We don't need to manually apply this setting now that a template can do
this for us.
|
|
Prevents us from using an unclear 0 or 1 to describe the fullscreen
mode.
|
|
Common requires pthreads but does not refer to it when linking to other
modules. Fix this by linking to Threads where necessary.
|
|
Support ignoring immediate out of bound writes. Writing dynamically out
of bounds is not yet supported (e.g. R0+0x4).
Reading out of bounds yields zero. This is supported checking for the
size from the IR; if the input is immediate, the optimization passes
will drop it.
|
|
Fixes race condition caused. The descriptor pool is not thread safe, so
we have to commit descriptor sets within the same thread.
|
|
Causes crashes on Link's Awakening intro. It's hard to debug if it's our
fault due to bugs in validation layers.
|
|
|
|
This reverts commit 4a152767286717fa69bfc94846a124a366f70065.
|
|
Wait for shader to build before configuring it, and wait for the shader
to build before sharing it with other contexts.
|
|
This allows us invalidating OpenGL and Vulkan separately in the future.
|
|
|
|
|
|
|
|
|
|
Adheres to GL_ARB_separate_shader_objects requirements
|
|
Ensures that states set for a particular stage are not attached to other
stages which may not need them.
|
|
|
|
|
|
|
|
|
|
Silences the following warnings-turned-errors:
-Wsign-conversion
-Wunused-private-field
-Wbraced-scalar-init
-Wunused-variable
And some other errors
|
|
This change adds two new context menu items to remove either the OpenGL or the Vulkan shader caches individually, and the provides the option to remove all caches for the selected title.
This also changes the behavior of the open shader cache option. Now it creates the shader cache directory for the title if it does not yet exist.
|
|
|
|
|
|
The current implementation is prone to causing graphical issues. Disable until a better solution is implemented.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|