Skip to content

tu: Fixes inter-renderpass pipeline bind interactions

What does this MR do and why?

These two changes is what fully fixes the test in question.

  1. The pipeline used in RP may have been bound in another RP, so we have to save relevant state and re-apply it on first draw.
  2. If non-draw-state state was emitted at the point of previous RP, which could happen if pipeline is not set at the start of current RP, we have to emit non-draw-state state since it would become stale in the next tile.

Fixes GPU hang and failure in the following test with forced binning + reg stomping:

 dEQP-VK.transform_feedback.primitives_generated_query.get.queue_reset.32bit.tese.xfb.color_write_disable_static.patch_list.pgq_default_xfb_default.two_draws.pqg_first.none_2_queries

Merge request reports