Skip SwANGLE GLES31 tests which crash with 32-bit Subzero. Started with https://swiftshader-review.googlesource.com/c/SwiftShader/+/42108 Bug: angleproject:4482 Change-Id: I48effe26aa7ce1b574f9df8ad9c3f560cb599cf3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2104406 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
diff --git a/src/tests/deqp_support/deqp_gles31_test_expectations.txt b/src/tests/deqp_support/deqp_gles31_test_expectations.txt index ba2f7db..05bfaaa 100644 --- a/src/tests/deqp_support/deqp_gles31_test_expectations.txt +++ b/src/tests/deqp_support/deqp_gles31_test_expectations.txt
@@ -105,6 +105,12 @@ 3865 D3D11 : dEQP-GLES31.functional.compute.basic.copy_image_to_ssbo_large = FAIL 3865 D3D11 : dEQP-GLES31.functional.compute.basic.copy_ssbo_to_image_large = FAIL +// Simultaneous use of GL_CONSTANT_ALPHA/GL_ONE_MINUS_CONSTANT_ALPHA and GL_CONSTANT_COLOR/GL_ONE_MINUS_CONSTANT_COLOR as color factors +4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.4 = FAIL +4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.7 = FAIL +4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.9 = FAIL +4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.15 = FAIL + // Failing with dEQP roll 3447 D3D11 : dEQP-GLES31.functional.ssbo.layout.random.all_per_block_buffers.22 = FAIL 3447 D3D11 : dEQP-GLES31.functional.ssbo.layout.random.all_per_block_buffers.41 = FAIL @@ -185,6 +191,19 @@ 3881 VULKAN : dEQP-GLES31.functional.program_interface_query.uniform.location.default_block.array.array.image_2d = SKIP 3881 VULKAN : dEQP-GLES31.functional.program_interface_query.uniform.location.default_block.array.array.iimage_2d_array = SKIP +// Crashes in x86 Subzero Reactor +4482 SWIFTSHADER : dEQP-GLES31.functional.compute.basic.shared_atomic_op_* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.compute.basic.shared_var_* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.compute.basic.ssbo_local_barrier_* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.compute.shared_var.* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.image_load_store.2d.qualifiers.* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.image_load_store.2d_array.qualifiers.* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.image_load_store.3d.qualifiers.* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.image_load_store.cube.qualifiers.* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.ssbo.atomic.compswap.* = SKIP +4482 SWIFTSHADER : dEQP-GLES31.functional.synchronization.inter_invocation.* = SKIP + + //// //// General Vulkan expectations //// @@ -262,8 +281,3 @@ 4371 VULKAN ANDROID : dEQP-GLES31.functional.shaders.implicit_conversions.es31.arithmetic.input_before_literal.add.int_to_uvec3_vertex = FAIL 4371 SWIFTSHADER : dEQP-GLES31.functional.shaders.implicit_conversions.* = FAIL -// Simultaneous use of GL_CONSTANT_ALPHA/GL_ONE_MINUS_CONSTANT_ALPHA and GL_CONSTANT_COLOR/GL_ONE_MINUS_CONSTANT_COLOR as color factors -4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.4 = FAIL -4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.7 = FAIL -4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.9 = FAIL -4394 D3D11 : dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.15 = FAIL
diff --git a/src/tests/gl_tests/ComputeShaderTest.cpp b/src/tests/gl_tests/ComputeShaderTest.cpp index 4cc568b..3b1e481 100644 --- a/src/tests/gl_tests/ComputeShaderTest.cpp +++ b/src/tests/gl_tests/ComputeShaderTest.cpp
@@ -1721,6 +1721,11 @@ // order of multiple shader invocations in compute shader. TEST_P(ComputeShaderTest, groupMemoryBarrierAndBarrierTest) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + // TODO(xinghua.cao@intel.com): Figure out why we get this error message // that shader uses features not recognized by this D3D version. ANGLE_SKIP_TEST_IF((IsAMD() || IsNVIDIA()) && IsD3D11()); @@ -1882,6 +1887,11 @@ // Verify shared non-array variables can work correctly. TEST_P(ComputeShaderTest, NonArraySharedVariable) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + const char kCSShader[] = R"(#version 310 es layout (local_size_x = 2, local_size_y = 2, local_size_z = 1) in; layout (r32ui, binding = 0) readonly uniform highp uimage2D srcImage; @@ -1915,6 +1925,11 @@ // Verify shared non-struct array variables can work correctly. TEST_P(ComputeShaderTest, NonStructArrayAsSharedVariable) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + const char kCSShader[] = R"(#version 310 es layout (local_size_x = 2, local_size_y = 2, local_size_z = 1) in; layout (r32ui, binding = 0) readonly uniform highp uimage2D srcImage; @@ -1939,6 +1954,11 @@ // Verify shared struct array variables work correctly. TEST_P(ComputeShaderTest, StructArrayAsSharedVariable) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + const char kCSShader[] = R"(#version 310 es layout (local_size_x = 2, local_size_y = 2, local_size_z = 1) in; layout (r32ui, binding = 0) readonly uniform highp uimage2D srcImage; @@ -1967,6 +1987,11 @@ // Verify using atomic functions without return value can work correctly. TEST_P(ComputeShaderTest, AtomicFunctionsNoReturnValue) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + // Fails on AMD windows drivers. http://anglebug.com/3872 ANGLE_SKIP_TEST_IF(IsWindows() && IsAMD() && IsVulkan()); @@ -2033,6 +2058,11 @@ // Verify using atomic functions in a non-initializer single assignment can work correctly. TEST_P(ComputeShaderTest, AtomicFunctionsInNonInitializerSingleAssignment) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + // Fails on AMD windows drivers. http://anglebug.com/3872 ANGLE_SKIP_TEST_IF(IsWindows() && IsAMD() && IsVulkan()); @@ -2082,6 +2112,11 @@ // Verify using atomic functions in an initializers and using unsigned int works correctly. TEST_P(ComputeShaderTest, AtomicFunctionsInitializerWithUnsigned) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + // Fails on AMD windows drivers. http://anglebug.com/3872 ANGLE_SKIP_TEST_IF(IsWindows() && IsAMD() && IsVulkan()); @@ -2142,6 +2177,11 @@ // Verify using atomic functions inside expressions as unsigned int. TEST_P(ComputeShaderTest, AtomicFunctionsReturnWithUnsigned) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + // Fails on AMD windows drivers. http://anglebug.com/3872 ANGLE_SKIP_TEST_IF(IsWindows() && IsAMD() && IsVulkan()); @@ -2192,6 +2232,11 @@ // Verify using nested atomic functions in expressions. TEST_P(ComputeShaderTest, AtomicFunctionsReturnWithMultipleTypes) { + // Crashes on 32-bit SwiftShader Subzero. http://anglebug.com/4482 +#if defined(ANGLE_IS_32_BIT_CPU) + ANGLE_SKIP_TEST_IF(isSwiftshader()); +#endif + constexpr char kCShader[] = R"(#version 310 es layout (local_size_x = 4, local_size_y = 1, local_size_z = 1) in; layout (r32ui, binding = 0) readonly uniform highp uimage2D srcImage;