| Age | Commit message (Collapse) | Author |
|
Preserves list of add ons and the icon, which are the two costliest parts of game list population.
|
|
|
|
Also cleanup of general stuff
|
|
|
|
Fix missing OpSelectionMerge instruction. This caused devices loses on
most hardware, Intel didn't care.
Fix [-1;1] -> [0;1] depth conversions.
Conditionally use VK_EXT_scalar_block_layout. This allows us to use
non-std140 layouts on UBOs.
Update external Vulkan headers.
|
|
Keeps track of native ASTC support, VK_EXT_scalar_block_layout
availability and SSBO range.
Check for independentBlend and vertexPipelineStorageAndAtomics as a
required feature. Always enable it.
Use vk::to_string format to log Vulkan enums.
Style changes.
|
|
There's no performance improvement in passing an unsigned pair by
reference.
|
|
renderer_opengl/utils: Use a std::string_view with LabelGLObject()
|
|
service/aoc_u: Minor cleanup
|
|
common/file_util: Minor cleanup
|
|
We can just make the conversion explicit instead of implicit here to
silence -Wsign-compare warnings.
|
|
This was previously performing a size_t == int comparison. Silences a
-Wsign-compare warning.
|
|
|
|
Logs a lot of seemingly innocuous telemetry games generate.
|
|
Matches offical behavior with creport and replaces old log/text based report system.
|
|
|
|
This matches official behavior with the erpt/eclct/eupld service chain.
|
|
This also reworks the applet data storage to be peekable.
|
|
|
|
|
|
Reports are unnecessary for normal users and this is to prevent 'power' users from enabling the feature by accident.
|
|
Full enable/disable for all reports.
|
|
Returns results as a vector of entries for further processing. Logs addresses, offsets, and mangled name.
|
|
Needed for backtrace decomposition
|
|
Nothing from the hotkeys dialog relies on this call occurring, and is
already called from the dialog that calls applyConfiguration().
|
|
Avoids mentioning the user and formalizes the error itself.
|
|
critical() is intended for critical/fatal errors that threaten the
overall stability of an application. A user entering a conflicting key
sequence is neither of those.
|
|
We don't need to extract the entire set of hotkeys into a list and then
iterate through it. We can traverse the list and early-exit if we're
able to.
|
|
1. This is something that should be solely emitted by the hotkey dialog
itself
2. This is functionally unused, given there's nothing listening for the
signal.
|
|
The previous code was all "smushed" together wasn't really grouped
together that well.
This spaces things out and separates them by relation to one another,
making it easier to visually parse the individual sections of code that
make up the constructor.
|
|
QDialogButtonBoxes are horizontal by default.
|
|
Uses a std::string_view instead of a std::string, given the pointed to
string isn't modified and is only used in a formatting operation.
This is nice because a few usages directly supply a string literal to
the function, allowing these usages to otherwise not heap allocate,
unlike the std::string overloads.
While we're at it, we can combine the address formatting into a single
formatting call.
|
|
yuzu/main: Specify string conversions explicitly
|
|
gl_shader_cache: Use shared contexts to build shaders in parallel at boot
|
|
call
A checkbox is able to be tri-state, giving it three possible activity
types, so in the connect call here, it would actually be truncating an
int into a bool.
Instead, we can just listen on the toggled() signal, which passes along
a bool, not an int.
|
|
Now that all of our code is compilable with implicit QString
conversions, we can enforce it at compile-time by disabling them.
|
|
This isn't actually used anywhere, so it can be removed.
|
|
Given the std::optional can contain an object type that heap allocates,
we can use std::move to avoid an unnecessary copy/allocation from
occurring.
|
|
Qt uses a signed value to represent container sizes, so this was causing
a sign mismatch warning.
|
|
Allows the software keyboard applet code to compile with implicit string
conversions disabled.
|
|
Allows the error applet to build successfully with implicit string
conversions disabled.
|
|
|
|
shader/memory: Implement generic memory stores and loads (ST and LD)
|
|
yuzu/configuration/config: Specify string conversions explicitly
|
|
Port citra-emu/citra#4716: "HLE/IPC: HLEContext can memorize the client thread and use it for SleepClientThread"
|
|
The following code is broken on AMD's proprietary GLSL compiler:
```glsl
uint idx = ...;
vec4 values = ...;
float some_value = values[idx & 3];
```
It index the wrong components, to fix this the following pessimized code
is emitted when that bug is present:
```glsl
uint idx = ...;
vec4 values = ...;
float some_value;
if ((idx & 3) == 0) some_value = values.x;
if ((idx & 3) == 1) some_value = values.y;
if ((idx & 3) == 2) some_value = values.z;
if ((idx & 3) == 3) some_value = values.w;
```
|
|
Component indexing on AMD's proprietary driver is broken. This commit adds
a test to detect when we are on a driver that can't successfully manage
component indexing.
It dispatches a dummy draw with just one vertex shader that writes to an
indexed SSBO from the GPU with data sent through uniforms, it then reads
that data from the CPU and compares the expected output.
|
|
While we're at it, also invert the conditional into a guard clause.
|
|
nullptr was being returned in the error case, which, at a glance may
seem perfectly OK... until you realize that std::string has the
invariant that it may not be constructed from a null pointer. This
means that if this error case was ever hit, then the application would
most likely crash from a thrown exception in std::string's constructor.
Instead, we can change the function to return an optional value,
indicating if a failure occurred.
|
|
These are already present within the header, so they don't need to be
repeated in the cpp file.
|