From: Nicolai Hähnle <[email protected]>
The difference to the virtually identical ARB_robustness (which is
already
enabled unconditionally) is miniscule and handled elsewhere, but this set
of caps seems like the right thing to require for this extension.
---
docs/features.txt | 2 +-
docs/relnotes/12.1.0.html | 1 +
src/mesa/state_tracker/st_extensions.c | 4 ++++
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/docs/features.txt b/docs/features.txt
index fbb3952..52d194e 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -211,21 +211,21 @@ GL 4.5, GLSL 4.50:
GL_ARB_ES3_1_compatibility DONE (i965/hsw+,
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, radeonsi, llvmpipe, softpipe, swr)
GL_ARB_derivative_control DONE (i965,
nv50, nvc0, r600, radeonsi)
GL_ARB_direct_state_access DONE (all
drivers)
GL_ARB_get_texture_sub_image DONE (all
drivers)
GL_ARB_shader_texture_image_samples DONE (i965,
nv50, nvc0, r600, radeonsi)
GL_ARB_texture_barrier DONE (i965,
nv50, nvc0, r600, radeonsi)
GL_KHR_context_flush_control DONE (all - but
needs GLX/EGL extension to be useful)
- GL_KHR_robustness DONE (i965)
+ GL_KHR_robustness DONE (i965,
radeonsi)
GL_EXT_shader_integer_mix DONE (all
drivers that support GLSL)
These are the extensions cherry-picked to make GLES 3.1
GLES3.1, GLSL ES 3.1 -- all DONE: i965/hsw+, nvc0, radeonsi
GL_ARB_arrays_of_arrays DONE (all
drivers that support GLSL 1.30)
GL_ARB_compute_shader DONE
(i965/gen7+, softpipe)
GL_ARB_draw_indirect DONE
(i965/gen7+, r600, llvmpipe, softpipe, swr)
GL_ARB_explicit_uniform_location DONE (all
drivers that support GLSL)
GL_ARB_framebuffer_no_attachments DONE
(i965/gen7+, r600, softpipe)
diff --git a/docs/relnotes/12.1.0.html b/docs/relnotes/12.1.0.html
index cdd8909..0c99f19 100644
--- a/docs/relnotes/12.1.0.html
+++ b/docs/relnotes/12.1.0.html
@@ -52,20 +52,21 @@ Note: some of the new features are only available
with certain drivers.
<li>GL_ARB_cull_distance on radeonsi</li>
<li>GL_ARB_enhanced_layouts on i965</li>
<li>GL_ARB_indirect_parameters on radeonsi</li>
<li>GL_ARB_shader_draw_parameters on radeonsi</li>
<li>GL_ARB_shader_group_vote on nvc0</li>
<li>GL_ARB_shader_viewport_layer_array on i965/gen6+</li>
<li>GL_ARB_stencil_texturing on i965/hsw</li>
<li>GL_ARB_texture_stencil8 on i965/hsw</li>
<li>GL_EXT_window_rectangles on nv50, nvc0</li>
<li>GL_KHR_blend_equation_advanced on i965</li>
+<li>GL_KHR_robustness on radeonsi</li>
<li>GL_KHR_texture_compression_astc_sliced_3d on i965</li>
<li>GL_OES_copy_image on nv50, nvc0, r600, radeonsi, softpipe,
llvmpipe</li>
<li>GL_OES_geometry_shader on i965/gen8+, nvc0, radeonsi</li>
<li>GL_OES_primitive_bounding_box on i965/gen7+, nvc0, radeonsi</li>
<li>GL_OES_texture_cube_map_array on i965/gen8+, nvc0, radeonsi</li>
<li>GL_OES_tessellation_shader on i965/gen7+, nvc0, radeonsi</li>
<li>GL_OES_viewport_array on nvc0, radeonsi</li>
<li>GL_ANDROID_extension_pack_es31a on i965/gen9+</li>
</ul>
diff --git a/src/mesa/state_tracker/st_extensions.c
b/src/mesa/state_tracker/st_extensions.c
index 4f42217..4789f2c 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -1192,20 +1192,24 @@ void st_init_extensions(struct pipe_screen
*screen,
consts->MaxComputeWorkGroupCount[i] = grid_size[i];
consts->MaxComputeWorkGroupSize[i] = block_size[i];
}
extensions->ARB_compute_shader =
extensions->ARB_shader_image_load_store &&
extensions->ARB_shader_atomic_counters;
}
}
+ extensions->KHR_robustness =
+ extensions->ARB_robust_buffer_access_behavior &&
+ screen->get_param(screen, PIPE_CAP_DEVICE_RESET_STATUS_QUERY);