From: Kenneth Graunke Date: Wed, 26 Jun 2019 04:00:46 +0000 (-0700) Subject: st/mesa: Set EmitNoIndirectSampler if GLSLVersion < 400. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=acadeaff6a2e6e10e32e78bb745fbaf277544a6f;p=mesa.git st/mesa: Set EmitNoIndirectSampler if GLSLVersion < 400. This patch changes the code which sets EmitNoIndirectSampler to check the core profile GLSL version, rather than the ARB_gpu_shader5 extension enable. st/mesa exposes ARB_gpu_shader5 if GLSLVersion (in core profiles) or GLSLVersionCompat (in compat profiles) >= 400. The Intel drivers do not currently expose ARB_gpu_shader5 in compat profiles. But the backend can absolutely handle indirect samplers. Looking at the core profile version number should be a good indication of what the driver supports. Reviewed-by: Eric Anholt Reviewed-by: Timothy Arceri --- diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c index e60962388cb..fbf44ef352c 100644 --- a/src/mesa/state_tracker/st_context.c +++ b/src/mesa/state_tracker/st_context.c @@ -689,7 +689,7 @@ st_create_context_priv(struct gl_context *ctx, struct pipe_context *pipe, ctx->Const.ShaderCompilerOptions[MESA_SHADER_VERTEX].EmitNoSat = !st->has_shader_model3; - if (!ctx->Extensions.ARB_gpu_shader5) { + if (ctx->Const.GLSLVersion < 400) { for (i = 0; i < MESA_SHADER_STAGES; i++) ctx->Const.ShaderCompilerOptions[i].EmitNoIndirectSampler = true; }