From: Jason Ekstrand Date: Tue, 9 Aug 2016 22:38:04 +0000 (-0700) Subject: i965/blorp/gen6-7: Move surfaces and samplers closer together X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=75304fdbd833ef52c95f61cf2f53d13869a150a4;p=mesa.git i965/blorp/gen6-7: Move surfaces and samplers closer together This mimics what we do on gen8. Signed-off-by: Jason Ekstrand Reviewed-by: Topi Pohjolainen --- diff --git a/src/mesa/drivers/dri/i965/gen6_blorp.c b/src/mesa/drivers/dri/i965/gen6_blorp.c index 3fa80907330..b252d780b60 100644 --- a/src/mesa/drivers/dri/i965/gen6_blorp.c +++ b/src/mesa/drivers/dri/i965/gen6_blorp.c @@ -550,6 +550,7 @@ gen6_blorp_exec(struct brw_context *brw, gen6_blorp_emit_binding_table(brw, wm_surf_offset_renderbuffer, wm_surf_offset_texture); + gen6_blorp_emit_binding_table_pointers(brw, wm_bind_bo_offset); } if (params->src.bo) { @@ -557,13 +558,12 @@ gen6_blorp_exec(struct brw_context *brw, gen6_blorp_emit_sampler_state(brw, BRW_MAPFILTER_LINEAR, 0, true); gen6_blorp_emit_sampler_state_pointers(brw, sampler_offset); } + gen6_blorp_emit_vs_disable(brw, params); gen6_blorp_emit_gs_disable(brw, params); gen6_blorp_emit_clip_disable(brw); gen6_blorp_emit_sf_config(brw, params); gen6_blorp_emit_wm_config(brw, params); - if (params->wm_prog_data) - gen6_blorp_emit_binding_table_pointers(brw, wm_bind_bo_offset); gen6_blorp_emit_viewport_state(brw, params); if (params->depth.bo) diff --git a/src/mesa/drivers/dri/i965/gen7_blorp.c b/src/mesa/drivers/dri/i965/gen7_blorp.c index 122f37fab49..adbf909d399 100644 --- a/src/mesa/drivers/dri/i965/gen7_blorp.c +++ b/src/mesa/drivers/dri/i965/gen7_blorp.c @@ -511,7 +511,15 @@ gen7_blorp_exec(struct brw_context *brw, gen6_blorp_emit_binding_table(brw, wm_surf_offset_renderbuffer, wm_surf_offset_texture); + gen7_blorp_emit_binding_table_pointers_ps(brw, wm_bind_bo_offset); } + + if (params->src.bo) { + const uint32_t sampler_offset = + gen6_blorp_emit_sampler_state(brw, BRW_MAPFILTER_LINEAR, 0, true); + gen7_blorp_emit_sampler_state_pointers_ps(brw, sampler_offset); + } + gen7_blorp_emit_vs_disable(brw); gen7_blorp_emit_hs_disable(brw); gen7_blorp_emit_te_disable(brw); @@ -521,15 +529,6 @@ gen7_blorp_exec(struct brw_context *brw, gen6_blorp_emit_clip_disable(brw); gen7_blorp_emit_sf_config(brw, params); gen7_blorp_emit_wm_config(brw, params); - if (params->wm_prog_data) - gen7_blorp_emit_binding_table_pointers_ps(brw, wm_bind_bo_offset); - - if (params->src.bo) { - const uint32_t sampler_offset = - gen6_blorp_emit_sampler_state(brw, BRW_MAPFILTER_LINEAR, 0, true); - gen7_blorp_emit_sampler_state_pointers_ps(brw, sampler_offset); - } - gen7_blorp_emit_ps_config(brw, params); gen7_blorp_emit_cc_viewport(brw);