Commit Graph

16358 Commits

Author SHA1 Message Date
Jake Turner f1344c5485 Fix DXIL Debugger support for structs in the output structure
i.e. matrices

Fixed incorrect asserts in StoreOutput
Fixed source variable mapping
2025-10-25 08:35:20 +01:00
Jake Turner d1054b8fa2 DXIL Debugger improve handling of arrays of Samplers
Previously would only work in very simple scenarios where the array of Samplers was accessed once
2025-10-24 07:50:42 +01:00
Jake Turner 58ec8fd9d3 Simple test cases of arrays of Samplers for the DXIL debugger 2025-10-24 07:49:44 +01:00
Jake Turner 8a8aaf269a Fix DXIL global samplers resize() which should have been reserve() 2025-10-24 06:51:29 +01:00
Jake Turner 8aa42d0348 Set the correct number of elements in LaneBuffer 2025-10-23 09:48:19 +01:00
Jake Turner c756cbeced Move DXBC debugger comment to the correct place 2025-10-23 09:15:42 +01:00
Jake Turner 1c10c0654a Make DXIL GlobalVar names unique in the debugger and disassmbly 2025-10-23 09:15:42 +01:00
Jake Turner 9c31e0131e Fix validate_trace() being called from generate_full_trace() 2025-10-23 09:15:42 +01:00
baldurk 6fe5e8d765 Use serialised desc struct for serialised RT emit info call 2025-10-22 18:24:04 +01:00
baldurk 7b00e42310 Handle NULL arrays being bound on D3D11 2025-10-21 23:31:22 +01:00
baldurk 2f6bb02347 Fix some sizing issues with CS labels in D3D11 pipeline state view 2025-10-21 23:31:22 +01:00
baldurk 5fd9cd67a5 Ensure D3D12 descriptors are properly initialised for pipeline state 2025-10-21 23:31:22 +01:00
baldurk f42dbdcdd6 Don't force API validation in development builds on D3D11/GL 2025-10-21 23:31:22 +01:00
baldurk 466a11100c Add new checks for vkconfig, and detect after startup
* We check every couple of seconds for the vkconfig file (and then stop checking
  after warning) so that users are more likely to see the warning.
2025-10-21 23:31:22 +01:00
baldurk 4db8616ec4 Fix double click on FBO entry in GL pipeline state not opening texture 2025-10-21 23:31:22 +01:00
baldurk 12bb4eaf23 Add support for signing using google cloud KMS
* This is basically required for the stupid, expensive, and insecure new code
  signing key requirements
2025-10-21 23:31:22 +01:00
baldurk 182af54086 Set format in fake descriptors for GL pipeline state FBO attachments 2025-10-21 16:46:50 +01:00
baldurk cb053efe77 Fix duplicate failure reporting in auto sections 2025-10-21 16:46:47 +01:00
baldurk 70c303d1ab Bump shader cache version for modified include files 2025-10-15 12:32:44 +01:00
baldurk 5d824d9d3e Treat template types as trivial copies in debug info 2025-10-15 12:32:44 +01:00
baldurk dd40f0103e Insert dummy debug types for functions in case of member functions 2025-10-15 12:32:44 +01:00
baldurk 81a367be66 Add naming helper for image views 2025-10-15 12:32:44 +01:00
baldurk 48b19e8ba4 Add an immediate error check if SPIR-V compiler fails in tests 2025-10-15 12:32:44 +01:00
baldurk 9192882273 Silence validation warning about non-coherent map invalidates 2025-10-15 12:32:44 +01:00
baldurk ba578ed15f Handle maintenance9 handling of 3D barriers to internal transitions 2025-10-15 12:32:44 +01:00
baldurk 9571252d0c Fix wrong view range used for 2D-view-of-3D in renderpass discards 2025-10-15 12:32:43 +01:00
baldurk d0bf4546b8 Ignore validation message about dedicated sizing that we must ignore 2025-10-15 12:32:43 +01:00
Steven Li bee232f40c Fix the read back for remapped depth texture 2025-10-15 00:46:58 +09:00
Jake Turner 196ca9bae2 Run validate_trace() as part of generate_full_trace()
Ensure the trace is valid before running comparisons on it
2025-10-10 12:58:32 +01:00
Jake Turner 5f4614812c Spirv Atomic operations load GSM from global backing memory 2025-10-10 12:46:00 +01:00
Jake Turner 2fda1f79eb Extend VK Groupshared GSM atomic tests to match D3D12 Groupshared 2025-10-10 12:40:44 +01:00
Jake Turner 4f8954ca1a Extend D3D12 Groupshared GSM atomic tests of groupshared int 2025-10-10 12:40:40 +01:00
baldurk d4c38ac2fb Fix crash reading out of bounds on marker string 2025-10-10 11:48:25 +01:00
baldurk f64a6f3d31 Handle undef or NULL constant pointers without crashing 2025-10-09 14:47:28 +01:00
baldurk 824c8c1345 Don't match builtin inputs to vertex input attributes 2025-10-09 12:31:58 +01:00
baldurk 9e0d6f18d6 Display a message when we can't debug a pixel shader and show a history 2025-10-08 22:34:53 +01:00
Jake Turner 03b06b7e3c Update mac CI to use macos-14 runner 2025-10-08 16:10:31 +01:00
Jake Turner cfc467bbc4 Increase SRGB <-> Linear test tolerance to 6ULP
MacOS14 LLVM version needed this increase
2025-10-08 16:10:21 +01:00
Jake Turner c69d482f66 Remove race from D3D12 Shader Debug Zoo Interlocked tests 2025-10-08 16:08:43 +01:00
baldurk a2ce9b46db Add some array-based tests to shader linkage zoo demos 2025-10-08 14:22:45 +01:00
Aliya Pazylbekova 56ee544a28 Special treatment of UNDEFINED layout for external images
- Preserve the initial contents of UNDEFINED images if they are
external
- Don't consider a pipeline barrier from UNDEFINED a resource
discard for external images

Change-Id: Ife30e7c542a66668d681d492363a25745238119e
2025-10-08 21:11:12 +09:00
Jake Turner 49e764e2c1 D3D12_Shader_Debug_Zoo test overlapped GPU math and sampling operations
Also unified the indentation to spaces in the shader source
2025-10-08 09:48:14 +01:00
Jake Turner 15b510f131 Fix incorrect assert about DXIL result SSA tracking
Assert was changed in 0809a6dd3f when ssaMaxExecPoints was made into an rdcarray
2025-10-07 16:43:12 +01:00
Jake Turner 30b45f0cff Use ShaderDebugData enum when creating Vk Shader Debug Readback Buffer
ShaderDebugData::MAX_QUEUED_OPS instead of hard coded 128
2025-10-06 16:20:55 +01:00
baldurk 2485eefc80 viewportCount can't be assumed to be the number of scissors
* Although normally viewportCount == scissorCount, if viewport is
  DYNAMIC_WITH_COUNT and scissor is only dynamic (or fixed) the number of
  scissors must be used strictly.
2025-10-06 14:21:10 +01:00
baldurk a4ae1e881a Handle descriptor state being invalid/inaccessible for non-draw actions 2025-10-06 13:17:29 +01:00
Jake Turner 48fd758960 Set the correct values for the return of Operation::CompareExchange
Returns a struct: { Original Value,  1 (equal) / 0 (not equal)
2025-10-05 07:50:05 +01:00
Jake Turner 0e6fc382d7 Add Interlocked* tests to D3D12_Groupshared 2025-10-05 07:50:05 +01:00
Jake Turner 823ae93845 Support for Operation::ExtractVal on a struct 2025-10-05 06:49:54 +01:00
Jake Turner c1ba2694f7 Remove m_State from Spirv Debugger
Replaced with bool hasDebugState
2025-10-04 12:23:10 +01:00