st/mesa: enable ARB_ES3_1_compatibility when ES 3.1 would be exposed

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Ilia Mirkin 2016-05-23 23:00:45 -04:00
parent 5878254545
commit 856587909c
3 changed files with 24 additions and 1 deletions

View File

@ -208,7 +208,7 @@ GL 4.4, GLSL 4.40:
GL 4.5, GLSL 4.50:
GL_ARB_ES3_1_compatibility not started
GL_ARB_ES3_1_compatibility DONE (nvc0, radeonsi)
GL_ARB_clip_control DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe, swr)
GL_ARB_conditional_render_inverted DONE (i965, nv50, nvc0, r600, radeonsi, llvmpipe, softpipe, swr)
GL_ARB_cull_distance DONE (i965, nv50, nvc0, llvmpipe, softpipe)

View File

@ -45,6 +45,7 @@ Note: some of the new features are only available with certain drivers.
<ul>
<li>OpenGL 4.2 on radeonsi</li>
<li>GL_ARB_ES3_1_compatibility on nvc0, radeonsi</li>
<li>GL_ARB_compute_shader on radeonsi, softpipe</li>
<li>GL_ARB_cull_distance on i965/gen6+, nv50, nvc0, llvmpipe, softpipe</li>
<li>GL_ARB_framebuffer_no_attachments on nvc0, r600, radeonsi, softpipe</li>

View File

@ -1181,4 +1181,26 @@ void st_init_extensions(struct pipe_screen *screen,
extensions->ARB_shader_atomic_counters;
}
}
/* If we support ES 3.1, we support the ES3_1_compatibility ext. However
* there's no clean way of telling whether we would support ES 3.1 from
* here, so copy the condition from compute_version_es2 here. A lot of
* these are redunant, but simpler to just have a (near-)exact copy here.
*/
extensions->ARB_ES3_1_compatibility =
extensions->ARB_ES3_compatibility &&
extensions->ARB_arrays_of_arrays &&
extensions->ARB_compute_shader &&
extensions->ARB_draw_indirect &&
extensions->ARB_explicit_uniform_location &&
extensions->ARB_framebuffer_no_attachments &&
extensions->ARB_shader_atomic_counters &&
extensions->ARB_shader_image_load_store &&
extensions->ARB_shader_image_size &&
extensions->ARB_shader_storage_buffer_object &&
extensions->ARB_shading_language_packing &&
extensions->ARB_stencil_texturing &&
extensions->ARB_texture_multisample &&
extensions->ARB_gpu_shader5 &&
extensions->EXT_shader_integer_mix;
}