summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/gen8_ps_state.c
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2014-03-06 16:29:39 -0800
committerKenneth Graunke <kenneth@whitecape.org>2014-03-10 13:05:12 -0700
commit30259856a8a82a55c030df1ad052e505c61144bc (patch)
treed72186d89875a26bf38352227107c4330da3c680 /src/mesa/drivers/dri/i965/gen8_ps_state.c
parentdb26253a482a721d8ae93cc306e3c6ce070c06cf (diff)
downloadexternal_mesa3d-30259856a8a82a55c030df1ad052e505c61144bc.zip
external_mesa3d-30259856a8a82a55c030df1ad052e505c61144bc.tar.gz
external_mesa3d-30259856a8a82a55c030df1ad052e505c61144bc.tar.bz2
i965: Move binding table update packets to binding table setup time.
This keeps us from needing to reemit all the other stage state just because a surface changed. Improves unoptimized glamor x11perf -f8text by 1.10201% +/- 0.489869% (n=296). [v1] v2: - Drop binding table packets from Gen8 unit state as well. - Pass _3DSTATE_BINDING_TABLE_POINTERS_XS to brw_upload_binding_table, cutting even more code. v3: Don't forget to drop them from 3DSTATE_GS (botched refactor in v2). Signed-off-by: Eric Anholt <eric@anholt.net> [v1] Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> [v1] Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> [v2, v3] Reviewed-by: Eric Anholt <eric@anholt.net> [v3]
Diffstat (limited to 'src/mesa/drivers/dri/i965/gen8_ps_state.c')
-rw-r--r--src/mesa/drivers/dri/i965/gen8_ps_state.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/src/mesa/drivers/dri/i965/gen8_ps_state.c b/src/mesa/drivers/dri/i965/gen8_ps_state.c
index 561fc96..7d8f954 100644
--- a/src/mesa/drivers/dri/i965/gen8_ps_state.c
+++ b/src/mesa/drivers/dri/i965/gen8_ps_state.c
@@ -136,12 +136,6 @@ upload_ps_state(struct brw_context *brw)
struct gl_context *ctx = &brw->ctx;
uint32_t dw3 = 0, dw6 = 0, dw7 = 0;
- /* BRW_NEW_PS_BINDING_TABLE */
- BEGIN_BATCH(2);
- OUT_BATCH(_3DSTATE_BINDING_TABLE_POINTERS_PS << 16 | (2 - 2));
- OUT_BATCH(brw->wm.base.bind_bo_offset);
- ADVANCE_BATCH();
-
/* CACHE_NEW_SAMPLER */
BEGIN_BATCH(2);
OUT_BATCH(_3DSTATE_SAMPLER_STATE_POINTERS_PS << 16 | (2 - 2));