mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-22 08:33:12 -05:00
SET_PREDICATION threw, and packets with the predicate header bit were rejected. The executor now keeps the queue's predication: operations 3 and 4 read a 64- or 32-bit value and bit 8 selects whether predicated packets run when it is non-zero or zero; operation 0 clears it. Before a predicated packet runs while predication is active, queued labels are recorded and the value is read, as for COND_EXEC; the packet is skipped when the predicate fails. Indirect buffers are inlined when a submission is copied, so a predicated INDIRECT_BUFFER call keeps its header in front of the inlined commands and records their end like a COND_EXEC range; the block runs or is skipped on one evaluation, as on the command processor. Query predication, a predicated COND_EXEC, predicated chains and flips inside predicated command buffers throw. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>