diff options
author | Jordan Justen <[email protected]> | 2015-05-25 12:23:05 -0700 |
---|---|---|
committer | Jordan Justen <[email protected]> | 2015-09-02 14:17:24 -0700 |
commit | 4bdd5e09c3a1f97840dbbfb9e9a3c74bb0143968 (patch) | |
tree | 9f3922bb0e04d5dce01b4e626e2331f9f55f7e7f /src/mesa/drivers/common | |
parent | 4a9480b64aed6986095c391ebba6b91212fb9277 (diff) |
meta: Save/restore compute shaders
Signed-off-by: Jordan Justen <[email protected]>
Reviewed-by: Anuj Phogat <[email protected]>
Diffstat (limited to 'src/mesa/drivers/common')
-rw-r--r-- | src/mesa/drivers/common/meta.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index bde544ef490..e27489d6195 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 |