Jake Turner
25e0612a50
Improve SSA variable name and accessed resource name for resource arrays
...
For a dynamic index resolve the name to the actual array index i.e. res2[1] instead of res2[_70 - 7]
2025-03-20 13:52:21 +00:00
Jake Turner
03b5c94144
Improve DXIL disassembly for accessing resource arrays
...
Subtract the base register away from the register to show the correct array index
2025-03-20 13:52:20 +00: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
2dbaf739d7
Extend D3D12_Shader_Linkage_Zoo test to SM6
...
To test the DXIL debugger
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
1ab434d983
Work around NV driver bug miscompiling quadSwizzleHelper() in some cases
2025-03-19 18:31:56 +00:00
baldurk
20eda2c3a2
Fix mapping calculation for array-of-structs variables
2025-03-19 18:31:56 +00:00
baldurk
b565693e15
Pass subgroup size and index through to DXIL instruction execute
2025-03-19 18:31:56 +00:00
baldurk
9bdb5bc134
Add D3D12_Subgroup_Zoo test
2025-03-19 18:31:56 +00:00
baldurk
083af09397
Expand input fetching to VS & CS when subgroup info is needed
2025-03-19 18:31:55 +00:00
baldurk
54810cc8a5
Fix thread calculation for subgroup&workgroup scope in shader debug
2025-03-19 18:31:55 +00:00
baldurk
dbb58a1179
Extract PS input fetching code into common helpers to be re-used
2025-03-19 18:31:55 +00:00
baldurk
6b0604f735
Refactor how builtins are gathered & provided for DXIL debugging
...
* Buitins can either be thread-varying or global, we pick the narrowest type to
use
2025-03-19 18:31:55 +00:00
baldurk
5914b0641d
Expand D3D input fetchers to support VS&CS and support subgroup fetch
2025-03-19 18:31:55 +00:00
baldurk
59fbd3d820
Reflect explicit wave size out of compute shaders if present in DXIL
2025-03-19 18:31:55 +00:00
baldurk
a20214452f
Prepare DXIL debugger for larger workgroup sizes
2025-03-19 18:31:55 +00:00
Tristan Ritchie
2eade4650b
Add support for VK_KHR_maintenance5
2025-03-19 15:43:08 +00:00
Remi Palandri
2b01465c79
keep driver's pipelineCacheUUID valid and use it for replay
2025-03-17 10:12:51 +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
baldurk
58cace21fb
Add hlsl helper for reading other lanes via derivative swizzling
2025-03-14 18:54:38 +00:00
baldurk
2322e165de
Update copyright years to 2025
2025-03-14 18:54:37 +00:00
Jasmine Hansen
ffc985a957
Fix render overlay dynamic state for VK_EXT_shader_object
...
Mirrors the pipeline modifications with dynamic state for Highlight Draw, Depth, Stencil, Backface Cull, and Viewport Scissor
2025-03-13 21:08:32 +00:00
baldurk
add78f9904
Print more useful errors in the event of mesh output failures
...
* These may not be caused by application errors, but in the event that they are
this may be more actionable by the user - even though it's invalid API use.
2025-03-13 19:26:40 +00:00
baldurk
9b6f1a5b59
Try to generate reasonable reflection from PDB info
...
* On FXC if the user strips reflection info and uses a separate PDB, that PDB
does not contain reflection information. Try to re-generate what we can from
the PDB debug info, which is not perfect but
2025-03-13 16:45:53 +00:00
baldurk
7171eea3f9
Move scalar-offset calculating helper into common DXBC code
2025-03-13 16:17:31 +00:00
baldurk
2f6d881b8e
Only do groupshared unrolling for groupshared declarations
...
* FXC sometimes seems to emit mappings for static variables which are
nonsense/can't be used, and are also redundant against the actual information
available elsewhere. Ignore these as we could potentially expand a huge number
of mappings that are worthless.
2025-03-13 16:17:00 +00:00
baldurk
3dac15bd9d
Disable GPU Reshape
2025-03-13 14:00:09 +00:00
baldurk
9bc6174f62
Disable reshade
2025-03-13 13:59:12 +00:00
Jake Turner
e4b4cb02fc
D3D12 Pixel shader debug support for Mesh shader generated primitives
2025-03-12 13:50:36 +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
9dffc2f6c6
Do not force rebuild DXIL reflection data when starting the debugger
...
Closes #3554
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
e5d09bb0f7
Improve fetching UAV texture data in the D3D12 shader debuggers
...
Use the resource format if the UAV format is unknown format (typeless)
2025-03-07 12:54:34 +00:00
Jake Turner
87b7f5de72
D3D12 Shader Debugger test for unknown format UAV with a typed Texture2D
...
Valid for UAV to have unknown format if the underlying resource has a typed format
2025-03-07 12:39:06 +00:00
Jake Turner
ff25ea31f6
Handle getting post VS inputs when attribute offset larger than stride
...
i.e. storing de-interleaved data in a Vertex Buffer
2025-03-07 10:53:35 +00:00
baldurk
c78f827c9e
Improve quad swizzle helper to handle all possible swaps
...
* The old method with coarse+fine derivatives didn't return us thread 3's data
into thread 0 (or vice versa) across the diagonal, which we needed in some
cases.
* Porting the quad overdraw message passing works better.
2025-03-06 19:20:41 +00:00
baldurk
86e8909b1e
Display colour swatch when showing cbuffer values as RGB. Closes #3533
2025-03-06 16:07:49 +00:00
baldurk
959d330488
Treat RGB display of float values as in linear space always. Refs #3533
2025-03-06 16:07:49 +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
c67c8fcfd9
Improve DXIL debug data handling for DIDerivedType's
...
Add cases for:
DW_TAG_restrict_type
DW_TAG_reference_type
Parse the base type for any non-null base types of unhandled DIDerivedType's
2025-03-06 11:36:12 +00:00
Jake Turner
0028c6535c
DXIL debugging sets initial data for non-const global variables
2025-03-06 10:55:37 +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
Jake Turner
ab3e46d26d
Fix DXIL Load of a single element from a global array Closes #3549
2025-03-06 10:54:01 +00:00