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
Conor McCarthy
0ef0735999
tests/shader-runner: Do not exit if a 'require' directive is not met.
...
Tests are skipped until the next 'require' directive, which restores
the defaults before the new requirements are read.
2023-10-11 22:21:14 +02:00
Conor McCarthy
192f4dcb2b
tests/shader-runner: Handle individual keywords in shader directives.
...
Matching all possible combinations of keywords becomes too complex
if more keywords are added.
2023-10-11 22:21:14 +02:00
Nikolay Sivov
269747dbf3
tests: Enable compiler backwards compatibility mode only for shaders that require it.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-08-28 20:40:06 +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
Francisco Casas
ab37b27a7d
tests: Pass D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY when compiling with the shader-runner.
2023-07-17 22:55:43 +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
3cce4e70e9
tests: Test bool semantics.
2023-05-01 22:18:33 +02:00
Francisco Casas
627678a632
tests: Map unindentified hrs on compilation.
2023-05-01 22:18:17 +02:00
Francisco Casas
9cc1c7fe9d
tests: Allow invalid vertex shader tests.
2023-05-01 22:18:17 +02:00
Francisco Casas
877fd3f0b4
tests: Expect S_OK result on [vertex shader].
2023-05-01 22:18:16 +02:00
Zebediah Figura
e34bdcab3a
tests/shader_runner: Remove a redundant vkd3d_test_pop_context().
...
We already popped the context here.
Move the break inside the previous if to make control flow a little clearer.
2023-04-20 22:54:23 +02:00
Giovanni Mascellani
625155bd3c
tests: Pop the shader runner context after processing the current section.
...
This way failures produced while compiling or preprocessing a shader
are shown with the appropriate context.
2023-04-19 20:46:53 +02:00
Zebediah Figura
dfa4bfdd03
include: Make test context information nestable.
...
Based on Wine.
2023-04-04 21:59:58 +02:00
Giovanni Mascellani
9a27df3a8c
tests: Read integer uniforms with strtol() and strtoul().
...
Because %i sscanf() converters are deprecated, and in practice
clamp to [-2^31, 2^31) on 32 bit.
2023-04-03 18:00:14 +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
Giovanni Mascellani
8d7159b4be
tests: Initialize shader_runner fields after having zeroed the struct.
2023-03-10 21:12:44 +01:00
Giovanni Mascellani
1717dc0516
tests: Print DLL versions when running tests on Windows.
2023-01-24 18:10:22 +01:00
Giovanni Mascellani
2445743002
tests: Run d3d9 and d3d12 tests on non-cross builds too.
...
On cross builds, shaders are compiled with d3dcompiler_47.dll and
run with d3dN.dll. On non-cross builds, shaders are compiled with
vkd3d-shader and run with d3dN.dll (on Windows) or Vulkan and vkd3d
(on Linux).
2023-01-24 18:10:17 +01:00
Giovanni Mascellani
44d9e2d728
tests: Distinguish between cross and non-cross Win32 builds.
...
Now the tests compile correctly on non-cross Win32 builds.
2023-01-24 18:10:15 +01:00
Zebediah Figura
9c817e5e6d
vkd3d-shader/hlsl: Forbid recursive calls.
2023-01-19 19:16:27 +01:00
Zebediah Figura
503be4243c
tests/shader_runner: Explicitly track the expected shader compilation HRESULT instead of using a boolean flag.
2023-01-19 19:16:26 +01:00