[Mesa-dev] [PATCH] meta: Save/restore compute shaders

Anuj Phogat anuj.phogat at gmail.com
Tue Aug 25 14:50:49 PDT 2015


On Sat, Aug 22, 2015 at 9:31 PM, Jordan Justen
<jordan.l.justen at intel.com> wrote:
> Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
> ---
>  src/mesa/drivers/common/meta.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
> index bde544e..e27489d 100644
> --- a/src/mesa/drivers/common/meta.c
> +++ b/src/mesa/drivers/common/meta.c
> @@ -599,7 +599,7 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state)
>        /* Save the shader state from ctx->Shader (instead of ctx->_Shader) so
>         * that we don't have to worry about the current pipeline state.
>         */
> -      for (i = 0; i <= MESA_SHADER_FRAGMENT; i++) {
> +      for (i = 0; i < MESA_SHADER_STAGES; i++) {
>           _mesa_reference_shader_program(ctx, &save->Shader[i],
>                                          ctx->Shader.CurrentProgram[i]);
>        }
> @@ -949,7 +949,9 @@ _mesa_meta_end(struct gl_context *ctx)
>           GL_TESS_EVALUATION_SHADER,
>           GL_GEOMETRY_SHADER,
>           GL_FRAGMENT_SHADER,
> +         GL_COMPUTE_SHADER,
>        };
> +      STATIC_ASSERT(MESA_SHADER_STAGES == ARRAY_SIZE(targets));
>
>        bool any_shader;
>
> @@ -975,7 +977,7 @@ _mesa_meta_end(struct gl_context *ctx)
>        }
>
>        any_shader = false;
> -      for (i = 0; i <= MESA_SHADER_FRAGMENT; i++) {
> +      for (i = 0; i < MESA_SHADER_STAGES; i++) {
>           /* It is safe to call _mesa_use_shader_program even if the extension
>            * necessary for that program state is not supported.  In that case,
>            * the saved program object must be NULL and the currently bound
> --
> 2.1.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>


More information about the mesa-dev mailing list