Commit Graph

696 Commits

Author SHA1 Message Date
Conor McCarthy
4dafd6bedf vkd3d: Implement GetCopyableFootprints1(). 2024-03-08 23:36:08 +01:00
Conor McCarthy
197f16efa9 vkd3d: Implement CreatePlacedResource1(). 2024-03-08 23:36:08 +01:00
Conor McCarthy
e5ae6bd3c2 vkd3d: Implement CreateCommittedResource2(). 2024-03-08 23:36:08 +01:00
Conor McCarthy
6edba86a26 vkd3d: Implement GetResourceAllocationInfo2(). 2024-03-08 23:36:08 +01:00
Conor McCarthy
2ed36efcb5 tests/d3d12: Add tests for GetCopyableFootprints1(). 2024-03-08 23:36:06 +01:00
Conor McCarthy
9987b519a2 tests/d3d12: Add tests for CreatePlacedResource1(). 2024-03-08 23:36:05 +01:00
Conor McCarthy
c09ae2c93f tests/d3d12: Add tests for CreateCommittedResource2(). 2024-03-08 23:36:04 +01:00
Conor McCarthy
81a4dbe52d tests/d3d12: Add tests for GetResourceAllocationInfo2(). 2024-03-08 23:36:02 +01:00
Conor McCarthy
13143700b7 tests/shader-runner: Add raw UAV tests. 2024-03-06 23:04:11 +01:00
Conor McCarthy
99947deeb7 tests/d3d12: Add a test for zero description count in test_resource_allocation_info(). 2024-02-15 23:29:32 +01:00
Conor McCarthy
4668271872 vkd3d: Return DXGI_ERROR_NOT_FOUND from GetProtectedResourceSession(). 2024-02-15 23:29:32 +01:00
Conor McCarthy
e38f3995fd tests/d3d12: Add tests for GetProtectedResourceSession(). 2024-02-15 23:29:30 +01:00
Conor McCarthy
eae4b7b4a2 vkd3d: Implement GetResourceAllocationInfo1(). 2024-02-01 22:25:13 +01:00
Conor McCarthy
67b4ae658a tests/d3d12: Add tests for GetResourceAllocationInfo1(). 2024-02-01 22:25:12 +01:00
Conor McCarthy
7e84421b9c vkd3d: Support multiple descriptions in GetResourceAllocationInfo(). 2024-02-01 22:25:11 +01:00
Conor McCarthy
8d0331df6c tests/d3d12: Test multiple descriptions in test_resource_allocation_info(). 2024-02-01 22:25:10 +01:00
Evan Tang
13ac795061 tests/shader-runner: Support testing for integer pixel data.
Modified by Conor McCarthy to use read_uint() and read_uint4().
2024-02-01 22:24:54 +01:00
Giovanni Mascellani
fd7d23f64b tests: Mark a strip cut test as buggy in MoltenVK.
Metal, and therefore MoltenVK, doesn't support disabling primitive
restart.
2024-01-25 22:25:05 +01:00
Giovanni Mascellani
c5469c85e8 tests: Mark a depth sampling test as buggy on MoltenVK.
MoltenVK seems to be unable to handle tight inequalities (i.e.,
0.5 <= 0.5) properly on 16 bit depth resources.
2024-01-25 22:25:03 +01:00
Giovanni Mascellani
b6c1e6dcdf tests: Mark the tessellation pipeline as buggy on MoltenVK. 2024-01-25 22:25:03 +01:00
Giovanni Mascellani
74a14dad28 tests: Mark geometry shaders as buggy on MoltenVK. 2024-01-25 22:25:03 +01:00
Giovanni Mascellani
586ebeafec tests: Mark ReadFromSubresource() and WriteToSubresource() as todo on MoltenVK. 2024-01-25 22:25:03 +01:00
Giovanni Mascellani
17f3f2914e tests: Mark a test related to instanced draws as buggy on MoltenVK.
I haven't been able to understand what's happening here exactly,
but it doesn't look like we're generating bad Vulkan calls.
2024-01-25 22:25:01 +01:00
Giovanni Mascellani
d304422a34 tests: Mark count buffers as buggy on MoltenVK.
They require Vulkan indirect draw count extension.
2024-01-24 22:38:28 +01:00
Giovanni Mascellani
5d4edba925 tests: Mark a timestamp query test as buggy on MoltenVK.
The generated Vulkan calls look right and do not trigger any
validation error, but the returned timestamp is 0. A valid
timestamp is returned if the CopyResource() call is commented,
or the second EndQuery() call is moved before CopyResource(),
or the first EndQuery() call is commented. I am not seeing any
sensible pattern here, so I guess there is just a bug in
MoltenVK.
2024-01-24 22:38:26 +01:00
Giovanni Mascellani
66cd2af188 tests: Mark clip distance as unsupported on MoltenVK.
At least for tessellation and geometry shaders.
2024-01-24 22:38:23 +01:00
Giovanni Mascellani
9a83e568b4 tests: Mark cull distance as buggy on MoltenVK.
The generated MSL code is not accepted by the Metal runtime, and
it looks wrong anyway.
2024-01-24 22:38:19 +01:00
Giovanni Mascellani
60e0246436 tests: Skip unbounded descriptor ranges tests when they're unsupported.
They are unsupported if the Vulkan descriptor indexing extension
is not available; on MoltenVK it is known to be buggy, so it is
disabled.
2024-01-24 22:38:18 +01:00
Giovanni Mascellani
711ce4e65d tests: Mark loading from stencil as buggy on MoltenVK.
Specifically, MoltenVK seems to be able to load from stencil, but
the specific replicating swizzle (repeating the stencil value on
all the channels) is not honored. The stencil value is read only
on the red channel.
2024-01-24 22:38:15 +01:00
Giovanni Mascellani
72e2eeaf14 tests: Add a test for SV_ViewportArrayIndex. 2024-01-22 22:19:16 +01:00
Giovanni Mascellani
bd84b96e9f tests: Use test utils to create the pipeline state in test_ps_layer(). 2024-01-22 22:19:16 +01:00
Giovanni Mascellani
245cce02bd tests: Test using SV_RenderTargetArrayIndex in the vertex shader. 2024-01-22 22:19:16 +01:00
Giovanni Mascellani
5ddf745d95 tests: Compile HLSL shaders at runtime in test_ps_layer(). 2024-01-22 22:19:15 +01:00
Conor McCarthy
ca7487a56d vkd3d-shader/spirv: Handle UINT32_MAX result from FIRSTBIT_HI and FIRSTBIT_SHI instructions. 2024-01-22 22:18:27 +01:00
Conor McCarthy
62e15dac8d tests/d3d12: Add a raw firstbit test to test_shader_instructions(). 2024-01-22 22:18:25 +01:00
Conor McCarthy
83851133c5 vkd3d-shader/ir: Set merged signature element interpolation mode only from used elements. 2024-01-18 23:15:27 +01:00
Conor McCarthy
759362b527 tests: Test an interpolated PS input where component x is unused.
FXC does not emit an interpolation mode for unused elements.
2024-01-18 23:15:26 +01:00
Conor McCarthy
4c30b23821 vkd3d-shader: Make the control point count the outer dimension of I/O arrays.
The relative-addressed case in shader_register_normalise_arrayed_addressing()
leaves the control point id in idx[0], while for constant register
indices it is placed in idx[1]. The latter case could be fixed instead,
but placing the control point count in the outer dimension is more
logical.
2024-01-17 22:28:59 +01:00
Conor McCarthy
b8561d6fd2 tests: Test punned array access in patch constant functions.
The FXC optimiser sometimes converts a local array of input values into
direct array addressing of the inputs, which can result in a
dcl_indexrange instruction spanning input elements with different masks.
2024-01-17 22:28:58 +01:00
Conor McCarthy
c5bc28b454 tests/d3d12: Test vector parameter for countbits() and firstbithigh() in test_shader_instructions(). 2024-01-15 19:56:36 +01:00
Giovanni Mascellani
90bcc6691d tests: Mark resource arrays as buggy on MoltenVK.
They require Vulkan descriptor indexing extension, which is
exposed by MoltenVK but known to be buggy, so we assume it is
disabled.
2024-01-08 21:44:58 +01:00
Giovanni Mascellani
a610ccaed9 tests: Mark predicated rendering as buggy on MoltenVK.
It requires Vulkan conditional rendering extension.
2024-01-08 21:44:56 +01:00
Giovanni Mascellani
54514ba7dd tests: Mark streaming output as buggy on MoltenVK.
It requires Vulkan transform feedback extension.
2024-01-08 21:44:55 +01:00
Giovanni Mascellani
1cc2ccaf98 tests: Mark some sampling tests as buggy on MoltenVK.
Apparently Metal doesn't support specifying a bias directly in the
sampler, and, with "nearest" mip filtering, it doesn't switch
precisely at LOD 0.5 (though still between 0.5 and 0.6).
2024-01-08 21:44:53 +01:00
Giovanni Mascellani
9c9b1fadbd tests: Use a uint target for rendering uint data.
This fixes a failure in MoltenVK.
2024-01-08 21:44:50 +01:00
Stefan Dösinger
b0d1fb0bd7 tests: Show that CreatePipelineState also doesn't reuse duplicate objects. 2023-12-07 21:57:45 +01:00
Stefan Dösinger
1eaf7fa37b tests: Show that compute pipeline state objects are not reused. 2023-12-07 21:57:45 +01:00
Stefan Dösinger
82a3209ee2 tests: Show that graphics pipeline state objects are not reused. 2023-12-07 21:57:45 +01:00
Stefan Dösinger
705cf10626 tests: Show that creating identical root signatures returns the same pointer. 2023-12-07 21:57:45 +01:00
Zebediah Figura
fcd6ec33bd tests: Avoid shadowing "l" in test_get_copyable_footprints().
Found with -Wshadow.
2023-12-07 21:57:18 +01:00