iris: Export a copy_region helper that doesn't flush
[mesa.git] / src / gallium / drivers / iris / iris_blorp.c
index cd5f919bdca052ecfc31878f91da5a0d60d32fb5..9963985ed97ad70288dcbac3821788a1d1a478a6 100644 (file)
@@ -216,7 +216,8 @@ blorp_vf_invalidate_for_vb_48b_transitions(struct blorp_batch *blorp_batch,
    }
 
    if (need_invalidate) {
-      iris_emit_pipe_control_flush(batch, PIPE_CONTROL_VF_CACHE_INVALIDATE);
+      iris_emit_pipe_control_flush(batch, PIPE_CONTROL_VF_CACHE_INVALIDATE |
+                                          PIPE_CONTROL_CS_STALL);
    }
 }
 
@@ -326,6 +327,8 @@ iris_blorp_exec(struct blorp_batch *blorp_batch,
     */
    // XXX: skip some if (!(batch->flags & BLORP_BATCH_NO_EMIT_DEPTH_STENCIL))
    ice->state.dirty |= ~(IRIS_DIRTY_POLYGON_STIPPLE |
+                         IRIS_DIRTY_SO_BUFFERS |
+                         IRIS_DIRTY_SO_DECL_LIST |
                          IRIS_DIRTY_LINE_STIPPLE);
 
    if (params->dst.enabled) {