From: Eric Anholt Date: Fri, 15 Jul 2016 00:38:43 +0000 (-0700) Subject: vc4: Drop VC4_DIRTY_TEXSTATE in favor of the per-stage flags. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=88152d7dc0e2cf233cd2c38a4e9affb1ea73fa97;p=mesa.git vc4: Drop VC4_DIRTY_TEXSTATE in favor of the per-stage flags. The compiler uses the per-stage flags already, so it didn't need this. vc4_uniforms was using it, so just replace it with both of the stage flags for now. --- diff --git a/src/gallium/drivers/vc4/vc4_context.h b/src/gallium/drivers/vc4/vc4_context.h index a7c25a8bb0d..7da2b554e49 100644 --- a/src/gallium/drivers/vc4/vc4_context.h +++ b/src/gallium/drivers/vc4/vc4_context.h @@ -49,7 +49,6 @@ #define VC4_DIRTY_ZSA (1 << 2) #define VC4_DIRTY_FRAGTEX (1 << 3) #define VC4_DIRTY_VERTTEX (1 << 4) -#define VC4_DIRTY_TEXSTATE (1 << 5) #define VC4_DIRTY_BLEND_COLOR (1 << 7) #define VC4_DIRTY_STENCIL_REF (1 << 8) diff --git a/src/gallium/drivers/vc4/vc4_program.c b/src/gallium/drivers/vc4/vc4_program.c index 521f971272a..b4b62e3869a 100644 --- a/src/gallium/drivers/vc4/vc4_program.c +++ b/src/gallium/drivers/vc4/vc4_program.c @@ -2352,7 +2352,6 @@ vc4_update_compiled_fs(struct vc4_context *vc4, uint8_t prim_mode) VC4_DIRTY_RASTERIZER | VC4_DIRTY_SAMPLE_MASK | VC4_DIRTY_FRAGTEX | - VC4_DIRTY_TEXSTATE | VC4_DIRTY_UNCOMPILED_FS))) { return; } @@ -2421,7 +2420,6 @@ vc4_update_compiled_vs(struct vc4_context *vc4, uint8_t prim_mode) if (!(vc4->dirty & (VC4_DIRTY_PRIM_MODE | VC4_DIRTY_RASTERIZER | VC4_DIRTY_VERTTEX | - VC4_DIRTY_TEXSTATE | VC4_DIRTY_VTXSTATE | VC4_DIRTY_UNCOMPILED_VS | VC4_DIRTY_COMPILED_FS))) { diff --git a/src/gallium/drivers/vc4/vc4_state.c b/src/gallium/drivers/vc4/vc4_state.c index 0912ca5b8d7..bf4e0232daf 100644 --- a/src/gallium/drivers/vc4/vc4_state.c +++ b/src/gallium/drivers/vc4/vc4_state.c @@ -482,8 +482,6 @@ vc4_set_framebuffer_state(struct pipe_context *pctx, static struct vc4_texture_stateobj * vc4_get_stage_tex(struct vc4_context *vc4, unsigned shader) { - vc4->dirty |= VC4_DIRTY_TEXSTATE; - switch (shader) { case PIPE_SHADER_FRAGMENT: vc4->dirty |= VC4_DIRTY_FRAGTEX; @@ -668,8 +666,6 @@ vc4_set_sampler_views(struct pipe_context *pctx, unsigned shader, assert(start == 0); - vc4->dirty |= VC4_DIRTY_TEXSTATE; - for (i = 0; i < nr; i++) { if (views[i]) new_nr = i + 1; diff --git a/src/gallium/drivers/vc4/vc4_uniforms.c b/src/gallium/drivers/vc4/vc4_uniforms.c index ee21771dd89..c9d6b537720 100644 --- a/src/gallium/drivers/vc4/vc4_uniforms.c +++ b/src/gallium/drivers/vc4/vc4_uniforms.c @@ -375,7 +375,10 @@ vc4_set_shader_uniform_dirty_flags(struct vc4_compiled_shader *shader) case QUNIFORM_TEXTURE_MSAA_ADDR: case QUNIFORM_TEXRECT_SCALE_X: case QUNIFORM_TEXRECT_SCALE_Y: - dirty |= VC4_DIRTY_TEXSTATE; + /* We could flag this on just the stage we're + * compiling for, but it's not passed in. + */ + dirty |= VC4_DIRTY_FRAGTEX | VC4_DIRTY_VERTTEX; break; case QUNIFORM_BLEND_CONST_COLOR_X: