Conor McCarthy
57280673e5
tests/shader-runner: Test shaders with dxcompiler.
...
The location of dxcompiler should be set during configuration with
'DXCOMPILER_LIBS=-L/path/to/dxcompiler', and then at runtime with
LD_LIBRARY_PATH, WINEPATH or PATH as applicable.
A new 'fail(sm<6)' decoration is needed on many shader declarations
because dxcompiler succeeds on many shaders which fail with fxc. The
opposite case is less common and is flagged with 'fail(sm>=6)'. A few
tests cause dxcompiler to crash or hang, so these are avoided using
[require], which now skips tests until reset instead of exiting. Also,
'todo(sm<6)' and 'todo(sm>=6)' are used to separate checking of results.
2023-10-11 22:21:14 +02:00
Conor McCarthy
d211160b89
tests/shader-runner: Replace immediate shader type strings with an enum.
2023-10-11 22:21:14 +02:00
Nikolay Sivov
01faf6ad9e
tests: Add test file syntax to specify compiler options.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-07-24 22:41:09 +02:00
Nikolay Sivov
a4ebde202a
tests: Add support for UAV buffers in Vulkan runner.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-05-22 22:03:28 +02:00
Zebediah Figura
4ec60707e2
tests: Add a test for sampling from nonzero mipmap levels.
2023-05-08 20:24:15 +02:00
Zebediah Figura
c940486a89
tests/shader_runner: Add support for creating mipmapped textures.
2023-05-08 20:24:15 +02:00
Zebediah Figura
9ea84ae8c9
tests/shader_runner: Use the global test_options structure.
...
Inspired by a patch by Giovanni Mascellani.
2023-03-10 21:13:05 +01:00
Zebediah Figura
75494a4ae6
tests: Add a basic shader test for compute shaders.
2022-10-19 21:59:29 +02:00
Zebediah Figura
2b69ee67bd
tests/shader_runner: Make the render target into a resource.
...
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-09 19:13:06 +02:00
Zebediah Figura
ac404afe93
tests/shader_runner: Allow creating UAV resources.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-09 19:12:59 +02:00
Zebediah Figura
4a9d675c49
tests/shader_runner: Move the check_readback_data_vec4() call to shader_runner.c.
...
Split the probe_vec4() directive into get_rt_readback() and release_readback().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-31 21:53:21 +02:00
Zebediah Figura
c0562e2a1e
tests: Introduce support for marking individual test directives as todo.
...
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 21:18:04 +02:00
Zebediah Figura
26b89cc338
tests: Skip probe directives if the last render failed.
...
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 21:18:01 +02:00
Zebediah Figura
e3f78706ec
tests: Introduce a Vulkan shader runner.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 19:00:19 +02:00
Zebediah Figura
3e8b5a9fc3
tests: Store samplers in a fixed-size array.
...
We will need to allocate some structures in the Vulkan backend; this is easier
if we don't need to worry about allocating them dynamically.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 19:00:16 +02:00
Zebediah Figura
e208d87847
tests: Store resources in a fixed-size array.
...
We will need to allocate some structures in the Vulkan backend; this is easier
if we don't need to worry about allocating them dynamically.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 19:00:14 +02:00
Zebediah Figura
93c6fd0eb0
tests: Introduce a D3D9 shader runner.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-08 11:49:33 +02:00
Zebediah Figura
83a3de8529
tests: Allow skipping shader tests if requirements are not met.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-08 11:49:27 +02:00
Zebediah Figura
c7623262cc
tests: Specify the primitive type from the shader runner frontend.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:41 +01:00
Zebediah Figura
492cd135e3
tests: Specify the vertex count from the shader runner frontend.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:39 +01:00
Zebediah Figura
84c73f82f7
tests: Allow specifying a custom vertex buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:37 +01:00
Zebediah Figura
f11f7032cd
tests: Make the "texture" structure more generic.
...
Use it to hold any type of resource, regardless of type and binding.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:35 +01:00
Zebediah Figura
3ed4c6fe23
tests: Allow specifying a custom input layout.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:32 +01:00
Zebediah Figura
52223250d7
tests: Add support for running shader tests with a custom vertex shader.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:41:26 +01:00
Zebediah Figura
099df706f0
tests: Use a macro to define the render target size.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-21 22:35:03 +01:00
Zebediah Figura
5841e79102
tests: Rename struct shader_context to struct shader_runner.
...
This is a bit clearer, and avoids colliding with other things named "context",
e.g. struct test_context, or d3d11 device contexts.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-21 22:34:57 +01:00
Zebediah Figura
0ca2444e9b
tests: Use only one heap for textures in the d3d12 shader runner.
...
The d3d12 specification forbids simultaneously binding more than one heap of a
given type.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-14 18:26:50 +01:00
Zebediah Figura
721ea8fa60
tests: Mark some tests as requiring shader model 4.0.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-08 17:45:21 +01:00
Zebediah Figura
22e6581ffc
tests: Add a D3D11 shader runner backend.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:49 +01:00
Zebediah Figura
ecbdd8f994
tests: Add a helper to set uniforms.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:47 +01:00
Zebediah Figura
3994cec7b1
tests: Pass HLSL source to the draw_quad() function.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:44 +01:00
Zebediah Figura
33c845ece5
tests: Move d3d12-specific members of struct texture to a new d3d12_texture structure.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:41 +01:00
Zebediah Figura
c417d3f830
tests: Make texture allocation and destruction into separate shader_runner ops.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:39 +01:00
Zebediah Figura
09e3018b6d
tests: Move the drawing and readback implementation to the d3d12 shader runner.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:37 +01:00
Zebediah Figura
85d61f0c64
tests: Move HLSL shader compilation to a new d3d12 shader runner backend.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 18:00:34 +01:00