Commit Graph

768 Commits

Author SHA1 Message Date
Conor McCarthy
439652f023 tests: Replace test_vs_ps_relative_addressing() with a shader runner test.
Besides simply being more compact, this allows the test to cover more
shader types, perhaps most notably DXIL.
2025-02-24 16:19:01 +01:00
Giovanni Mascellani
2feb3a3bba vkd3d: Take the root signature from shaders when creating graphics pipelines.
If the root signature wasn't explicitly specified.

This fixes a failure in The Touryst.
2025-02-20 16:00:55 +01:00
Giovanni Mascellani
42b65e80cf tests: Test embedding the root signature in shaders for graphics pipelines. 2025-02-20 15:59:22 +01:00
Conor McCarthy
10edcec030 vkd3d: Do not require the ALLOW_DEPTH_STENCIL flag for depth/stencil formats in GetCopyableFootprints(). 2025-01-20 14:37:13 +01:00
Conor McCarthy
e99906f05d vkd3d: Return correctly aligned depth/stencil sizes from GetCopyableFootprints(). 2025-01-20 13:59:46 +01:00
Conor McCarthy
1a4dedbc8d vkd3d: Return the correct depth/stencil plane format from GetCopyableFootprints(). 2025-01-20 13:45:16 +01:00
Elizabeth Figura
dd450c526f tests/d3d12: Make the dtof test a bit more interesting. 2024-12-18 17:30:16 +01:00
Giovanni Mascellani
3264378fa0 tests: Print the file name instead of the test name in test logs.
Some test programs, particularly the shader runner, are built from
many different files nowadays, and a line number is relatively
cumbersome to use if you don't know which file that line comes from.
2024-12-03 12:38:26 +01:00
Giovanni Mascellani
4c9821e5d5 tests: Mark a conditional rendering test as buggy on llvmpipe.
Similarly to RADV, this is a kind of perverted situation: in
principle Vulkan doesn't allow vkCmdResolveImage() to be
executed conditionally (i.e., it is unaffected by conditional
execution), which means that vkd3d cannot implement conditional
rendering for ResolveSubresource(), hence the todo. However,
like RADV, llvmpipe apparently violates the specification and
still executes the image resolution command conditionally. So
that's a llvmpipe bug, even if one that helps us doing the right
thing.
2024-11-13 16:19:06 +01:00
Giovanni Mascellani
ae1d62f6a0 tests: Consider LOD miscalculation a todo rather than a driver bug. 2024-10-28 15:32:03 +01:00
Giovanni Mascellani
ae772d40cf vkd3d: Disable push descriptors when that's helpful to stay within 8 descriptor sets. 2024-10-21 18:22:15 +02:00
Giovanni Mascellani
9f3b21cc78 tests: Mark latching the predicated value as todo on llvmpipe.
Vulkan doesn't mandate whether the predicated value should be latched
when beginning the predicated section or re-read at each operation.
2024-10-21 18:20:38 +02:00
Giovanni Mascellani
1301014b28 tests: Mark creating an 8x MSAA render target as buggy on llvmpipe. 2024-10-21 18:20:38 +02:00
Giovanni Mascellani
3c86094371 tests: Mark a sampling test as buggy on llvmpipe.
Vulkan doesn't mandate whether sampling exactly in the middle between
two levels should resolve to one or the other, while D3D specifies
that it should result into sampling the higher level. llvmpipe
happens to choose the lower one instead, at least in some cases.
2024-10-21 18:20:38 +02:00
Conor McCarthy
b092fcfc46 tests/d3d12: Test buffer and texture SRVs in test_unbounded_resource_arrays().
On virtual heaps, SRV/UAV unbounded ranges are implemented using two
descriptor sets, one for buffers and another for textures, and this case
should be tested.
2024-10-17 17:23:04 +02:00
Conor McCarthy
91475c684f vkd3d: Clear the output pointer on failure in vkd3d_create_versioned_root_signature_deserializer(). 2024-09-24 13:34:40 +02:00
Conor McCarthy
ae4a6c7044 tests/d3d12: Test invalid bytecode in test_root_signature_byte_code(). 2024-09-24 13:30:33 +02:00
Conor McCarthy
966e627733 tests/d3d12: Test a bounded range at the same offset as an unbounded one in test_unbounded_resource_arrays(). 2024-09-23 15:45:26 +02:00
Anna (navi) Figueiredo Gomes
12a7cde092 tests/shader_runner: Use ID3D12Device2_CreatePipelineState() when available. 2024-09-11 14:13:59 +02:00
Giovanni Mascellani
784e69a366 vkd3d: Check the entire root signature for register conflicts.
Not just each descriptor table individually.
2024-08-06 16:53:06 +02:00
Giovanni Mascellani
9f4a568868 tests: Mark a couple of tests as working on recent NVIDIA GPUs.
I don't know the exact version that fixed this todo, but on the
same hardware this test was failing a couple of years ago, so
I presume something was fixed at some point. I am writing my
current driver version, but a lower one might turn out to be
sufficient.
2024-07-31 20:50:58 +02:00
Giovanni Mascellani
507cc2976f tests: Test register conflicts in a root signature. 2024-07-29 13:19:10 +02:00
Giovanni Mascellani
e4e7368c1c tests: Pad the constant buffer in test_update_compute_descriptor_tables() to 256 bytes.
The D3D12 debug layer signals an error otherwise.
2024-07-17 15:53:31 +02:00
Conor McCarthy
3e25356abb tests: Add a test for clearing a large buffer UAV.
Large buffers can exceed the maximum workgroup X count.
2024-07-17 15:51:39 +02:00
Giovanni Mascellani
4f67675a51 tests: Support using the Agility SDK in the crosstests. 2024-07-09 16:57:03 +02:00