meta: Only bind the sampler in one place

All of the calls after the first _mesa_bind_sampler call are DSA style
calls that don't depend on the current binding.

I kept this change separate and last because it is one of the few in the
series that is not a candidate for the stable branch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
This commit is contained in:
Ian Romanick 2015-11-10 15:16:33 -08:00
parent ae50157363
commit 1799eddb51
2 changed files with 4 additions and 8 deletions

View File

@ -3129,7 +3129,6 @@ decompress_texture_image(struct gl_context *ctx,
return true;
}
_mesa_bind_sampler(ctx, ctx->Texture.CurrentUnit, decompress->samp_obj);
/* nearest filtering */
_mesa_set_sampler_filters(ctx, decompress->samp_obj, GL_NEAREST, GL_NEAREST);
@ -3137,11 +3136,10 @@ decompress_texture_image(struct gl_context *ctx,
if (ctx->Extensions.EXT_texture_sRGB_decode) {
_mesa_set_sampler_srgb_decode(ctx, decompress->samp_obj, GL_SKIP_DECODE_EXT);
}
} else {
_mesa_bind_sampler(ctx, ctx->Texture.CurrentUnit, decompress->samp_obj);
}
_mesa_bind_sampler(ctx, ctx->Texture.CurrentUnit, decompress->samp_obj);
/* Silence valgrind warnings about reading uninitialized stack. */
memset(verts, 0, sizeof(verts));

View File

@ -234,8 +234,6 @@ _mesa_meta_GenerateMipmap(struct gl_context *ctx, GLenum target,
return;
}
_mesa_bind_sampler(ctx, ctx->Texture.CurrentUnit, mipmap->samp_obj);
_mesa_set_sampler_filters(ctx, mipmap->samp_obj, GL_LINEAR_MIPMAP_LINEAR,
GL_LINEAR);
_mesa_set_sampler_wrap(ctx, mipmap->samp_obj, GL_CLAMP_TO_EDGE,
@ -248,10 +246,10 @@ _mesa_meta_GenerateMipmap(struct gl_context *ctx, GLenum target,
if (ctx->Extensions.EXT_texture_sRGB_decode) {
_mesa_set_sampler_srgb_decode(ctx, mipmap->samp_obj, GL_SKIP_DECODE_EXT);
}
} else {
_mesa_bind_sampler(ctx, ctx->Texture.CurrentUnit, mipmap->samp_obj);
}
_mesa_bind_sampler(ctx, ctx->Texture.CurrentUnit, mipmap->samp_obj);
assert(mipmap->FBO != 0);
_mesa_BindFramebuffer(GL_FRAMEBUFFER_EXT, mipmap->FBO);