Skip to content

Commit 53c3db5

Browse files
JaroszPiotrigcbot
authored andcommitted
Do not use SingleProcced mode if STOC emulation is required.
If STOC is enabled, it is possible to execute Proceed more than once, despite the application does not call it in the loop. In such case switch to multiple Proceeds mode.
1 parent aa56d87 commit 53c3db5

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

IGC/AdaptorCommon/RayTracing/TraceRayInlineLoweringPass.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,14 @@ TraceRayInlineLoweringPass::analyzeSingleRQProceed(const Function& F) const
219219
}
220220
}
221221

222+
// If STOC is enabled, it is possible to execute Proceed more than
223+
// once, despite the application does not call it in the loop.
224+
// In such case switch to multiple Proceeds mode.
225+
if (m_CGCtx->isSWSubTriangleOpacityCullingEmulationEnabled())
226+
{
227+
Result = false;
228+
}
229+
222230
return { Result, cntProceeds };
223231
}
224232

0 commit comments

Comments
 (0)