diff options
author | Jason Ekstrand <[email protected]> | 2016-08-09 15:38:04 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2016-08-19 03:11:29 -0700 |
commit | 75304fdbd833ef52c95f61cf2f53d13869a150a4 (patch) | |
tree | ac2fc93e0ee846c1fd7b61401640722f7aebc095 | |
parent | 8b0426ddd48b6cf910dcfa2ff292167b00d3323a (diff) |
i965/blorp/gen6-7: Move surfaces and samplers closer together
This mimics what we do on gen8.
Signed-off-by: Jason Ekstrand <[email protected]>
Reviewed-by: Topi Pohjolainen <[email protected]>
-rw-r--r-- | src/mesa/drivers/dri/i965/gen6_blorp.c | 4 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/gen7_blorp.c | 17 |
2 files changed, 10 insertions, 11 deletions
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); |