[Mesa-dev] [PATCH] mesa/st: enable ARB_gpu_shader5 if the reported GLSL version >= 400

Ilia Mirkin imirkin at alum.mit.edu
Sat Aug 9 20:01:11 PDT 2014


The ARB_gpu_shader5 extension is made up of a lot of small sub-parts.
Instead of adding PIPE_CAP's for each of these, just rely on the GLSL
version reported by the pipe driver. The remaining extensions lend
themselves naturally to being checked through a single CAP.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---

The only issue will happen when GLSL 4.00 is supported for real and so we
can't rely on the st to clamp it down to 330. (Although perhaps the mesa
version limiting logic would kick in then as well?)

The alternative is to add a ARB_GS5 cap, or a bunch of little ones for the
sub-parts, but that doesn't seem too useful.

 src/mesa/state_tracker/st_extensions.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 7ac4840..51fd71a 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -826,4 +826,7 @@ void st_init_extensions(struct st_context *st)
    }
    if (ctx->Const.MaxProgramTextureGatherComponents > 0)
       ctx->Extensions.ARB_texture_gather = GL_TRUE;
+
+   if (glsl_feature_level >= 400)
+      ctx->Extensions.ARB_gpu_shader5 = GL_TRUE;
 }
-- 
1.8.5.5



More information about the mesa-dev mailing list