From e6948a8c7e613fcc0c79f04f25a6642b1502939e Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 11 Sep 2026 17:49:46 +0100 Subject: [PATCH] Check for degenerate debug traces in process_trace --- util/test/rdtest/testcase.py | 5 +++++ util/test/tests/D3D12/D3D12_Shader_DebugData_Zoo.py | 6 ------ util/test/tests/D3D12/D3D12_Shader_Debug_Zoo.py | 12 ------------ 3 files changed, 5 insertions(+), 18 deletions(-) diff --git a/util/test/rdtest/testcase.py b/util/test/rdtest/testcase.py index d1be3256b..9027f71d6 100644 --- a/util/test/rdtest/testcase.py +++ b/util/test/rdtest/testcase.py @@ -954,6 +954,11 @@ class TestCase: if validate: self.validate_trace(allChanges) + # Check for non-zero cycles, this is never expected - calling code should verify that + # debugging is supported etc + if cycles == 0: + raise TestFailureException("Shader debug cycle count was zero") + return cycles, variables def get_sig_index(self, signature: List[rd.SigParameter], builtin: rd.ShaderBuiltin, reg_index: int = -1): diff --git a/util/test/tests/D3D12/D3D12_Shader_DebugData_Zoo.py b/util/test/tests/D3D12/D3D12_Shader_DebugData_Zoo.py index 29daa4cee..f05591bc7 100644 --- a/util/test/tests/D3D12/D3D12_Shader_DebugData_Zoo.py +++ b/util/test/tests/D3D12/D3D12_Shader_DebugData_Zoo.py @@ -246,12 +246,6 @@ class D3D12_Shader_DebugData_Zoo(rdtest.TestCase): threadid = (0,0,0) trace = self.controller.DebugThread(groupid, threadid) cycles, variables = self.process_trace(trace) - # Check for non-zero cycles - if cycles == 0: - rdtest.log.error("Shader debug cycle count was zero") - failed = True - self.controller.FreeTrace(trace) - continue # Result is stored in RWStructuredBuffer bufOut : register(u0); bufOut = pipe.GetReadWriteResources(rd.ShaderStage.Compute)[0].descriptor.resource diff --git a/util/test/tests/D3D12/D3D12_Shader_Debug_Zoo.py b/util/test/tests/D3D12/D3D12_Shader_Debug_Zoo.py index eb7c816d7..e7e1823eb 100644 --- a/util/test/tests/D3D12/D3D12_Shader_Debug_Zoo.py +++ b/util/test/tests/D3D12/D3D12_Shader_Debug_Zoo.py @@ -59,12 +59,6 @@ class D3D12_Shader_Debug_Zoo(rdtest.TestCase): # Debug the shader trace = self.controller.DebugThread(groupid, tid) cycles, variables = self.process_trace(trace) - # Check for non-zero cycles - if cycles == 0: - rdtest.log.success(f"Test {test} Group:{groupid} Thread:{tid} : Shader debug cycle count was zero") - self.controller.FreeTrace(trace) - failed = True - continue # Find the source variable 'testResult' at the highest instruction index name = 'testResult' @@ -308,12 +302,6 @@ class D3D12_Shader_Debug_Zoo(rdtest.TestCase): testIndex = groupX trace = self.controller.DebugThread(groupid, threadid) cycles, variables = self.process_trace(trace) - # Check for non-zero cycles - if cycles == 0: - rdtest.log.error("Shader debug cycle count was zero") - self.controller.FreeTrace(trace) - failed = True - continue # Result is stored in RWStructuredBuffer bufOut : register(u1); bufOut = pipe.GetReadWriteResources(rd.ShaderStage.Compute)[1].descriptor.resource