Commit Graph
166 Commits
Author SHA1 Message Date
Jake Turner be6cc2d324 Verify pixel history succeeds as part of D3D12_Execute_Indirect tests 2025-05-18 12:52:56 +01:00
Jake Turner fc956fee61 Improvements to *_Groupshared tests
More checking of GSM local/global cache behaviour when debugging
One test is not GPU stable and its results are verified against hard coded expectation (this is to test the expected behaviour of the local GSM cache on the active thread)
2025-05-10 11:49:43 +01:00
Jake Turner 033a4d1e5a First version of python for *_Groupshared tests
Verify outval shader debugger variable matches the real generated data in outBuf
2025-05-07 12:12:57 +01:00
Jake Turner fbb39b21a6 Extend D3D12 Shader Debug Zoo GSM tests
struct TestStruct
{
  uint3 a;
  uint3 b;
};

groupshared int gsmInt;
groupshared TestStruct gsmStruct[8];
groupshared int gsmIntArray[128];
2025-05-07 11:18:14 +01:00
Jake Turner 258ab5b6e3 Change test helper to just check for asserts (not errors)
Setting the Vulkan layer produces two errors
2025-04-22 14:31:43 +01:00
Jake Turner a8de121cd0 Check for Asserts & Errors when running D3D12_Shader_DebugData_Zoo tests 2025-04-22 13:09:04 +01:00
Jake Turner e14bc98e18 Added VK_Workgroup_Zoo, D3D12_Workgroup_Zoo tests
Tests specifically aimed at workgroup debugging i.e GSM and non-aligned subgroups
Not focused on unit tests of subgroup/quad instructions that is handled by *_Subgroup_Zoo
2025-04-18 13:58:09 +01:00
baldurk f837af3066 Make sure functional test sections always match begin/end 2025-04-18 12:54:53 +01:00
Jake Turner f50c85173b Unified Subgroup_Zoo VK and D3D12 python
Improved test failure reporting
2025-04-02 08:43:30 +01:00
Jake Turner fa9bc127b1 Add early return test case to D3D12_Shader_DebugData
Change python to search backwards through the instruction info to find the value for a source variable
2025-04-02 08:39:49 +01:00
Jake Turner e444aff7cf Extend D3D12_Shader_Debug_Zoo tests
New pixel shader for testing which does not contain resource references
Added new tests for ddx, ddy and discard
2025-03-20 13:52:20 +00:00
Jake Turner 025a6bbf86 Extend D3D12_Resource_Mapping_Zoo test to SM6 & SM6.6
To test the DXIL debugger and added a test of dynamic SRV array index
2025-03-20 13:52:20 +00:00
Jake Turner dae198b39e Extend D3D12_Draw_Zoo to SM6 & SM6.6
To test the DXIL debugger
2025-03-20 13:52:19 +00:00
Jake Turner ac2da339ae Extend D3D12_Bufer_Truncation test to SM6.0 & SM6.6
To test the DXIL debugger
2025-03-20 13:52:19 +00:00
Jake Turner 9163aa76c2 Add SM6.6 tests to D3D12_CBuffer_Zoo 2025-03-20 13:52:19 +00:00
Jake Turner b27f5d5872 Extend D3D12_PrimitiveID test to SM6
To test the DXIL debugger
2025-03-20 13:52:18 +00:00
Jake Turner 506d1a1222 Minor tidyup of D3D12_Mesh_Shader python 2025-03-20 13:52:18 +00:00
Jake Turner 7eef20b3db Added demos test VK_Mesh_Shader
Similar on d3d12_mesh_shader test, move some helper code from d3d12_mesh_shader python to testcase.py to allow for sharing with vk_mesh_shader python
2025-03-20 13:52:17 +00:00
baldurk 9bdb5bc134 Add D3D12_Subgroup_Zoo test 2025-03-19 18:31:56 +00:00
baldurk b400d4bc52 Refactor D3D ps input fetch to use quad swizzle helper
* Also centralises and shares more code between D3D11 and D3D12 to use the same
  shader
2025-03-14 18:54:38 +00:00
Jake Turner 90827deed3 Add DebugPixel to D3D12_Mesh_Shader python tests
Validates can do shader debugging on pixels generated by mesh shaders
2025-03-12 13:50:36 +00:00
Jake Turner 7b3e1cd3f6 Free the debugger trace in multiple places during D3D12 shader tests 2025-03-09 11:30:11 +00:00
Jake Turner 9cac526d49 Add d3d12_shader_debugdata_zoo test
Similar to d3d12_shader_debug_zoo but instead of verifying debugger simulation accuracy used to verify debug data is parsed and present

Supports SM6.0 and the DXIL debugger - verifies debug data in pixel and compute shaders
2025-03-06 13:34:57 +00:00
Jake Turner 5120723135 Add Shader source variable helper functions to rdtest
parse_shader_var_type()
get_source_shader_var_value()

moved out from D3D12_Shader_Debug_Zoo
2025-03-06 13:34:50 +00:00
Jake Turner aaefec8b79 D3D12_Shader_Debug_Zoo tests for loading from global variables
Includes updating the python test to validate the results from compute shader debugging
2025-03-06 10:55:37 +00:00
baldurk e7f400e4f3 Add D3D12 handling of swizzled UAV loads/stores 2025-02-21 13:46:58 +00:00
baldurk cfefa5d5ef Add a test for new group ops 2025-02-10 17:52:31 +00:00
baldurk c8223f5869 Fix D3D12 descriptor indexing test for named descriptors 2025-01-14 12:18:31 +00:00
baldurk 980b6a8bf0 Add test of SM6.7 bitfield reflection 2025-01-07 13:43:45 +00:00
baldurk a11d673b3f Update test for descriptor names 2024-12-16 11:59:03 +00:00
Jake Turner 4532b888ed Add SM 6.2 and StructuredBuffer<int16_t> to D3D12 Shader Debug Zoo test 2024-12-03 05:21:41 +00:00
Jake Turner a39c4cf1db D3D12 Pixel History do not copy depth for non-raster events
This can be invalid i.e. a ClearRenderTarget() no guarantee what/if a depth target is bound
2024-11-27 11:24:45 +00:00
baldurk b49e2e607f Add test of very short-lived RTV/DSV heaps 2024-10-03 16:32:09 +01:00
Jake Turner 982f464eee Do not call end_section when a shader debug pixel comparison test fails 2024-09-20 17:44:25 +01:00
Jake Turner 42a1b4e641 For Test D3D12_Sharing validate the D3D12 Drawcall results
In addition to the Copy results
2024-09-18 12:45:55 +01:00
Jake Turner 0f8ad0d1fe Conditionally test SM 6.0, 6.6 in D3D12_Shader_Debug_Zoo
Added SM 5.0 to the basic compute shader debug test
2024-09-16 09:36:37 +01:00
Jake Turner 8745c399ad Extended existing shader model coverage to include 6.0, and 6.6
Added Compute shader test for SM 6.0 and SM 6.6
Added very basic vertex shader test to the triangle rendering for each SM
2024-09-10 14:59:03 +01:00
Jake Turner 84786aea20 Demos test D3D12_Shader_Mesh 2024-07-24 13:21:57 +01:00
baldurk 7db141c77b Implement bindless feedback for samplers on D3D12. Closes #3387 2024-07-22 16:17:10 +01:00
baldurk 9a18e871e5 Add testing of aliased bindings with descriptor feedback. Refs #3288 2024-04-10 18:58:53 +01:00
baldurk 9de4a79859 Update tests to new descriptor interface 2024-04-10 18:58:52 +01:00
baldurk 4caf3e4e13 Correct struct name typo in python script 2024-03-18 10:28:37 +00:00
Jake Turner 7934d1d16e Change DebugPixel() to take a DebugShaderInputs struct
DebugShaderInputs struct contains existing the parameters:

sample
primitive

and a new parameter

view

Default constructor for DebugShaderInputs sets the parameters to NoPreference (~0U).
2024-03-13 07:58:48 +00:00
Jake Turner 20578f46a6 Extend D3D12 ExecuteIndirect test to do multiple draws per Execute
The argument buffers are used fully used with no spare bytes
The python test iterates over every draw to check the replay has a valid output target count
This verifies the replay did not crash when replaying ExecuteIndirect with multiple draws and an argument buffer with no spare bytes
2024-01-30 17:03:11 +00:00
baldurk 49c96806b6 Add test of solo numbered semantics to linkage zoo tests 2024-01-23 11:11:14 +00:00
Jake Turner e18ea02a2b D3D12 Pixel History Test add some drawcall stress tests
1000 drawcalls of 1 instance of 1 triangle
1 drawcall of 1000 instances of 1 triangle

Python tests verify the count of modifications is correct, the modifications are self-consistent and the picked texture value matches the final modifications tex after value
2024-01-22 09:39:22 +00:00
Jake Turner edbcbe53e2 D3D12 Pixel History Simple D16 test 2024-01-09 12:44:14 +00:00
Jake Turner 9dad897802 Enable D3D12 Pixel History Depth Bounds test
Replay code was fixed in 3d5ce05e11
2024-01-02 14:05:00 +00:00
Jake Turner 04856b53c1 Enable D3D12 Pixel History MSAA test
Replay code was fixed in 7e8c22ce68
2024-01-02 14:05:00 +00:00
Jake Turner a70bed751b Extend D3D12 Pixel History tests
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event

Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
This test validates the code change in 4815adaa83
2023-12-31 08:41:23 +00:00