/* Emit workaround flushes when we switch from drawing to blorping. */
brw_emit_post_sync_nonzero_flush(brw);
- brw_state_base_address.emit(brw);
+ if (brw_state_base_address.dirty.brw & brw->ctx.NewDriverState)
+ brw_state_base_address.emit(brw);
gen6_emit_3dstate_multisample(brw, params->dst.num_samples);
gen6_emit_3dstate_sample_mask(brw,
uint32_t prog_offset = params->get_wm_prog(brw, &prog_data);
- brw_state_base_address.emit(brw);
+ if (brw_state_base_address.dirty.brw & brw->ctx.NewDriverState)
+ brw_state_base_address.emit(brw);
gen6_emit_3dstate_multisample(brw, params->dst.num_samples);
gen6_emit_3dstate_sample_mask(brw,
uint32_t prog_offset = params->get_wm_prog(brw, &prog_data);
- gen8_upload_state_base_address(brw);
+ if (gen8_state_base_address.dirty.brw & brw->ctx.NewDriverState)
+ gen8_upload_state_base_address(brw);
+
gen7_blorp_emit_cc_viewport(brw);
gen7_l3_state.emit(brw);