Commit Graph

1320 Commits

Author SHA1 Message Date
baldurk 856c838def Update copyright years to 2026 and fix copyright ranges
* In a previous update in 2021 many copyright ranges were truncated
  accidentally, and some files have been copy-pasted with wrong years. These
  dates have been fixed based on git history and original copyright messages.
2026-01-05 14:17:28 +00:00
Jake Turner 1b5543e74f Fix D3D12 Compute Derivative Tests
Use groupId for the output buffer index to match the python
Only output results for workgroup 1,0,0

Do not reset test failing to false in check_compute_derivative_tests()
2025-12-22 09:03:33 +13:00
Jake Turner 3767d5da0c Added D3D11, D3D12 shader debug tests for CalculateLevelOfDetail* 2025-12-14 08:11:14 +13:00
Jake Turner 1b56d385fe D3D12 Test cases for SM6.6 Derivatives in Compute Shaders
HLSL
ddx()
ddx_coarse()
ddy()
ddy_coarse()
ddx_fine()
ddy_fine()

CalculateLevelOfDetail()
CalculateLevelOfDetailUnclamped()
Sample()
SampleBias()
SampleCmp()
2025-12-12 12:02:16 +13:00
Jake Turner e2ca32a348 D3D12_Subgroup_Zoo tests for Quad Ops in Compute Shader
QuadReadLaneAt
QuadReadAcrossDiagonal
QuadReadAcrossX
QuadReadAcrossY
QuadAny
QuadAll
2025-12-11 15:39:19 +13:00
Jake Turner abbe6d128a D3D12 EI test for setting a single 32-bit root constant 2025-12-03 11:20:19 +13:00
Vladislav Korytsko 8530da8274 Fix dataSize calculation in WriteToSubresource
Corrects width, height, and depth calculation in WriteToSubresource for the specified subresource when storing provided source data blob. Using base resource dimensions could have led to source-data read access violation.
Also updates corresponding test to validate subresource modification.
2025-12-03 05:56:55 +09:00
baldurk 09a0c34979 Add manual implicit bias path for Android 2025-12-02 12:37:19 +00:00
baldurk e85651545f Add test of GL shader debugging 2025-12-02 12:17:36 +00:00
Jake Turner 34ce4035d0 VK_Subgroup_Zoo tests for Quad Ops in Compute Shader
subgroupQuadBroadcast
subgroupQuadSwapDiagonal
subgroupQuadSwapHorizontal
subgroupQuadSwapVertical
subgroupQuadAny
subgroupQuadAll
2025-11-27 12:42:21 +13:00
Jake Turner 97755b5ebb Test cases for VK_KHR_compute_shader_derivatives
dFdx, dFdy, dFdxFine, dFdyFine, dFdxCoarse, dFdyCoarse

OpImageQueryLod (textureQueryLod)
OpImageSampleProjImplicitLod (textureProj)
OpImageSampleImplicitLod (texture)
OpImageSampleDrefImplicitLod (textureProj)
2025-11-26 11:40:22 +13:00
Jake Turner f5e63aa838 VK Shader Debug Test for function modifying inputs 2025-11-25 16:20:38 +13:00
Jake Turner 2f057a78d4 VK Shader Debug Zoo test for OpImageSampleProjDrefExplicitLod 2025-11-24 15:27:20 +13:00
Jake Turner 792afc2190 Tweaked test success message for new D3D12 EI test 2025-11-22 12:52:22 +13:00
Jake Turner a9056f1eca Add a D3D12 EI test case for an EI which does not need a root signature
EI with:

D3D12_VERTEX_BUFFER_VIEW
D3D12_DRAW_ARGUMENTS
2025-11-20 15:41:32 +13:00
Jake Turner 67fc8618a7 Move the recent D3D12_Shader_Debug_Zoo tests to the noResources shader 2025-11-19 10:44:18 +13:00
Jake Turner ae927151c6 Tweak to compute the vk_workgroup_group pipename from GROUP_SIZE_XYZ 2025-11-19 10:44:18 +13:00
baldurk ccbe3c8cce Propagate up failure through expand sections in test results 2025-11-18 17:59:12 +00:00
Jake Turner 0d695da164 Set the d3d12path for d3d12 tests before caching the d3d12 capabilities 2025-11-18 11:40:04 +13:00
Jake Turner a9c2f082bc Moved new DXIL shader debug zoo tests from CS to PS
Guarded use of double by testing against D3D runtime : DoublePrecisionFloatShaderOps
2025-11-18 09:48:07 +13:00
Jake Turner 4ec8e969bc Extra DXIL shader debug zoo tests
float64, float32, float16 Tests for:

min
max
abs
fmad
frac
dot2/3/4
saturate

sint64, sint32, sint16, uint64, uint32, uint16, Tests for:

min
max
mulitply
division (UDiv)
imad
dot2/3/4
2025-11-17 15:52:27 +13:00
Jake Turner c864e87fbb Reorder the D3D12 DebugData Zoo shader work around bad DXC debug data
Put the early return case as the first case in the switch statement
2025-11-17 07:13:34 +13:00
Jake Turner dbbd9ba010 Added MSAA tests for SM6.0 and SM6.
Disabled in the python because the RenderDoc does not currently support DXIL debugging of MSAA instructions or SV_Barycentrics
2025-11-17 05:47:55 +13:00
Jake Turner ccbb516610 Simplify DXIL Disassembler/Debugger SSA ID name strings and aliases
Store SSA ID name strings in a container which is shared between the disassembler and the debugger.
The SSA ID name strings are guaranteed to be unique by appending the SSA ID value.

Do not use resource names for SSA ID names, only show resource names when a DXIL handle is created i.e. DXOp::CreateHandle, DXOp::CreateHandleFromBinding & DXOp::CreateHandleFromHeap

This means the debugger now has a unique name for each ShaderVariable generated.

Revert the ShaderViewer consistency changes which were only required because the DXIL debugger did not generate unique names for ShaderVariables.
2025-11-13 13:10:44 +13:00
Jake Turner 0194951bca Fix D3D12_Resource_Mapping_Zoo false failure if no SM6.6 action to test
Apply the same fix for no SM6.0 action to test
2025-11-12 17:42:03 +13:00
Jake Turner a9edce59ea New D3D11/D3D12 shader linkage tests for float3 packing/not packing
Packing float with a float3

float TEXCOORD0
int   TEXCOORD1
float3 COLOR

Packing float with a float3[1]

float TEXCOORD0
int   TEXCOORD1
float3[1] COLOR

Not packing float with a float3[2]

float TEXCOORD0
int   TEXCOORD1
float3[2] COLOR
2025-11-12 11:42:19 +13:00
Jake Turner f858b2320f Extend D3D12_Shader_DebugData_Zoo tests to include matrix
Check matrix in the outputs from Vertex Shader
Check matrix in the inputs to Pixel Shader
Check matrix debug data source values from debugger trace
2025-11-12 11:10:32 +13:00
Jake Turner 9598abb266 D3D12 Shader Debug Zoo simple test for matrix output/input 2025-11-12 10:57:13 +13:00
Jake Turner 4d180eecfa Tweak D3D12_Resource_Mapping_Zoo test to mark as failed in all cases 2025-11-12 10:57:13 +13:00
Jake Turner c534b41eb6 Tune the ShaderVariable consistency checks for resources
Do not check before/after equals existing value for ReadOnlyResource and ReadWriteResource
In the DXIL debugger for resources the same SSA ID might have different names
2025-11-11 10:53:15 +13:00
baldurk eee1268a9f Fix handling of test failure cases in test results page 2025-11-10 16:43:05 +00:00
baldurk 23748c0089 Fix validation issues with D3D12 test 2025-11-10 16:43:05 +00:00
baldurk ea368a631e Allow GPU upload heaps to be enabled in D3D12. Closes #3724
* We attempt to enable the experimental feature since this allows the use of the
  feature on a much wider set of OS versions, at the time of this commit support
  seems quite rare/narrow.
2025-11-10 16:43:05 +00:00
baldurk 7cf68de074 Update D3D12 headers to 1.618.2
* This includes some support for the new serialised-root signature
  representation for precompilation which also affects runtime.
  GetRootSignature*() functions in pipeline state and state object are not
  implemented as it's unclear if they are supported.
* The interfaces for the precompilation are *not* supported as there is no need.
2025-11-10 16:43:05 +00:00
baldurk 3d23916b6a Update sign script to return failure/success properly in helper 2025-11-04 11:05:03 +00:00
baldurk b3264d4a4e Add a summary table showing the durations of tests (slowest first) 2025-10-31 11:29:26 +00:00
baldurk 3a623d015d Sort failed tests to the end of the test result list 2025-10-31 11:29:26 +00:00
baldurk cca9defbb5 Initialise AS variables in descriptor buffer test 2025-10-29 12:14:53 +00:00
Jake Turner 14a4b283b3 Quick double/float/half mad intrinsic tests for D3D12
half will only be 16-bit for the SM6.6 tests
2025-10-28 17:03:26 +00:00
Jake Turner 8d57a00a64 Fixup D3D12_Resource_Mapping_Zoo Sampler array tests
Add valid samplers instead of sampling using a NULL sampler
2025-10-27 13:57:23 +00:00
baldurk 48088ac07e Add handling of D3D shaders which declare no output value 2025-10-27 11:50:36 +00:00
baldurk 1a5177453c Move GL test to use common pixel history test framework 2025-10-27 11:50:36 +00:00
baldurk fbab189b06 Move D3D11 test to use common pixel history test framework 2025-10-27 11:50:35 +00:00
baldurk a6ad1313fd Move D3D12 test to use common pixel history test framework 2025-10-27 11:50:35 +00:00
baldurk d8fa6a1747 Revamp vulkan pixel history test to cover more cases
* The test is also written generically to be applied to other APIs uniformly
2025-10-27 11:50:35 +00:00
baldurk 1c970a7868 Add global helper for naming D3D12 objects with normal strings 2025-10-27 11:50:17 +00:00
baldurk 1521278fd5 Only avoid duplicate failures when exceptions are raised 2025-10-27 11:45:35 +00:00
baldurk 929548f478 Add dummy reads to pipes for linux for some reason 2025-10-27 11:45:35 +00:00
Jake Turner a4d407ec3a Enable D3D11, D3D12 groupshared, subgroup, workgroup tests
D3D11_Groupshared, D3D12_Groupshared
D3D12_Subgroup_Zoo
D3D11_Workgroup_Zoo D3D12_Workgroup_Zoo
2025-10-25 11:01:13 +01:00
Jake Turner 58ec8fd9d3 Simple test cases of arrays of Samplers for the DXIL debugger 2025-10-24 07:49:44 +01:00