Commit Graph

362 Commits

Author SHA1 Message Date
Conor McCarthy
7534b88a15 tests/shader-runner: Set the correct flag and format for raw UAVs. 2024-06-11 15:55:48 +02:00
Nikolay Sivov
ba18035260 vkd3d-shader/d3dbc: Write load instruction for tex2Dbias().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-06-11 15:50:34 +02:00
Nikolay Sivov
ccbe36fb8d vkd3d-shader/hlsl: Implement tex2Dbias().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56701
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-06-11 15:50:34 +02:00
Elizabeth Figura
33e5553158 vkd3d-shader/hlsl: Write SM5.1 binding reflection data. 2024-06-11 15:49:30 +02:00
Elizabeth Figura
4355e6ca69 vkd3d-shader/hlsl: Allocate register spaces for objects. 2024-06-11 15:49:30 +02:00
Conor McCarthy
9b070edf01 vkd3d-shader/spirv: Implement the QUAD_READ_LANE_AT instruction. 2024-06-11 15:48:21 +02:00
Conor McCarthy
c298493e4f vkd3d-shader/spirv: Implement the QUAD_READ_ACROSS_* instructions. 2024-06-11 15:48:21 +02:00
Francisco Casas
ade3daa311 tests: Test matrix default value initializers. 2024-06-11 15:46:40 +02:00
Francisco Casas
099a64aeb2 vkd3d-shader/hlsl: Initialize default values with braceless initializers.
It is hard to initialize default values on add_assignment() and calling
add_assignment() for initializers is not really necessary: the only
thing we need from it the implicit cast.
2024-06-11 15:46:40 +02:00
Francisco Casas
e8dbc36bd2 vkd3d-shader/hlsl: Record default values for uniforms and constant buffers. 2024-06-11 15:46:40 +02:00
Nikolay Sivov
727aacca18 tests: Add a few tests for the NULL value.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-30 19:56:44 +02:00
Nikolay Sivov
163aaf9729 tests: Add some basic tests for ConstantBuffer type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-30 19:56:39 +02:00
Nikolay Sivov
ea177a7750 vkd3d-shader/hlsl: Handle "unsigned int" type.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-30 19:56:29 +02:00
Victor Chiletto
fa5708d3b5 vkd3d-shader/hlsl: Fix XOR assign operator lexing. 2024-05-22 22:15:20 +02:00
Victor Chiletto
d8d2414132 tests/hlsl: Add a test for the XOR assign operator. 2024-05-22 22:15:19 +02:00
Francisco Casas
061dc39036 vkd3d-shader/hlsl: Also lower matrix swizzles and index loads in const passes. 2024-05-15 21:17:51 +02:00
Francisco Casas
dff2f746bc tests: Test complex array size expression. 2024-05-15 21:17:51 +02:00
Francisco Casas
58a6db5589 tests: Test default values for constant buffer variables. 2024-05-15 21:17:49 +02:00
Francisco Casas
499b44a193 tests: Test default values for uniform variables. 2024-05-15 21:17:47 +02:00
Conor McCarthy
9e57039fce vkd3d-shader/dxil: Handle SV_ClipDistance and SV_CullDistance. 2024-05-14 20:44:22 +02:00
Conor McCarthy
01af0f94bb tests/hlsl: Add a test for SV_ClipDistance. 2024-05-14 20:44:20 +02:00
Conor McCarthy
4f50af4c83 vkd3d-shader/dxil: Handle SV_Coverage out. 2024-05-14 20:44:18 +02:00
Conor McCarthy
e4724b4635 tests/hlsl: Add a test for SV_Coverage out. 2024-05-14 20:44:16 +02:00
Conor McCarthy
e1c774bfeb vkd3d-shader/spirv: Implement the WAVE_READ_LANE_FIRST instruction. 2024-05-14 20:44:10 +02:00
Conor McCarthy
cb9b10bf4d tests/hlsl: Clear the RTV before the WaveReadLaneFirst() test. 2024-05-14 20:44:08 +02:00
Conor McCarthy
936d8e4f61 vkd3d-shader/spirv: Implement the WAVE_READ_LANE_AT instruction. 2024-05-14 20:44:04 +02:00
Conor McCarthy
5790056c44 tests/hlsl: Add a test for WaveReadLaneAt() with a non-uniform index. 2024-05-14 20:44:00 +02:00
Conor McCarthy
ea5624e5e8 vkd3d-shader/dxil: Emit bool inputs and outputs as uint.
DXIL reads/writes uint for these.
2024-05-13 22:27:13 +02:00
Francisco Casas
28d267b7c0 vkd3d-shader/hlsl: Allocate SM1 numeric uniforms in decreasing bind count. 2024-05-13 22:26:21 +02:00
Francisco Casas
f548644222 vkd3d-shader/hlsl: Only allocate numeric bind count for SM1 numeric uniforms.
Unless they have register reservations, in which case the whole
variable is still reserved.
2024-05-13 22:26:08 +02:00
Francisco Casas
e0a801e796 vkd3d-shader/hlsl: Improve tracking of used components running DCE before.
track_object_components_usage() had to be improved to also
register derefs on resource stores.
It was not doing it because it assumed that for every resource store
there was a resource load already, which was true, before calling DCE.
2024-05-13 22:26:05 +02:00
Francisco Casas
657e460d11 vkd3d-shader/hlsl: Allocate unused variables with register reservations on SM1. 2024-05-13 22:26:03 +02:00
Francisco Casas
7b3644d9f2 tests: Test SM1 const register allocation with relative addressing. 2024-05-13 22:26:03 +02:00
Francisco Casas
b56ae0f1c8 tests: Test SM1 constant register allocation with reservations. 2024-05-13 22:26:03 +02:00
Nikolay Sivov
9dcb74341f tests: Test SM1 constant register allocation with a row_major matrix.
Co-authored-by: Francisco Casas <fcasas@codeweavers.com>
2024-05-13 22:26:01 +02:00
Francisco Casas
7debe25a8b tests: Test SM1 constant register allocation. 2024-05-13 22:26:01 +02:00
Conor McCarthy
77259da1ad vkd3d-shader/spirv: Implement the WAVE_PREFIX_BIT_COUNT instruction. 2024-05-13 11:50:23 +02:00
Conor McCarthy
065ef0c5e4 vkd3d-shader/spirv: Implement the WAVE_IS_FIRST_LANE instruction. 2024-05-13 11:50:21 +02:00
Conor McCarthy
feef2577ef vkd3d-shader/spirv: Implement the WAVE_ALL_BIT_COUNT instruction. 2024-05-13 11:50:19 +02:00
Conor McCarthy
962096f179 vkd3d-shader/dxil: Implement DX intrinsics EmitStream, CutStream and EmitThenCutStream. 2024-05-08 21:08:16 +02:00
Conor McCarthy
00b0b8d65c tests/hlsl: Add a geometry shader test. 2024-05-08 21:08:13 +02:00
Conor McCarthy
cfcc789b42 vkd3d-shader/spirv: Implement the WAVE_OP_* instructions. 2024-05-06 22:12:27 +02:00
Conor McCarthy
fef5760af0 vkd3d-shader/spirv: Implement the WAVE_ACTIVE_BIT_* instructions. 2024-05-06 22:12:24 +02:00
Conor McCarthy
1c49b3a779 vkd3d-shader/spirv: Implement the WAVE_ACTIVE_BALLOT instruction. 2024-05-06 22:12:21 +02:00
Henri Verbeet
62a512c4f8 tests/shader_runner: Get rid of some redundant "| glsl" conditions.
We don't run shader model 6 GLSL tests.
2024-05-02 22:19:30 +02:00
Conor McCarthy
95489899be vkd3d-shader/spirv: Handle the WAVE_ANY_TRUE instruction. 2024-05-02 22:19:02 +02:00
Conor McCarthy
78f2d2936d vkd3d-shader/spirv: Handle the WAVE_ACTIVE_ALL_EQUAL instruction. 2024-05-02 22:18:57 +02:00
Conor McCarthy
c770efc530 vkd3d-shader/spirv: Handle the WAVELANEINDEX register. 2024-05-02 22:18:54 +02:00
Conor McCarthy
29786d7efb tests/shader-runner: Add a 'require' directive for wave ops. 2024-05-02 22:18:53 +02:00
Conor McCarthy
fd590c2593 vkd3d: Initialise wave ops feature options.
Based in part on a vkd3d-proton patch by Philip Rebohle.
2024-05-02 22:18:50 +02:00