st/mesa: expose EXT_gpu_shader4 if GLSL 1.40 is supported
authorMarek Olšák <marek.olsak@amd.com>
Tue, 7 Aug 2018 22:32:31 +0000 (18:32 -0400)
committerMarek Olšák <marek.olsak@amd.com>
Thu, 25 Apr 2019 00:45:15 +0000 (20:45 -0400)
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
docs/relnotes/19.1.0.html
src/mesa/state_tracker/st_extensions.c

index af516c2..950b595 100644 (file)
@@ -40,7 +40,9 @@ TBD.
 
 <ul>
 <li>GL_ARB_parallel_shader_compile on all drivers.</li>
+<li>GL_EXT_gpu_shader4 on all GL 3.1 drivers.</li>
 <li>GL_EXT_shader_image_load_formatted on radeonsi.</li>
+<li>GL_EXT_texture_buffer_object on all GL 3.1 drivers.</li>
 <li>GL_EXT_texture_compression_s3tc_srgb on Gallium drivers and i965 (ES extension).</li>
 <li>GL_NV_compute_shader_derivatives on iris and i965.</li>
 <li>GL_KHR_parallel_shader_compile on all drivers.</li>
index cebc35a..7562213 100644 (file)
@@ -1107,6 +1107,13 @@ void st_init_extensions(struct pipe_screen *screen,
    }
 
    if (GLSLVersion >= 140) {
+      /* Since GLSL 1.40 has support for all of the features of gpu_shader4,
+       * we can always expose it if the driver can do 140. Supporting
+       * gpu_shader4 on drivers without GLSL 1.40 is left for a future
+       * pipe cap.
+       */
+      extensions->EXT_gpu_shader4 = GL_TRUE;
+
       if (screen->get_param(screen, PIPE_CAP_TGSI_ARRAY_COMPONENTS))
          extensions->ARB_enhanced_layouts = GL_TRUE;
    }