Re: [Mesa-dev] [PATCH 03/14] mesa: Drop _EnabledUnits.
On 04/24/2014 05:50 PM, Eric Anholt wrote: The field wasn't really valid, since we've got more than 32 units now. It turns out it was mostly just used for checking != 0, or checking for fixed function coordinates, though. --- src/mesa/drivers/common/meta.c | 2 +- src/mesa/drivers/dri/i915/intel_pixel.c| 2 +- src/mesa/drivers/dri/i915/intel_pixel_copy.c | 2 +- src/mesa/drivers/dri/i965/intel_pixel.c| 2 +- src/mesa/drivers/dri/i965/intel_pixel_copy.c | 2 +- src/mesa/drivers/dri/nouveau/nv04_state_frag.c | 2 +- src/mesa/drivers/dri/nouveau/nv10_state_frag.c | 4 ++-- src/mesa/drivers/dri/r200/r200_state_init.c| 4 ++-- src/mesa/drivers/osmesa/osmesa.c | 4 ++-- src/mesa/drivers/x11/xm_line.c | 4 ++-- src/mesa/drivers/x11/xm_tri.c | 2 +- src/mesa/main/ffvertex_prog.c | 2 +- src/mesa/main/mtypes.h | 3 --- src/mesa/main/texstate.c | 4 src/mesa/swrast/s_context.c| 4 ++-- src/mesa/swrast/s_texture.c| 29 +++--- src/mesa/swrast/s_triangle.c | 2 +- 17 files changed, 31 insertions(+), 43 deletions(-) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index ac27abb..0f0cfc7 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -2328,7 +2328,7 @@ _mesa_meta_Bitmap(struct gl_context *ctx, if (ctx-_ImageTransferState || ctx-FragmentProgram._Enabled || ctx-Fog.Enabled || - ctx-Texture._EnabledUnits || + ctx-Texture._MaxEnabledTexImageUnit != -1 || width tex-MaxSize || height tex-MaxSize) { _swrast_Bitmap(ctx, x, y, width, height, unpack, bitmap1); diff --git a/src/mesa/drivers/dri/i915/intel_pixel.c b/src/mesa/drivers/dri/i915/intel_pixel.c index da2f783..6f139e1 100644 --- a/src/mesa/drivers/dri/i915/intel_pixel.c +++ b/src/mesa/drivers/dri/i915/intel_pixel.c @@ -77,7 +77,7 @@ intel_check_blit_fragment_ops(struct gl_context * ctx, bool src_alpha_is_one) return false; } - if (ctx-Texture._EnabledUnits) { + if (ctx-Texture._MaxEnabledTexImageUnit != -1) { DBG(fallback due to texturing\n); return false; } diff --git a/src/mesa/drivers/dri/i915/intel_pixel_copy.c b/src/mesa/drivers/dri/i915/intel_pixel_copy.c index 6cfdc92..e7b5353 100644 --- a/src/mesa/drivers/dri/i915/intel_pixel_copy.c +++ b/src/mesa/drivers/dri/i915/intel_pixel_copy.c @@ -117,7 +117,7 @@ do_blit_copypixels(struct gl_context * ctx, } if (ctx-Fog.Enabled || - ctx-Texture._EnabledUnits || + ctx-Texture._MaxEnabledTexImageUnit != -1 || ctx-FragmentProgram._Enabled) { perf_debug(glCopyPixels(): Unsupported fragment shader state\n); return false; diff --git a/src/mesa/drivers/dri/i965/intel_pixel.c b/src/mesa/drivers/dri/i965/intel_pixel.c index 5f57022..a6db7fa 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel.c +++ b/src/mesa/drivers/dri/i965/intel_pixel.c @@ -77,7 +77,7 @@ intel_check_blit_fragment_ops(struct gl_context * ctx, bool src_alpha_is_one) return false; } - if (ctx-Texture._EnabledUnits) { + if (ctx-Texture._MaxEnabledTexImageUnit != -1) { DBG(fallback due to texturing\n); return false; } diff --git a/src/mesa/drivers/dri/i965/intel_pixel_copy.c b/src/mesa/drivers/dri/i965/intel_pixel_copy.c index 858be26..5687c28 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel_copy.c +++ b/src/mesa/drivers/dri/i965/intel_pixel_copy.c @@ -125,7 +125,7 @@ do_blit_copypixels(struct gl_context * ctx, } if (ctx-Fog.Enabled || - ctx-Texture._EnabledUnits || + ctx-Texture._MaxEnabledTexImageUnit != -1 || ctx-FragmentProgram._Enabled) { perf_debug(glCopyPixels(): Unsupported fragment shader state\n); return false; diff --git a/src/mesa/drivers/dri/nouveau/nv04_state_frag.c b/src/mesa/drivers/dri/nouveau/nv04_state_frag.c index 17d2781..c48a0b0 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_state_frag.c +++ b/src/mesa/drivers/dri/nouveau/nv04_state_frag.c @@ -286,7 +286,7 @@ nv04_emit_tex_env(struct gl_context *ctx, int emit) /* calculate non-multitex state */ nv04-blend = ~NV04_TEXTURED_TRIANGLE_BLEND_TEXTURE_MAP__MASK; - if (ctx-Texture._EnabledUnits) + if (ctx-Texture._MaxEnabledTexImageUnit != -1) nv04-blend |= get_texenv_mode(ctx-Texture.Unit[0].EnvMode); else nv04-blend |= get_texenv_mode(GL_MODULATE); diff --git a/src/mesa/drivers/dri/nouveau/nv10_state_frag.c b/src/mesa/drivers/dri/nouveau/nv10_state_frag.c index 10f067f..aa7e703 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state_frag.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state_frag.c @@ -353,7 +353,7
[Mesa-dev] [PATCH 03/14] mesa: Drop _EnabledUnits.
The field wasn't really valid, since we've got more than 32 units now. It turns out it was mostly just used for checking != 0, or checking for fixed function coordinates, though. --- src/mesa/drivers/common/meta.c | 2 +- src/mesa/drivers/dri/i915/intel_pixel.c| 2 +- src/mesa/drivers/dri/i915/intel_pixel_copy.c | 2 +- src/mesa/drivers/dri/i965/intel_pixel.c| 2 +- src/mesa/drivers/dri/i965/intel_pixel_copy.c | 2 +- src/mesa/drivers/dri/nouveau/nv04_state_frag.c | 2 +- src/mesa/drivers/dri/nouveau/nv10_state_frag.c | 4 ++-- src/mesa/drivers/dri/r200/r200_state_init.c| 4 ++-- src/mesa/drivers/osmesa/osmesa.c | 4 ++-- src/mesa/drivers/x11/xm_line.c | 4 ++-- src/mesa/drivers/x11/xm_tri.c | 2 +- src/mesa/main/ffvertex_prog.c | 2 +- src/mesa/main/mtypes.h | 3 --- src/mesa/main/texstate.c | 4 src/mesa/swrast/s_context.c| 4 ++-- src/mesa/swrast/s_texture.c| 29 +++--- src/mesa/swrast/s_triangle.c | 2 +- 17 files changed, 31 insertions(+), 43 deletions(-) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index ac27abb..0f0cfc7 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -2328,7 +2328,7 @@ _mesa_meta_Bitmap(struct gl_context *ctx, if (ctx-_ImageTransferState || ctx-FragmentProgram._Enabled || ctx-Fog.Enabled || - ctx-Texture._EnabledUnits || + ctx-Texture._MaxEnabledTexImageUnit != -1 || width tex-MaxSize || height tex-MaxSize) { _swrast_Bitmap(ctx, x, y, width, height, unpack, bitmap1); diff --git a/src/mesa/drivers/dri/i915/intel_pixel.c b/src/mesa/drivers/dri/i915/intel_pixel.c index da2f783..6f139e1 100644 --- a/src/mesa/drivers/dri/i915/intel_pixel.c +++ b/src/mesa/drivers/dri/i915/intel_pixel.c @@ -77,7 +77,7 @@ intel_check_blit_fragment_ops(struct gl_context * ctx, bool src_alpha_is_one) return false; } - if (ctx-Texture._EnabledUnits) { + if (ctx-Texture._MaxEnabledTexImageUnit != -1) { DBG(fallback due to texturing\n); return false; } diff --git a/src/mesa/drivers/dri/i915/intel_pixel_copy.c b/src/mesa/drivers/dri/i915/intel_pixel_copy.c index 6cfdc92..e7b5353 100644 --- a/src/mesa/drivers/dri/i915/intel_pixel_copy.c +++ b/src/mesa/drivers/dri/i915/intel_pixel_copy.c @@ -117,7 +117,7 @@ do_blit_copypixels(struct gl_context * ctx, } if (ctx-Fog.Enabled || - ctx-Texture._EnabledUnits || + ctx-Texture._MaxEnabledTexImageUnit != -1 || ctx-FragmentProgram._Enabled) { perf_debug(glCopyPixels(): Unsupported fragment shader state\n); return false; diff --git a/src/mesa/drivers/dri/i965/intel_pixel.c b/src/mesa/drivers/dri/i965/intel_pixel.c index 5f57022..a6db7fa 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel.c +++ b/src/mesa/drivers/dri/i965/intel_pixel.c @@ -77,7 +77,7 @@ intel_check_blit_fragment_ops(struct gl_context * ctx, bool src_alpha_is_one) return false; } - if (ctx-Texture._EnabledUnits) { + if (ctx-Texture._MaxEnabledTexImageUnit != -1) { DBG(fallback due to texturing\n); return false; } diff --git a/src/mesa/drivers/dri/i965/intel_pixel_copy.c b/src/mesa/drivers/dri/i965/intel_pixel_copy.c index 858be26..5687c28 100644 --- a/src/mesa/drivers/dri/i965/intel_pixel_copy.c +++ b/src/mesa/drivers/dri/i965/intel_pixel_copy.c @@ -125,7 +125,7 @@ do_blit_copypixels(struct gl_context * ctx, } if (ctx-Fog.Enabled || - ctx-Texture._EnabledUnits || + ctx-Texture._MaxEnabledTexImageUnit != -1 || ctx-FragmentProgram._Enabled) { perf_debug(glCopyPixels(): Unsupported fragment shader state\n); return false; diff --git a/src/mesa/drivers/dri/nouveau/nv04_state_frag.c b/src/mesa/drivers/dri/nouveau/nv04_state_frag.c index 17d2781..c48a0b0 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_state_frag.c +++ b/src/mesa/drivers/dri/nouveau/nv04_state_frag.c @@ -286,7 +286,7 @@ nv04_emit_tex_env(struct gl_context *ctx, int emit) /* calculate non-multitex state */ nv04-blend = ~NV04_TEXTURED_TRIANGLE_BLEND_TEXTURE_MAP__MASK; - if (ctx-Texture._EnabledUnits) + if (ctx-Texture._MaxEnabledTexImageUnit != -1) nv04-blend |= get_texenv_mode(ctx-Texture.Unit[0].EnvMode); else nv04-blend |= get_texenv_mode(GL_MODULATE); diff --git a/src/mesa/drivers/dri/nouveau/nv10_state_frag.c b/src/mesa/drivers/dri/nouveau/nv10_state_frag.c index 10f067f..aa7e703 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state_frag.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state_frag.c @@ -353,7 +353,7 @@ nv10_get_final_combiner(struct gl_context *ctx, uint64_t *in, int *n) INPUT_ONE(rc, E, 0); } - if