Commit 946d527a by Shahbaz Youssefi Committed by Commit Bot

GL: Support OES_shader_image_atomic

Bug: angleproject:5342 Change-Id: I4fc4133b1f5bba001112c0d06764146e449c3314 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2542310Reviewed-by: 's avatarJonah Ryan-Davis <jonahr@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
parent 86d7e4d8
...@@ -1570,6 +1570,18 @@ void GenerateCaps(const FunctionsGL *functions, ...@@ -1570,6 +1570,18 @@ void GenerateCaps(const FunctionsGL *functions,
caps->maxClipDistances = 0; caps->maxClipDistances = 0;
} }
// GL_OES_shader_image_atomic
//
// Note that imageAtomicExchange() is allowed to accept float textures (of r32f format) in this
// extension, but that's not supported by ARB_shader_image_load_store which this extension is
// based on, neither in the spec it was merged into it. This support was only added to desktop
// GLSL in version 4.5
if (functions->isAtLeastGL(gl::Version(4, 5)) || functions->isAtLeastGLES(gl::Version(3, 2)) ||
functions->hasGLESExtension("GL_OES_shader_image_atomic"))
{
extensions->shaderImageAtomicOES = true;
}
// GL_OES_texture_buffer // GL_OES_texture_buffer
if (functions->isAtLeastGL(gl::Version(4, 3)) || functions->isAtLeastGLES(gl::Version(3, 2)) || if (functions->isAtLeastGL(gl::Version(4, 3)) || functions->isAtLeastGLES(gl::Version(3, 2)) ||
functions->hasGLESExtension("GL_OES_texture_buffer") || functions->hasGLESExtension("GL_OES_texture_buffer") ||
......
...@@ -110,6 +110,7 @@ ...@@ -110,6 +110,7 @@
1442 OPENGL : dEQP-GLES31.functional.program_interface_query.uniform.random.* = FAIL 1442 OPENGL : dEQP-GLES31.functional.program_interface_query.uniform.random.* = FAIL
1442 OPENGL : dEQP-GLES31.functional.program_interface_query.uniform_block.referenced_by.* = FAIL 1442 OPENGL : dEQP-GLES31.functional.program_interface_query.uniform_block.referenced_by.* = FAIL
4933 OPENGL : dEQP-GLES31.functional.texture.texture_buffer.render_modify.as_fragment_texture.mapbuffer_* = FAIL 4933 OPENGL : dEQP-GLES31.functional.texture.texture_buffer.render_modify.as_fragment_texture.mapbuffer_* = FAIL
5353 NVIDIA OPENGL : dEQP-GLES31.functional.image_load_store.*.atomic.exchange_r32f* = FAIL
// Slow / timeout on Linux GL // Slow / timeout on Linux GL
5197 LINUX OPENGL : dEQP-GLES31.functional.compute.indirect_dispatch.gen_in_compute.large_offset = TIMEOUT 5197 LINUX OPENGL : dEQP-GLES31.functional.compute.indirect_dispatch.gen_in_compute.large_offset = TIMEOUT
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment