Reviewed-by: Edward O'Callaghan <funfunc...@folklore1984.net> On 01/11/2017 01:59 AM, Nicolai Hähnle wrote: > From: Nicolai Hähnle <nicolai.haeh...@amd.com> > > Some parts of the extension were explicitly removed for core profiles, > and all the remaining functionality has been in core since core profiles > exist. So there's no loss of exposed functionality. > > The corresponding change was applied to i965 in 2013 (commit > bd850cb4f2c77e2eb6716c865c40b9976633fc23), so it's not like > applications could be surprised by this behavior either. > > Fixes GL45-CTS.gtf30.GL3Tests.half_float.half_float_textures. > --- > src/mesa/state_tracker/st_context.c | 16 ++++++---------- > 1 file changed, 6 insertions(+), 10 deletions(-) > > diff --git a/src/mesa/state_tracker/st_context.c > b/src/mesa/state_tracker/st_context.c > index 0eae971..a2df704 100644 > --- a/src/mesa/state_tracker/st_context.c > +++ b/src/mesa/state_tracker/st_context.c > @@ -450,32 +450,28 @@ st_create_context_priv( struct gl_context *ctx, struct > pipe_context *pipe, > > /* Enable shader-based fallbacks for ARB_color_buffer_float if needed. */ > if (screen->get_param(screen, PIPE_CAP_VERTEX_COLOR_UNCLAMPED)) { > if (!screen->get_param(screen, PIPE_CAP_VERTEX_COLOR_CLAMPED)) { > st->clamp_vert_color_in_shader = GL_TRUE; > } > > if (!screen->get_param(screen, PIPE_CAP_FRAGMENT_COLOR_CLAMPED)) { > st->clamp_frag_color_in_shader = GL_TRUE; > } > - > - /* For drivers which cannot do color clamping, it's better to just > - * disable ARB_color_buffer_float in the core profile, because > - * the clamping is deprecated there anyway. */ > - if (ctx->API == API_OPENGL_CORE && > - (st->clamp_frag_color_in_shader || > st->clamp_vert_color_in_shader)) { > - st->clamp_vert_color_in_shader = GL_FALSE; > - st->clamp_frag_color_in_shader = GL_FALSE; > - ctx->Extensions.ARB_color_buffer_float = GL_FALSE; > - } > } > > + /* Disable ARB_color_buffer_float for core contexts, since some of its > + * functionality was explicitly removed. > + */ > + if (ctx->API == API_OPENGL_CORE) > + ctx->Extensions.ARB_color_buffer_float = GL_FALSE; > + > /* called after _mesa_create_context/_mesa_init_point, fix default user > * settable max point size up > */ > ctx->Point.MaxSize = MAX2(ctx->Const.MaxPointSize, > ctx->Const.MaxPointSizeAA); > /* For vertex shaders, make sure not to emit saturate when SM 3.0 is not > supported */ > ctx->Const.ShaderCompilerOptions[MESA_SHADER_VERTEX].EmitNoSat = > !st->has_shader_model3; > > if (!ctx->Extensions.ARB_gpu_shader5) { > for (i = 0; i < MESA_SHADER_STAGES; i++) >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev