5262 Commits

Author SHA1 Message Date
Henri Verbeet
9b0d304f8f vkd3d-shader/glsl: Introduce glsl_compile(). 2024-03-12 22:15:41 +01:00
Henri Verbeet
bdc096d437 vkd3d-shader/d3d-asm: Get rid of the (now) redundant "shader_desc" parameter to vkd3d_dxbc_binary_to_text().
And rename the function to d3d_asm_compile() while we're touching it.
2024-03-12 22:15:34 +01:00
Francisco Casas
b831ffe96c tests: Avoid creating a file named "0" when calling "make check".
We use "printf" instead of "print" in awk in order to avoid a newline in
the value of $xfcount, and use "-gt" instead of ">", which creates the
spurious file, in the comparison.
2024-03-12 22:15:00 +01:00
Nikolay Sivov
948cd2154a vkd3d-shader/fx: Handle 'single' modifier for buffers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 22:14:50 +01:00
Nikolay Sivov
e0ef45c0a3 vkd3d-shader: Parse a 'single' modifier.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 22:14:50 +01:00
Nikolay Sivov
cf7c05f431 vkd3d-shader: Remove a token for 'precise' modifier.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 22:14:50 +01:00
Giovanni Mascellani
f2b2040ff6 vkd3d-shader/ir: Sort loop intervals. 2024-03-12 22:14:47 +01:00
Giovanni Mascellani
070c4af8b3 vkd3d-shader/ir: Generate synthetic intervals for forward edges. 2024-03-12 22:14:46 +01:00
Giovanni Mascellani
1d60612340 vkd3d-shader/ir: Compute loop as intervals of the block order. 2024-03-12 22:14:45 +01:00
Nikolay Sivov
30cc6ceb44 vkd3d-shader/fx: Add support for writing shared object descriptions for fx_4_x.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 22:14:41 +01:00
Nikolay Sivov
13227f3852 vkd3d-shader: Add an option to enable child effects compilation.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 22:14:41 +01:00
Nikolay Sivov
7f1fdd447c vkd3d-shader/fx: Add initial support for writing uninitialized vertex/pixel shader objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-12 22:14:40 +01:00
Evan Tang
03a80cde2e vkd3d: Enable VK_EXT_fragment_shader_interlock if available. 2024-03-11 22:10:25 +01:00
Henri Verbeet
038764985a vkd3d-shader/glsl: Use location information from the current instruction. 2024-03-11 22:10:21 +01:00
Giovanni Mascellani
dff22c9ed7 tests: Clear the UAV before testing.
There is no guarantee that a resource is cleared upon creation. This
fixes the test on NVIDIA and llvmpipe.
2024-03-11 22:10:15 +01:00
Giovanni Mascellani
5e43f99809 tests: Relax precision a bit for an interpolation test.
Otherwise the test fails on Intel, NVIDIA and llvmpipe.
2024-03-11 22:10:14 +01:00
Giovanni Mascellani
0c63824d9f tests: Mark the coverage test as buggy on MoltenVK.
Apparently MoltenVK doesn't set the SampleMask built-in to the
fragment coverage mask.
2024-03-11 22:10:13 +01:00
Giovanni Mascellani
cf816a255c tests: Pop the test context when leaving its scope. 2024-03-11 22:10:13 +01:00
Giovanni Mascellani
f6fe9a39db tests: Mark the HS punned array test as buggy on MoltenVK.
MoltenVK doesn't support the Component decoration on tessellation
shaders.
2024-03-11 22:10:10 +01:00
Conor McCarthy
4f0e5b9069 vkd3d-shader/dxil: Support 16-bit types. 2024-03-11 22:10:06 +01:00
Conor McCarthy
066ea75945 vkd3d-shader/spirv: Introduce HALF and UINT16 types for minimum precision.
Minimum precision types must always be implemented as 32-bit to match how
reduced precision works in SPIR-V.
2024-03-11 22:10:05 +01:00
Conor McCarthy
58123c2e10 vkd3d-shader/spirv: Introduce a data_type_is_floating_point() helper function. 2024-03-11 22:10:03 +01:00
Conor McCarthy
581939f1ef tests/shader-runner: Add tests for minimum-precision constants.
Values in DXIL have no signedness, so it is ambiguous whether 16-bit
constants should or should not be sign-extended when 16-bit execution
is not supported.
2024-03-11 22:10:01 +01:00
Nikolay Sivov
25d353db91 vkd3d-shader/d3dbc: Do not write semantic declarations for unused variables.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55829
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56402
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-11 22:09:55 +01:00
Zebediah Figura
ad495970e0 vkd3d-shader/spirv: Implement SLT and SGE. 2024-03-11 22:09:48 +01:00