Commit Graph

33085 Commits

Author SHA1 Message Date
Henrik Rydgård
87b14fe1c2 Some more renaming and refactoring, extracted from a future PR 2022-09-04 00:10:55 +02:00
Henrik Rydgård
8e39018b95 Channel mask refactor 2022-09-04 00:10:54 +02:00
Henrik Rydgård
5f1ffeae70 Correct LogicOp API support detection 2022-09-04 00:08:40 +02:00
Henrik Rydgård
d3309dd8e9 Minor refactor with pipelines in QueueRunner (makes more information available for easier debugging) 2022-09-03 23:08:02 +02:00
Henrik Rydgård
6b1e4806cf Don't parallelize shader compiles in debug mode, sync in debug allocator kills performance. 2022-09-03 23:07:39 +02:00
Henrik Rydgård
14465cee13
Merge pull request #15951 from unknownbrackets/softgpu-rectfast
Improve rectangle fast path checks in softgpu
2022-09-03 22:58:34 +02:00
Henrik Rydgård
6783ecd72a
Merge pull request #15952 from unknownbrackets/branch-delayslot
interp: Handle jumps in branch delay slots better
2022-09-03 22:38:22 +02:00
Unknown W. Brackets
0fc3619d1d interp: Handle jumps in branch delay slots better.
This matches tests from a PSP-2000.  Seems to consistently run the
instruction even if likely, which writes rd.

If the likely branch is not taken, the jump in the delay slot is taken.
However, it should cancel the rd write (not implemented here.)
2022-09-03 13:15:21 -07:00
Unknown W. Brackets
91ff603fd7
Merge pull request #15950 from unknownbrackets/memstruct-cleanup
Remove Memory::WriteStruct() and ReadStruct()
2022-09-03 11:25:04 -07:00
Unknown W. Brackets
15b73b56bb softgpu: Correct texture check in fastpath.
This is the no textures option, so we shouldn't check sampler state at
all.  Presumably this was failing and reading uninitialized data...
2022-09-03 11:21:14 -07:00
Unknown W. Brackets
af004dd53d softgpu: Validate alpha test properly for fastpath.
We don't want a weird LESS test being mishandled.
2022-09-03 11:19:24 -07:00
Unknown W. Brackets
ba1ced4992 softgpu: Avoid rect fast path with subpixel offset.
It doesn't handle it right, see #15876.  We still handle these with
DrawRectangle(), which gets it right.
2022-09-03 11:08:11 -07:00
Unknown W. Brackets
ccd4e92184 Kernel: Use PSPPointer for status objects.
Code makes more sense when reading ->size rather than offset 0.
2022-09-03 10:44:12 -07:00
Unknown W. Brackets
dd0de46ed9 Io: Use PSPPointer instead of struct temps. 2022-09-03 10:44:11 -07:00
Unknown W. Brackets
79c7a91d98 Font: Remove needless ReadStruct(). 2022-09-03 10:44:11 -07:00
Unknown W. Brackets
a86b904cf2 Ge: Switch from ReadStruct to PSPPointer. 2022-09-03 10:44:11 -07:00
Unknown W. Brackets
8b41178cb8 Psmf: Use PSPPointer instead of WriteStruct. 2022-09-03 10:44:11 -07:00
Unknown W. Brackets
8f96405ee5 Net: Remove usage of Memory::WriteStruct().
This also validates pointer write size better.
2022-09-03 10:44:11 -07:00
Unknown W. Brackets
3a372aa615 HLE: Remove misc usage of WriteStruct().
Prefer PSPPointer and notifying.
2022-09-03 10:44:11 -07:00
Henrik Rydgård
b92ea74fb3
Merge pull request #15589 from hrydgard/glsl-compilation-parallelization
Vulkan: Parallelize GLSL compilation
2022-09-03 17:00:01 +02:00
Unknown W. Brackets
867eb99505 PPGe: Cleanup memory writes for clarity.
Switch from WriteStruct to PSPPointer as well.
2022-09-03 07:25:03 -07:00
Henrik Rydgård
fb3f417e77 Fix lying comment, log level reduction 2022-09-03 16:15:46 +02:00
Unknown W. Brackets
99681ff0f2
Merge pull request #15949 from hrydgard/remove-reset-framebuffer-flag
Remove confusing resetFramebufferRead flag from secondary framebuffer binding
2022-09-03 06:46:36 -07:00
Henrik Rydgård
76bd2395bf Promise: Add SpawnEmpty (couldn't come up with a better name), fix bug with multiple waiters 2022-09-03 15:21:08 +02:00
Henrik Rydgård
c06cf8efaa Switch Vulkan pipelines to use promises for synchronization
Slightly more expensive I guess but shouldn't be much of a bottleneck.
2022-09-03 15:21:08 +02:00
Henrik Rydgård
2bb845a0ca VS 2022 warning fix 2022-09-03 15:21:08 +02:00
Henrik Rydgård
ebe2d1b30f More buildfixing 2022-09-03 15:21:07 +02:00
Henrik Rydgård
210233ede0 Buildfix 2022-09-03 15:21:07 +02:00
Henrik Rydgård
e701037267 Buildfix 2022-09-03 15:21:07 +02:00
Henrik Rydgård
6e605fa2bc Fix silly logic, fixes the shader leak. 2022-09-03 15:21:07 +02:00
Henrik Rydgård
8775837c11 Work towards finding the leak 2022-09-03 15:21:07 +02:00
Henrik Rydgård
93422f6dea Don't block on shader creation until it's time to create the pipeline. 2022-09-03 15:21:07 +02:00
Henrik Rydgård
e2c740827a Use shader module promises as keys in pipeline cache instead of the actual shader modules.
Prevents early block.
2022-09-03 15:21:07 +02:00
Henrik Rydgård
fc418ee16f Create shader modules (and compile GLSL) on worker threads 2022-09-03 15:21:07 +02:00
Henrik Rydgård
010c3b4f4b minor sv translation fix 2022-09-03 15:21:07 +02:00
Henrik Rydgård
ec0586ba50 Use promises to hold shader modules, for later asyncification 2022-09-03 15:21:07 +02:00
Henrik Rydgård
c846c2dfa8 Remove confusing resetFramebufferRead flag from secondary framebuffer binding 2022-09-03 14:48:07 +02:00
Henrik Rydgård
cd0fff2df8
Merge pull request #15948 from hrydgard/remove-setting-slow-framebuf-effects
Remove setting: Slow framebuf effects
2022-09-03 13:27:35 +02:00
Henrik Rydgård
8c56abd3dc Remove setting "Disable slower framebuffer effects" 2022-09-03 11:06:43 +02:00
Henrik Rydgård
68d88726ae Remove unused function 2022-09-03 11:06:43 +02:00
Henrik Rydgård
af54ff7941 langtool: Run fmt, remove wrong comments 2022-09-03 10:53:47 +02:00
Henrik Rydgård
759dc25503 langtool: Add easy command to remove a key. 2022-09-03 10:52:48 +02:00
Henrik Rydgård
dc86970098
Merge pull request #15947 from unknownbrackets/unittest-cleanup
unitest: Correct wrong free, initialize data
2022-09-03 07:03:17 +02:00
Henrik Rydgård
88694bde0c
Merge pull request #15943 from unknownbrackets/softgpu-vertex
vertexjit: Clamp through float pos during decode
2022-09-03 07:02:46 +02:00
Unknown W. Brackets
df624d8651
Merge pull request #15946 from hrydgard/shader-blend-refactor
Shader blend refactor part 1
2022-09-02 20:14:10 -07:00
Unknown W. Brackets
2dbd9d8c70 unitest: Correct wrong free, initialize data.
Prevents valgrind warnings in unittest.
2022-09-02 20:04:25 -07:00
Unknown W. Brackets
e9880d39be vertexjit: Update unit test, oops. 2022-09-02 18:09:47 -07:00
Henrik Rydgård
fd6ab4c495 Avoid recomputing the shaderblend setup in ComputeFragmentShaderID. 2022-09-02 23:06:41 +02:00
Henrik Rydgård
0fe064d970 Small steps 2022-09-02 22:43:58 +02:00
Henrik Rydgård
f81a28f661 Some reordering 2022-09-02 22:40:15 +02:00