broadcom/compiler: emit TMU flush before a jump
Like in the case of emitting a block, process pending TMU operations
before a jump is executed.
Fixes dEQP-VK.graphicsfuzz.stable-binarysearch-tree-nested-if-and-conditional.
Fixes: 197090a3fc
("broadcom/compiler: implement pipelining for general
TMU operations")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11971>
This commit is contained in:
parent
54e1ec017d
commit
dc40157888
|
@ -2,9 +2,6 @@
|
|||
dEQP-VK.draw.inverted_depth_ranges.nodepthclamp_deltazero
|
||||
dEQP-VK.rasterization.depth_bias.d32_sfloat
|
||||
|
||||
# This test causes GPU hangs (vk-gl-cts 1.2.6.2)
|
||||
dEQP-VK.graphicsfuzz.stable-binarysearch-tree-nested-if-and-conditional
|
||||
|
||||
# Timeout tests (> 1 minute to run)
|
||||
dEQP-VK.api.object_management.max_concurrent.query_pool
|
||||
dEQP-VK.graphicsfuzz.spv-stable-maze-flatten-copy-composite
|
||||
|
|
|
@ -3601,6 +3601,10 @@ ntq_emit_instr(struct v3d_compile *c, nir_instr *instr)
|
|||
break;
|
||||
|
||||
case nir_instr_type_jump:
|
||||
/* Always flush TMU before jumping to another block, for the
|
||||
* same reasons as in ntq_emit_block.
|
||||
*/
|
||||
ntq_flush_tmu(c);
|
||||
if (vir_in_nonuniform_control_flow(c))
|
||||
ntq_emit_jump(c, nir_instr_as_jump(instr));
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue