From 1ca256b76292ee681268b07939266a8f13599700 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 14 Feb 2024 11:22:57 -0400 Subject: [PATCH] docs: update for GL4.6 and ES3.2 on asahi https://rosenzweig.io/blog/conformant-gl46-on-the-m1.html Signed-off-by: Alyssa Rosenzweig Part-of: --- docs/features.txt | 146 ++++++++++++++++----------------- docs/relnotes/new_features.txt | 2 + 2 files changed, 75 insertions(+), 73 deletions(-) diff --git a/docs/features.txt b/docs/features.txt index e18beba93ce..062d7571b8f 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -91,7 +91,7 @@ GL 3.2, GLSL 1.50 --- all DONE: freedreno, nv50, nvc0, r600, radeonsi, llvmpipe, GL_ARB_fragment_coord_conventions (Frag shader coord) DONE (v3d, vc4, panfrost, lima, crocus) GL_ARB_provoking_vertex (Provoking vertex) DONE (v3d, vc4, panfrost, lima, crocus) GL_ARB_seamless_cube_map (Seamless cubemaps) DONE (panfrost, crocus) - GL_ARB_texture_multisample (Multisample textures) DONE (freedreno/a5xx+, v3d, vc4, panfrost, asahi) + GL_ARB_texture_multisample (Multisample textures) DONE (freedreno/a5xx+, v3d, vc4, panfrost) GL_ARB_depth_clamp (Frag depth clamp) DONE (panfrost, crocus) GL_ARB_sync (Fence objects) DONE (v3d, vc4, panfrost, lima, crocus) GLX_ARB_create_context_profile DONE @@ -111,43 +111,43 @@ GL 3.3, GLSL 3.30 --- all DONE: freedreno, nv50, nvc0, r600, radeonsi, llvmpipe, GL_ARB_vertex_type_2_10_10_10_rev DONE (v3d, panfrost) -GL 4.0, GLSL 4.00 --- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7+ +GL 4.0, GLSL 4.00 --- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7+, asahi - GL_ARB_draw_buffers_blend DONE (freedreno, nv50, softpipe, panfrost, v3d, asahi, crocus/gen6+) - GL_ARB_draw_indirect DONE (freedreno, softpipe, v3d, asahi) - GL_ARB_gpu_shader5 DONE (freedreno/a6xx, asahi) - - 'precise' qualifier DONE (softpipe, asahi) - - Dynamically uniform sampler array indices DONE (softpipe, asahi) - - Dynamically uniform UBO array indices DONE (freedreno, softpipe, asahi) - - Implicit signed -> unsigned conversions DONE (softpipe, asahi) - - Fused multiply-add DONE (softpipe, asahi) - - Packing/bitfield/conversion functions DONE (freedreno, softpipe, panfrost, asahi) - - Enhanced textureGather DONE (freedreno, softpipe, panfrost, asahi) - - Geometry shader instancing DONE (softpipe, asahi) - - Geometry shader multiple streams DONE (softpipe, asahi) - - Enhanced per-sample shading DONE (asahi) - - Interpolation functions DONE (softpipe, asahi) - - New overload resolution rules DONE (softpipe, asahi) + GL_ARB_draw_buffers_blend DONE (freedreno, nv50, softpipe, panfrost, v3d, crocus/gen6+) + GL_ARB_draw_indirect DONE (freedreno, softpipe, v3d) + GL_ARB_gpu_shader5 DONE (freedreno/a6xx) + - 'precise' qualifier DONE (softpipe) + - Dynamically uniform sampler array indices DONE (softpipe) + - Dynamically uniform UBO array indices DONE (freedreno, softpipe) + - Implicit signed -> unsigned conversions DONE (softpipe) + - Fused multiply-add DONE (softpipe) + - Packing/bitfield/conversion functions DONE (freedreno, softpipe, panfrost) + - Enhanced textureGather DONE (freedreno, softpipe, panfrost) + - Geometry shader instancing DONE (softpipe) + - Geometry shader multiple streams DONE (softpipe) + - Enhanced per-sample shading DONE () + - Interpolation functions DONE (softpipe) + - New overload resolution rules DONE (softpipe) GL_ARB_gpu_shader_fp64 DONE (freedreno/a6xx, softpipe) - GL_ARB_sample_shading DONE (freedreno/a6xx, nv50, panfrost, crocus/gen6+, asahi) + GL_ARB_sample_shading DONE (freedreno/a6xx, nv50, panfrost, crocus/gen6+) GL_ARB_shader_subroutine DONE (freedreno, nv50, softpipe, crocus/gen6+) GL_ARB_tessellation_shader DONE (freedreno/a6xx) - GL_ARB_texture_buffer_object_rgb32 DONE (freedreno, softpipe, panfrost, asahi, crocus/gen6+) - GL_ARB_texture_cube_map_array DONE (freedreno/a4xx+, nv50, softpipe, v3d, crocus/gen6+, asahi) - GL_ARB_texture_gather DONE (freedreno, nv50, softpipe, v3d, panfrost, asahi) + GL_ARB_texture_buffer_object_rgb32 DONE (freedreno, softpipe, panfrost, crocus/gen6+) + GL_ARB_texture_cube_map_array DONE (freedreno/a4xx+, nv50, softpipe, v3d, crocus/gen6+) + GL_ARB_texture_gather DONE (freedreno, nv50, softpipe, v3d, panfrost) GL_ARB_texture_query_lod DONE (freedreno, nv50, softpipe, v3d, panfrost, crocus/gen5+) - GL_ARB_transform_feedback2 DONE (freedreno/a3xx+, nv50, softpipe, v3d, panfrost, asahi, crocus/gen6+) - GL_ARB_transform_feedback3 DONE (freedreno/a3xx+, softpipe, asahi) + GL_ARB_transform_feedback2 DONE (freedreno/a3xx+, nv50, softpipe, v3d, panfrost, crocus/gen6+) + GL_ARB_transform_feedback3 DONE (freedreno/a3xx+, softpipe) -GL 4.1, GLSL 4.10 --- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7+ +GL 4.1, GLSL 4.10 --- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7+, asahi - GL_ARB_ES2_compatibility DONE (freedreno, nv50, softpipe, v3d, vc4, panfrost, lima, asahi, crocus) - GL_ARB_get_program_binary DONE (freedreno, v3d, asahi, 0 or 1 binary formats) + GL_ARB_ES2_compatibility DONE (freedreno, nv50, softpipe, v3d, vc4, panfrost, lima, crocus) + GL_ARB_get_program_binary DONE (freedreno, v3d, 0 or 1 binary formats) GL_ARB_separate_shader_objects DONE (all drivers) - GL_ARB_shader_precision DONE (freedreno/a6xx, all drivers that support GLSL 4.10, asahi) + GL_ARB_shader_precision DONE (freedreno/a6xx, all drivers that support GLSL 4.10) GL_ARB_vertex_attrib_64bit DONE (freedreno/a6xx, softpipe) - GL_ARB_viewport_array DONE (freedreno/a6xx, nv50, softpipe, crocus/gen6+, asahi) + GL_ARB_viewport_array DONE (freedreno/a6xx, nv50, softpipe, crocus/gen6+) GL 4.2, GLSL 4.20 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7+, asahi @@ -166,38 +166,38 @@ GL 4.2, GLSL 4.20 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, v GL_ARB_map_buffer_alignment DONE (all drivers) -GL 4.3, GLSL 4.30 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7.5+ +GL 4.3, GLSL 4.30 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, d3d12, iris, crocus/gen7.5+, asahi GL_ARB_arrays_of_arrays DONE (all drivers that support GLSL 1.30) GL_ARB_ES3_compatibility DONE (all drivers that support GLSL 3.30) GL_ARB_clear_buffer_object DONE (all drivers) - GL_ARB_compute_shader DONE (freedreno/a5xx+, softpipe, v3d, panfrost, crocus/gen7+, asahi) + GL_ARB_compute_shader DONE (freedreno/a5xx+, softpipe, v3d, panfrost, crocus/gen7+) GL_ARB_copy_image DONE (freedreno/a6xx, nv50, softpipe, v3d, crocus) GL_KHR_debug DONE (all drivers) GL_ARB_explicit_uniform_location DONE (all drivers that support GLSL) - GL_ARB_fragment_layer_viewport DONE (freedreno/a6xx, nv50, softpipe, crocus/gen6+, asahi) - GL_ARB_framebuffer_no_attachments DONE (freedreno, softpipe, v3d, asahi, crocus/gen7+) + GL_ARB_fragment_layer_viewport DONE (freedreno/a6xx, nv50, softpipe, crocus/gen6+) + GL_ARB_framebuffer_no_attachments DONE (freedreno, softpipe, v3d, crocus/gen7+) GL_ARB_internalformat_query2 DONE (all drivers) GL_ARB_invalidate_subdata DONE (all drivers) - GL_ARB_multi_draw_indirect DONE (freedreno, softpipe, v3d, crocus/gen7+, asahi) + GL_ARB_multi_draw_indirect DONE (freedreno, softpipe, v3d, crocus/gen7+) GL_ARB_program_interface_query DONE (all drivers) GL_ARB_robust_buffer_access_behavior DONE (freedreno) - GL_ARB_shader_image_size DONE (freedreno/a5xx+, softpipe, v3d, panfrost, crocus/gen7+, asahi) - GL_ARB_shader_storage_buffer_object DONE (freedreno/a5xx+, softpipe, v3d, panfrost, crocus/gen7+, asahi) - GL_ARB_stencil_texturing DONE (freedreno, nv50, softpipe, v3d, panfrost, asahi) + GL_ARB_shader_image_size DONE (freedreno/a5xx+, softpipe, v3d, panfrost, crocus/gen7+) + GL_ARB_shader_storage_buffer_object DONE (freedreno/a5xx+, softpipe, v3d, panfrost, crocus/gen7+) + GL_ARB_stencil_texturing DONE (freedreno, nv50, softpipe, v3d, panfrost) GL_ARB_texture_buffer_range DONE (freedreno, nv50, softpipe, v3d, crocus) GL_ARB_texture_query_levels DONE (all drivers that support GLSL 1.30) GL_ARB_texture_storage_multisample DONE (all drivers that support GL_ARB_texture_multisample) - GL_ARB_texture_view DONE (freedreno, nv50, softpipe, v3d, asahi, crocus/gen7+) + GL_ARB_texture_view DONE (freedreno, nv50, softpipe, v3d, crocus/gen7+) GL_ARB_vertex_attrib_binding DONE (all drivers) -GL 4.4, GLSL 4.40 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, iris, crocus/gen7.5+, d3d12 +GL 4.4, GLSL 4.40 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, iris, crocus/gen7.5+, d3d12, asahi GL_MAX_VERTEX_ATTRIB_STRIDE DONE (all drivers) - GL_ARB_buffer_storage DONE (freedreno, nv50, v3d, vc4, lima, panfrost, asahi, softpipe, etnaviv, crocus) + GL_ARB_buffer_storage DONE (freedreno, nv50, v3d, vc4, lima, panfrost, softpipe, etnaviv, crocus) GL_ARB_clear_texture DONE (all drivers) - GL_ARB_enhanced_layouts DONE (freedreno/a3xx+, nv50, softpipe, crocus, asahi) + GL_ARB_enhanced_layouts DONE (freedreno/a3xx+, nv50, softpipe, crocus) - compile-time constant expressions DONE - explicit byte offsets for blocks DONE - forced alignment within blocks DONE @@ -206,37 +206,37 @@ GL 4.4, GLSL 4.40 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, v - input/output block locations DONE GL_ARB_multi_bind DONE (all drivers) GL_ARB_query_buffer_object DONE (freedreno/a6xx) - GL_ARB_texture_mirror_clamp_to_edge DONE (freedreno, nv50, softpipe, v3d, panfrost, asahi, crocus) - GL_ARB_texture_stencil8 DONE (freedreno, nv50, softpipe, v3d, panfrost, asahi) - GL_ARB_vertex_type_10f_11f_11f_rev DONE (freedreno, nv50, softpipe, panfrost, asahi, crocus) + GL_ARB_texture_mirror_clamp_to_edge DONE (freedreno, nv50, softpipe, v3d, panfrost, crocus) + GL_ARB_texture_stencil8 DONE (freedreno, nv50, softpipe, v3d, panfrost) + GL_ARB_vertex_type_10f_11f_11f_rev DONE (freedreno, nv50, softpipe, panfrost, crocus) -GL 4.5, GLSL 4.50 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, iris, crocus/gen7.5+, d3d12 +GL 4.5, GLSL 4.50 -- all DONE: freedreno/a6xx, nvc0, r600, radeonsi, llvmpipe, virgl, zink, iris, crocus/gen7.5+, d3d12, asahi GL_ARB_ES3_1_compatibility DONE (freedreno/a6xx, softpipe) - GL_ARB_clip_control DONE (freedreno, nv50, softpipe, lima, crocus, asahi) - GL_ARB_conditional_render_inverted DONE (freedreno, nv50, softpipe, panfrost, asahi, crocus/gen6+) - GL_ARB_cull_distance DONE (freedreno/a6xx, nv50, softpipe, crocus/gen6+, asahi) - GL_ARB_derivative_control DONE (freedreno/a3xx+, nv50, softpipe, asahi, crocus/gen7+) + GL_ARB_clip_control DONE (freedreno, nv50, softpipe, lima, crocus) + GL_ARB_conditional_render_inverted DONE (freedreno, nv50, softpipe, panfrost, crocus/gen6+) + GL_ARB_cull_distance DONE (freedreno/a6xx, nv50, softpipe, crocus/gen6+) + GL_ARB_derivative_control DONE (freedreno/a3xx+, nv50, softpipe, crocus/gen7+) GL_ARB_direct_state_access DONE (all drivers) GL_ARB_get_texture_sub_image DONE (all drivers) - GL_ARB_shader_texture_image_samples DONE (freedreno/a3xx+, nv50, crocus/gen7+, asahi) + GL_ARB_shader_texture_image_samples DONE (freedreno/a3xx+, nv50, crocus/gen7+) GL_ARB_texture_barrier DONE (freedreno, nv50, vc4, lima, crocus) GL_KHR_context_flush_control DONE (all - but needs GLX/EGL extension to be useful) GL_KHR_robustness DONE (freedreno) GL_EXT_shader_integer_mix DONE (all drivers that support GLSL) -GL 4.6, GLSL 4.60 -- all DONE: radeonsi, virgl, zink, iris, crocus/gen7+, d3d12 +GL 4.6, GLSL 4.60 -- all DONE: radeonsi, virgl, zink, iris, crocus/gen7+, d3d12, asahi GL_ARB_gl_spirv DONE (freedreno, llvmpipe) - GL_ARB_indirect_parameters DONE (freedreno/a6xx+, nvc0, llvmpipe, virgl, asahi) + GL_ARB_indirect_parameters DONE (freedreno/a6xx+, nvc0, llvmpipe, virgl) GL_ARB_pipeline_statistics_query DONE (freedreno/a6xx+, nvc0, r600, llvmpipe, softpipe, crocus/gen6+) GL_ARB_polygon_offset_clamp DONE (freedreno, nv50, nvc0, r600, llvmpipe, v3d, panfrost, crocus) GL_ARB_shader_atomic_counter_ops DONE (freedreno/a5xx+, nvc0, r600, llvmpipe, softpipe, v3d) GL_ARB_shader_draw_parameters DONE (freedreno/a6xx+, llvmpipe, nvc0, crocus/gen6+) GL_ARB_shader_group_vote DONE (freedreno/a6xx, nvc0, llvmpipe, crocus) GL_ARB_spirv_extensions DONE (freedreno, llvmpipe) - GL_ARB_texture_filter_anisotropic DONE (etnaviv/HALTI0, freedreno, nv50, nvc0, r600, softpipe, llvmpipe, v3d, panfrost/g72+, asahi, crocus) - GL_ARB_transform_feedback_overflow_query DONE (freedreno/a6xx+, nvc0, llvmpipe, softpipe, crocus/gen6+, asahi) + GL_ARB_texture_filter_anisotropic DONE (etnaviv/HALTI0, freedreno, nv50, nvc0, r600, softpipe, llvmpipe, v3d, panfrost/g72+, crocus) + GL_ARB_transform_feedback_overflow_query DONE (freedreno/a6xx+, nvc0, llvmpipe, softpipe, crocus/gen6+) GL_KHR_no_error DONE (all drivers) These are the extensions cherry-picked to make GLES 3.1 @@ -246,7 +246,7 @@ GLES3.1, GLSL ES 3.1 -- all DONE: freedreno/a5xx+, nvc0, r600, radeonsi, virgl, GL_ARB_compute_shader DONE (freedreno/a5xx+, crocus/gen7+) GL_ARB_draw_indirect DONE (freedreno, crocus/gen7+) GL_ARB_explicit_uniform_location DONE (all drivers that support GLSL) - GL_ARB_framebuffer_no_attachments DONE (freedreno, softpipe, asahi, crocus/gen7+) + GL_ARB_framebuffer_no_attachments DONE (freedreno, softpipe, crocus/gen7+) GL_ARB_program_interface_query DONE (all drivers) GL_ARB_shader_atomic_counters DONE (freedreno/a5xx+, crocus/gen7+) GL_ARB_shader_image_load_store DONE (freedreno/a5xx+, crocus/gen7+) @@ -268,28 +268,28 @@ GLES3.1, GLSL ES 3.1 -- all DONE: freedreno/a5xx+, nvc0, r600, radeonsi, virgl, glGetBooleani_v - restrict to GLES enums gl_HelperInvocation support DONE (r600, panfrost, crocus) -GLES3.2, GLSL ES 3.2 -- all DONE: freedreno/a6xx, radeonsi, virgl, llvmpipe, zink, iris, crocus/gen7.5+ +GLES3.2, GLSL ES 3.2 -- all DONE: freedreno/a6xx, radeonsi, virgl, llvmpipe, zink, iris, crocus/gen7.5+, asahi GL_EXT_color_buffer_float DONE (all drivers) - GL_KHR_blend_equation_advanced DONE (freedreno/a6xx, nvc0, panfrost, asahi, crocus/gen4.5+) + GL_KHR_blend_equation_advanced DONE (freedreno/a6xx, nvc0, panfrost, crocus/gen4.5+) GL_KHR_debug DONE (all drivers) GL_KHR_robustness DONE (freedreno, nvc0, r600) - GL_KHR_texture_compression_astc_ldr DONE (freedreno, r600, v3d, vc4, panfrost, softpipe, lima, asahi, crocus/gen6+) + GL_KHR_texture_compression_astc_ldr DONE (freedreno, r600, v3d, vc4, panfrost, softpipe, lima, crocus/gen6+) GL_OES_copy_image DONE (all drivers) GL_OES_draw_buffers_indexed DONE (all drivers that support GL_ARB_draw_buffers_blend) GL_OES_draw_elements_base_vertex DONE (all drivers) - GL_OES_geometry_shader DONE (freedreno/a6xx, nvc0, r600, softpipe, v3d, asahi) - GL_OES_gpu_shader5 DONE (freedreno/a6xx, asahi, all drivers that support GL_ARB_gpu_shader5) + GL_OES_geometry_shader DONE (freedreno/a6xx, nvc0, r600, softpipe, v3d) + GL_OES_gpu_shader5 DONE (freedreno/a6xx, all drivers that support GL_ARB_gpu_shader5) GL_OES_primitive_bounding_box DONE (freedreno/a5xx+, nvc0, r600, softpipe, v3d) - GL_OES_sample_shading DONE (freedreno/a6xx, asahi, nvc0, r600, panfrost, d3d12) - GL_OES_sample_variables DONE (freedreno/a6xx, asahi, nvc0, r600, panfrost/bifrost, crocus/gen7+) - GL_OES_shader_image_atomic DONE (asahi, v3d, all drivers that support GL_ARB_shader_image_load_store) + GL_OES_sample_shading DONE (freedreno/a6xx, nvc0, r600, panfrost, d3d12) + GL_OES_sample_variables DONE (freedreno/a6xx, nvc0, r600, panfrost/bifrost, crocus/gen7+) + GL_OES_shader_image_atomic DONE (v3d, all drivers that support GL_ARB_shader_image_load_store) GL_OES_shader_io_blocks DONE (All drivers that support GLES 3.1) - GL_OES_shader_multisample_interpolation DONE (freedreno/a6xx, nvc0, r600, asahi) + GL_OES_shader_multisample_interpolation DONE (freedreno/a6xx, nvc0, r600) GL_OES_tessellation_shader DONE (freedreno/a6xx, all drivers that support GL_ARB_tessellation_shader) GL_OES_texture_border_clamp DONE (all drivers) - GL_OES_texture_buffer DONE (freedreno, nvc0, r600, softpipe, panfrost, asahi, crocus/gen6+) - GL_OES_texture_cube_map_array DONE (freedreno/a4xx+, nvc0, r600, softpipe, asahi) + GL_OES_texture_buffer DONE (freedreno, nvc0, r600, softpipe, panfrost, crocus/gen6+) + GL_OES_texture_cube_map_array DONE (freedreno/a4xx+, nvc0, r600, softpipe) GL_OES_texture_stencil8 DONE (all drivers that support GL_ARB_texture_stencil8) GL_OES_texture_storage_multisample_2d_array DONE (all drivers that support GL_ARB_texture_multisample) @@ -297,19 +297,19 @@ Khronos, ARB, and OES extensions that are not part of any OpenGL or OpenGL ES ve GL_ARB_bindless_texture DONE (nvc0, radeonsi, zink) GL_ARB_cl_event not started - GL_ARB_compute_variable_group_size DONE (freedreno/a4xx+, nvc0, radeonsi, zink, iris, crocus/gen7+) - GL_ARB_ES3_2_compatibility DONE (freedreno/a6xx, radeonsi, virgl, zink, iris, crocus/gen7.5+) + GL_ARB_compute_variable_group_size DONE (freedreno/a4xx+, nvc0, radeonsi, zink, iris, crocus/gen7+, asahi) + GL_ARB_ES3_2_compatibility DONE (freedreno/a6xx, radeonsi, virgl, zink, iris, crocus/gen7.5+, asahi) GL_ARB_fragment_shader_interlock DONE (zink, iris/gen9+) - GL_ARB_gpu_shader_int64 DONE (freedreno/a6xx, nvc0, radeonsi, softpipe, llvmpipe, zink, d3d12, iris, crocus/gen8) - GL_ARB_parallel_shader_compile DONE (freedreno, radeonsi, etnaviv, zink, iris, crocus/gen6+) + GL_ARB_gpu_shader_int64 DONE (freedreno/a6xx, nvc0, radeonsi, softpipe, llvmpipe, zink, d3d12, iris, crocus/gen8, asahi) + GL_ARB_parallel_shader_compile DONE (freedreno, radeonsi, etnaviv, zink, iris, crocus/gen6+, asahi) GL_ARB_post_depth_coverage DONE (freedreno/a6xx, nvc0, radeonsi, llvmpipe, zink, iris/gen9+) GL_ARB_robustness_isolation not started GL_ARB_sample_locations DONE (freedreno/a6xx, nvc0, zink) GL_ARB_seamless_cubemap_per_texture DONE (etnaviv/SEAMLESS_CUBE_MAP, freedreno, nvc0, r600, radeonsi, softpipe, virgl, zink, asahi, iris, crocus) - GL_ARB_shader_ballot DONE (nvc0, radeonsi, zink, iris, crocus/gen8, d3d12) + GL_ARB_shader_ballot DONE (nvc0, radeonsi, zink, iris, crocus/gen8, d3d12, asahi) GL_ARB_shader_clock DONE (nv50, nvc0, r600, radeonsi, llvmpipe, virgl, zink, iris, crocus/gen7+) GL_ARB_shader_stencil_export DONE (r600, radeonsi, softpipe, llvmpipe, virgl, panfrost, zink, asahi, iris/gen9+) - GL_ARB_shader_viewport_layer_array DONE (freedreno/a6xx, nvc0, radeonsi, zink, iris, crocus/gen6+) + GL_ARB_shader_viewport_layer_array DONE (freedreno/a6xx, nvc0, radeonsi, zink, iris, crocus/gen6+, asahi) GL_ARB_shading_language_include DONE GL_ARB_sparse_buffer DONE (radeonsi/gfx9+, zink) GL_ARB_sparse_texture DONE (radeonsi/gfx9+, zink) @@ -319,13 +319,13 @@ Khronos, ARB, and OES extensions that are not part of any OpenGL or OpenGL ES ve GL_ARM_shader_framebuffer_fetch_depth_stencil DONE (llvmpipe) GL_EXT_shader_framebuffer_fetch DONE (freedreno/a6xx, iris/gen9+, llvmpipe, panfrost, virgl, zink, asahi) GL_EXT_shader_framebuffer_fetch_non_coherent DONE (freedreno/a6xx, iris, llvmpipe, panfrost, virgl, zink, asahi) - GL_EXT_color_buffer_half_float DONE (freedreno, iris, llvmpipe, nv50, nvc0, radeonsi, zink, crocus) + GL_EXT_color_buffer_half_float DONE (freedreno, iris, llvmpipe, nv50, nvc0, radeonsi, zink, crocus, asahi) GL_EXT_depth_bounds_test DONE (freedreno/a6xx, nv50, nvc0, radeonsi, softpipe, zink, iris/gen12+) GL_EXT_memory_object DONE (freedreno, radeonsi, llvmpipe, zink, d3d12, iris, crocus/gen7+) GL_EXT_memory_object_fd DONE (freedreno, radeonsi, llvmpipe, zink, iris, crocus/gen7+) GL_EXT_memory_object_win32 DONE (zink, d3d12) GL_EXT_multisampled_render_to_texture DONE (freedreno/a6xx, panfrost, zink, lima) - GL_EXT_render_snorm DONE (freedreno/a6xx, r600, radeonsi, softpipe, zink, panfrost/bifrost+, iris) + GL_EXT_render_snorm DONE (freedreno/a6xx, r600, radeonsi, softpipe, zink, panfrost/bifrost+, iris, asahi) GL_EXT_semaphore DONE (radeonsi, zink, d3d12, iris, crocus) GL_EXT_semaphore_fd DONE (radeonsi, zink, iris, crocus) GL_EXT_semaphore_win32 DONE (zink, d3d12) diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt index bd440b42668..0d5fea70fb4 100644 --- a/docs/relnotes/new_features.txt +++ b/docs/relnotes/new_features.txt @@ -5,3 +5,5 @@ VK_KHR_index_type_uint8 on RADV VK_KHR_shader_expect_assume on all Vulkan drivers VK_KHR_shader_maximal_reconvergence on RADV VK_KHR_shader_quad_control on RADV +OpenGL 4.6 on Asahi +OpenGL ES 3.2 on Asahi