Commit Graph

16029 Commits

Author SHA1 Message Date
Jake Turner d3a140d484 DXIL Debug data handling for inherited struct/class 2025-07-21 18:23:37 +01:00
Jake Turner 4ac2861e2b DXIL Shader Debug Data test for struct inheritance
struct TestGrand
{
  int3 i3;
  int2 i2;
};

struct TestParent : TestGrand
{
  int4 i4;
};

struct TestChild : TestParent
{
  int i;
};
2025-07-21 18:23:37 +01:00
Jake Turner a120fc0871 Add DXIL callstack generation handling for DIBase::Namespace 2025-07-21 14:43:46 +01:00
Jake Turner fa1a7b35cd Defensive coding for handling unpexecteded DXIL debug data 2025-07-21 14:43:20 +01:00
Jake Turner 08696443a0 Added workgroup performance tests and basic D3D11 Workgroup test
Added D3D11_Workgroup_Zoo, D3D12 Workgroup Zoo, Vk Workgroup Zoo performance tests

Performance tests primarily for performance testing workgroup debugging speed

Changed workgroup and subgroup result variable from "data" -> "testResult" to help to reduce conflicts
2025-07-21 09:16:56 +01:00
Andrew Marshall c612fdeb29 remove superfluous changed for macos build 2025-07-18 16:20:56 +01:00
Andrew Marshall b7612d8c9c cmake fixes for MacOS SDK 15.5 build (AppleClang 17) 2025-07-18 16:20:56 +01:00
baldurk 01115b3126 Detect cases where vectors are misaligned only in arrays. Closes #3644
* Scalar layout is required for vectors to straddle 16-byte boundaries but this
  may not be detected if they are naturally aligned within an otherwise mis-
  aligned struct.
2025-07-15 11:28:15 +01:00
baldurk 44e2fbfa2c Fix errors in pedantic C mode. Closes #3645 2025-07-14 11:22:14 +01:00
Jake Turner 2dcecf689b Set ThreadName for JobSystem worker threads to "JobWorker XX" 2025-07-13 09:26:33 +01:00
baldurk 98c2e94385 Switch to python script for CI VS install that might magically work
* Also for diagnostic purposes, print whether the installer succeeded
2025-07-11 11:06:12 +01:00
baldurk 279379c3be Fix potential trample in trie re-using leaf 2025-07-10 17:52:30 +01:00
baldurk 095556663d Try to improve linux pretty printers as much as possible
* These are not as good as natvis but better than nothing... maybe
2025-07-10 17:52:27 +01:00
baldurk b5d3cf07a3 Expand test to include array-indexing ASs as well as NULL AS 2025-07-10 17:52:23 +01:00
baldurk 378474d79c Disable bounds testing on inline UBO in descriptor
* Inline UBOs do not have bounds checking/robust access
2025-07-10 17:52:23 +01:00
baldurk d04306bb92 Check for/require sample rate shading for depth MSAA copy shader 2025-07-10 17:52:23 +01:00
baldurk 62c2747169 Give each AS build its own scratch space in demo 2025-07-10 17:52:23 +01:00
baldurk 6c5b6177dc Query for supported mutable descriptor types in demo 2025-07-10 17:52:23 +01:00
Jake Turner 5f2d07f921 Initialise output window semaphore to VK_NULL_HANDLE
In case CreateSemaphore() fails and the semaphore is not valid which could lead to a problem/crash in DestroySemaphore
2025-07-10 07:52:38 +01:00
Jake Turner eede382884 Vulkan Shader Feedback clamp BDA offset to maximum byte offset
This will include any byte offset the feedback slot has

For non-BDA clamp the ssboindex to the maximum array index
2025-07-09 14:35:48 +01:00
baldurk 3e70a37fac Add test of descriptor buffer 2025-07-09 09:57:56 +01:00
baldurk ff711346f3 Treat read-only DSVs as depth writes disabled for overlays on D3D 2025-07-08 13:37:48 +01:00
baldurk 82e963550a Display read-only DSVs more clearly in D3D pipeline state 2025-07-08 13:37:37 +01:00
baldurk 4f0356d7f4 Don't use sleep for test compilation at all, rely on pclose to wait 2025-07-08 12:22:36 +01:00
Jake Turner e4e1e27814 Use const reference array for GetThreadRefs()
Small optimisation
2025-07-07 10:24:04 +01:00
Jake Turner c00de7e15e Expose ControlFlow::Tangle::GetId() 2025-07-07 10:24:03 +01:00
Andrew Marshall 951e678de1 disable mismatched new-delete warning from GCC 11.1 (false positives) 2025-07-04 17:56:53 +01:00
baldurk 0293487eb8 Properly handle D3D11 constant buffers with a 0 range specified 2025-07-04 14:10:51 +01:00
baldurk 4ec453bd76 Use annoying encoded markers when DRED is enabled
* By design DRED does not interpret normal markers :(
2025-07-04 11:08:24 +01:00
baldurk f94a479939 Fix a potential crash while closing a capture 2025-07-04 10:16:53 +01:00
Jake Turner 1391136509 Fix DXBC Debugger OPCODE_SYNC GSM incorrect bounds for large arrays
Number of components is gsmStride/sizeof(uint32_t)
2025-07-03 12:25:55 +01:00
Jake Turner a81380d800 Extend D3D12_Shader_Debug_Zoo GSM test
Include a large groupshared variable (2D Array)
Call GroupMemoryBarrierWithGroupSync()

groupshared int gsmInt2DArray[2][1024];
2025-07-03 12:25:55 +01:00
baldurk d3179a9886 Detect zink separately from any other vendors. Closes #3632 2025-07-01 12:35:51 +01:00
baldurk 5e846479c7 Handle GLES stupid limitations of color-rendering properly in emulation
* GLES doesn't handle rendering to formats like a normal API - it has an odd
  list of exceptions and extensions to check. If we don't have support for
  blitting in our texture copy emulation we fall back to CPU read and upload.
* We also can't use framebuffer blits for copying MSAA textures so we have to
  fall back to clearing to black. Emulating this would require a shader write
  with sample shading of some kind which is not worthwhile since this emulation
  path is only hit for initial contents where MSAA texture initial contents are
  very unlikely to be needed.
2025-07-01 12:21:24 +01:00
baldurk 6be083f66a Display space and register for root parameters in root signature viewer 2025-06-30 11:06:13 +01:00
baldurk 522edd5122 Bump version to v1.40 2025-06-27 17:11:05 +01:00
baldurk 3f85357598 Ensure official builds still detect compatible android apks properly v1.39 2025-06-27 16:16:20 +01:00
baldurk 4ca999c73e Fix check for integer MSAA texture resolves 2025-06-26 10:12:13 +01:00
baldurk 9c9566f7bd Mark resources in VkDependencyInfo as optional for serialisation 2025-06-25 15:13:32 +01:00
baldurk bfe627dfb7 Don't resolve integer textures when calling GetTextureData 2025-06-25 14:30:18 +01:00
baldurk 4b3f29dcfa Fix decoding of wide-string arguments in PIX events 2025-06-25 13:29:22 +01:00
baldurk 4f5c51bc01 Adjust values used in texel buffer test to have safer rounding 2025-06-25 12:15:55 +01:00
baldurk e5e1e286c3 Catch exceptions from process_trace in Iter_Test and print as errors 2025-06-25 10:53:46 +01:00
Jonathan Glines e0eee8fde3 Update NVGLCounters to use the latest Nsight PerfSDK APIs
Updated NVGLCounters to use the RawCounterConfig and counter
availability APIs from the latest Nsight PerfSDK headers.
2025-06-25 10:31:16 +01:00
Jonathan Glines 8f242043aa Update NVD3D11Counters to use the latest Nsight PerfSDK APIs
Updated NVD3D11Counters to use the RawCounterConfig and counter
availability APIs from the latest Nsight PerfSDK headers.
2025-06-25 10:31:16 +01:00
Jonathan Glines 8c6ae4919d Update NVVulkanCounters to use the latest Nsight PerfSDK APIs
Updated NVVulkanCounters to use the RawCounterConfig and counter
availability APIs from the latest Nsight PerfSDK headers.
2025-06-25 10:31:16 +01:00
Jonathan Glines 3c96826367 Update NVD3D12Counters to use the latest Nsight PerfSDK APIs
Updated NVD3D12Counters to use the RawCounterConfig and counter
availability APIs from the latest Nsight PerfSDK headers.
2025-06-25 10:31:16 +01:00
Jonathan Glines 7a052278ef Update NVCounterEnumerator to use the latest Nsight PerfSDK APIs
This updates NvCounterEnumerator to use the RawCounterConfig and counter
availability APIs available in recent Nsight PerfSDK headers. Using
these APIs to filter metrics by counter availability prevents crashes
and NaN values on some GPUs.
2025-06-25 10:31:16 +01:00
Jonathan Glines 4133ee7a43 Fix Visual Studio 2015 compile warnings in NvPerfUtility 2025-06-25 10:31:16 +01:00
Jonathan Glines 868e690e9c Fix incompatibilities with Nsight PerfSDK OpenGL and Vulkan headers 2025-06-25 10:31:16 +01:00