From: Eric Anholt Date: Fri, 9 Aug 2019 17:32:40 +0000 (-0700) Subject: gitlab-ci: Enable the GLES2/3 CTS on softpipe. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=553cd82d64c25f5d790a48e082c47b1d523ecfd2;p=mesa.git gitlab-ci: Enable the GLES2/3 CTS on softpipe. The GLES2 CTS takes about 8 minutes of total runtime (at parallel 4 is ~2 minutes in the test stage if runners are free), while GLES3 takes about 25. Since the GLES3 run is pretty expensive, just do a cheap touch test of 1 out of every 10 tests in the test list on MRs, until we can get the runtime down. v2: Drop the full run for now until we can bring runtime down or bring up a dedicated mesa runner. Reviewed-by: Eric Engestrom (v1) Reviewed-By: Gert Wollny (v1) --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 22aa424b7ae..98dc3fcc703 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -352,3 +352,31 @@ test-llvmpipe-gles2: extends: .deqp-test dependencies: - meson-main + +test-softpipe-gles2: + parallel: 4 + variables: + DEQP_VER: gles2 + DEQP_EXPECTED_FAILS: deqp-softpipe-fails.txt + LIBGL_ALWAYS_SOFTWARE: "true" + DEQP_RENDERER_MATCH: "softpipe" + GALLIUM_DRIVER: "softpipe" + extends: .deqp-test + dependencies: + - meson-main + +# The GLES2 CTS run takes about 8 minutes of CPU time, while GLES3 is +# 25 minutes. Until we can get its runtime down, just do a partial +# (every 10 tests) run. +test-softpipe-gles3-limited: + variables: + DEQP_VER: gles3 + DEQP_EXPECTED_FAILS: deqp-softpipe-fails.txt + LIBGL_ALWAYS_SOFTWARE: "true" + DEQP_RENDERER_MATCH: "softpipe" + GALLIUM_DRIVER: "softpipe" + CI_NODE_INDEX: 1 + CI_NODE_TOTAL: 10 + extends: .deqp-test + dependencies: + - meson-main diff --git a/.gitlab-ci/deqp-softpipe-fails.txt b/.gitlab-ci/deqp-softpipe-fails.txt new file mode 100644 index 00000000000..4568cd340fd --- /dev/null +++ b/.gitlab-ci/deqp-softpipe-fails.txt @@ -0,0 +1,445 @@ +dEQP-GLES2.functional.clipping.line.wide_line_clip_viewport_center +dEQP-GLES2.functional.clipping.line.wide_line_clip_viewport_corner +dEQP-GLES2.functional.clipping.point.wide_point_clip +dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_center +dEQP-GLES2.functional.clipping.point.wide_point_clip_viewport_corner +dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z +dEQP-GLES2.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z +dEQP-GLES2.functional.polygon_offset.default_displacement_with_units +dEQP-GLES2.functional.polygon_offset.fixed16_displacement_with_units +dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide +dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide +dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide +dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide +dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide +dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide +dEQP-GLES2.functional.rasterization.limits.points +dEQP-GLES2.functional.rasterization.primitives.points +dEQP-GLES3.functional.clipping.line.wide_line_clip_viewport_center +dEQP-GLES3.functional.clipping.line.wide_line_clip_viewport_corner +dEQP-GLES3.functional.clipping.point.wide_point_clip +dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_center +dEQP-GLES3.functional.clipping.point.wide_point_clip_viewport_corner +dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_neg_y_neg_z_and_neg_x_neg_y_pos_z +dEQP-GLES3.functional.clipping.triangle_vertex.clip_two.clip_pos_y_pos_z_and_neg_x_neg_y_neg_z +dEQP-GLES3.functional.draw.random.124 +dEQP-GLES3.functional.fbo.depth.depth_test_clamp.depth24_stencil8 +dEQP-GLES3.functional.fbo.depth.depth_test_clamp.depth32f_stencil8 +dEQP-GLES3.functional.fbo.depth.depth_test_clamp.depth_component16 +dEQP-GLES3.functional.fbo.depth.depth_test_clamp.depth_component24 +dEQP-GLES3.functional.fbo.depth.depth_test_clamp.depth_component32f +dEQP-GLES3.functional.fbo.depth.depth_write_clamp.depth32f_stencil8 +dEQP-GLES3.functional.fbo.depth.depth_write_clamp.depth_component32f +dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_msaa_color +dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_msaa_depth +dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_msaa_depth_stencil +dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_msaa_stencil +dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_color +dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_depth +dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_depth_stencil +dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_stencil +dEQP-GLES3.functional.fbo.msaa.2_samples.depth24_stencil8 +dEQP-GLES3.functional.fbo.msaa.2_samples.depth32f_stencil8 +dEQP-GLES3.functional.fbo.msaa.2_samples.depth_component16 +dEQP-GLES3.functional.fbo.msaa.2_samples.depth_component24 +dEQP-GLES3.functional.fbo.msaa.2_samples.depth_component32f +dEQP-GLES3.functional.fbo.msaa.2_samples.r11f_g11f_b10f +dEQP-GLES3.functional.fbo.msaa.2_samples.r16f +dEQP-GLES3.functional.fbo.msaa.2_samples.r8 +dEQP-GLES3.functional.fbo.msaa.2_samples.rg16f +dEQP-GLES3.functional.fbo.msaa.2_samples.rg8 +dEQP-GLES3.functional.fbo.msaa.2_samples.rgb10_a2 +dEQP-GLES3.functional.fbo.msaa.2_samples.rgb565 +dEQP-GLES3.functional.fbo.msaa.2_samples.rgb5_a1 +dEQP-GLES3.functional.fbo.msaa.2_samples.rgb8 +dEQP-GLES3.functional.fbo.msaa.2_samples.rgba4 +dEQP-GLES3.functional.fbo.msaa.2_samples.rgba8 +dEQP-GLES3.functional.fbo.msaa.2_samples.srgb8_alpha8 +dEQP-GLES3.functional.fbo.msaa.2_samples.stencil_index8 +dEQP-GLES3.functional.fbo.msaa.4_samples.depth24_stencil8 +dEQP-GLES3.functional.fbo.msaa.4_samples.depth32f_stencil8 +dEQP-GLES3.functional.fbo.msaa.4_samples.depth_component16 +dEQP-GLES3.functional.fbo.msaa.4_samples.depth_component24 +dEQP-GLES3.functional.fbo.msaa.4_samples.depth_component32f +dEQP-GLES3.functional.fbo.msaa.4_samples.r11f_g11f_b10f +dEQP-GLES3.functional.fbo.msaa.4_samples.r16f +dEQP-GLES3.functional.fbo.msaa.4_samples.r8 +dEQP-GLES3.functional.fbo.msaa.4_samples.rg16f +dEQP-GLES3.functional.fbo.msaa.4_samples.rg8 +dEQP-GLES3.functional.fbo.msaa.4_samples.rgb10_a2 +dEQP-GLES3.functional.fbo.msaa.4_samples.rgb565 +dEQP-GLES3.functional.fbo.msaa.4_samples.rgb5_a1 +dEQP-GLES3.functional.fbo.msaa.4_samples.rgb8 +dEQP-GLES3.functional.fbo.msaa.4_samples.rgba4 +dEQP-GLES3.functional.fbo.msaa.4_samples.rgba8 +dEQP-GLES3.functional.fbo.msaa.4_samples.srgb8_alpha8 +dEQP-GLES3.functional.fbo.msaa.4_samples.stencil_index8 +dEQP-GLES3.functional.multisample.fbo_max_samples.proportionality_alpha_to_coverage +dEQP-GLES3.functional.multisample.fbo_max_samples.proportionality_sample_coverage +dEQP-GLES3.functional.multisample.fbo_max_samples.proportionality_sample_coverage_inverted +dEQP-GLES3.functional.multisample.fbo_max_samples.sample_coverage_invert +dEQP-GLES3.functional.negative_api.buffer.blit_framebuffer_multisample +dEQP-GLES3.functional.negative_api.buffer.read_pixels_fbo_format_mismatch +dEQP-GLES3.functional.polygon_offset.default_displacement_with_units +dEQP-GLES3.functional.polygon_offset.fixed16_displacement_with_units +dEQP-GLES3.functional.polygon_offset.fixed24_displacement_with_units +dEQP-GLES3.functional.polygon_offset.float32_displacement_with_units +dEQP-GLES3.functional.rasterization.fbo.rbo_multisample_max.interpolation.lines_wide +dEQP-GLES3.functional.rasterization.fbo.rbo_multisample_max.primitives.lines_wide +dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide +dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.primitives.points +dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide +dEQP-GLES3.functional.rasterization.fbo.texture_2d.primitives.points +dEQP-GLES3.functional.rasterization.interpolation.basic.line_loop_wide +dEQP-GLES3.functional.rasterization.interpolation.basic.line_strip_wide +dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide +dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide +dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide +dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide +dEQP-GLES3.functional.rasterization.primitives.points +dEQP-GLES3.functional.rasterizer_discard.basic.write_depth_points +dEQP-GLES3.functional.rasterizer_discard.basic.write_stencil_points +dEQP-GLES3.functional.rasterizer_discard.fbo.write_depth_points +dEQP-GLES3.functional.rasterizer_discard.fbo.write_stencil_points +dEQP-GLES3.functional.rasterizer_discard.scissor.write_depth_points +dEQP-GLES3.functional.rasterizer_discard.scissor.write_stencil_points +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fastest.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa2.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.nicest.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdx.texture.msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fastest.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa2.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.nicest.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.dfdy.texture.msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fastest.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.float_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.float_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.vec2_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.vec3_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.vec4_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa2.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.nicest.fbo_msaa4.vec4_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.float_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.float_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.vec2_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.vec2_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.vec3_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.vec3_mediump +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.vec4_highp +dEQP-GLES3.functional.shaders.derivate.fwidth.texture.msaa4.vec4_mediump +dEQP-GLES3.functional.state_query.integers.max_samples_getfloat +dEQP-GLES3.functional.state_query.integers.max_samples_getinteger64 +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_clamp_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_clamp_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_clamp_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_mirror_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_mirror_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_mirror_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_linear_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_linear_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_nearest_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_nearest_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_nearest_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_nearest_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_nearest_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_linear_nearest_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_linear_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_nearest_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_nearest_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_nearest_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_nearest_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_nearest_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_mipmap_nearest_nearest_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_clamp_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_clamp_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_clamp_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_mirror_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_mirror_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_mirror_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.linear_nearest_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_linear_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_linear_linear_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_clamp_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_clamp_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_clamp_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_mirror_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_mirror_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_mirror_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_repeat_clamp_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_repeat_clamp_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_repeat_mirror_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_repeat_mirror_repeat +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_repeat_repeat_mirror +dEQP-GLES3.functional.texture.filtering.3d.combinations.nearest_mipmap_nearest_linear_repeat_repeat_repeat +dEQP-GLES3.functional.texture.filtering.3d.formats.r11f_g11f_b10f_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.r11f_g11f_b10f_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.r11f_g11f_b10f_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.r11f_g11f_b10f_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.r11f_g11f_b10f_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb10_a2_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb10_a2_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb10_a2_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb10_a2_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb10_a2_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb565_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb565_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb565_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb565_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb565_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb5_a1_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb5_a1_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb5_a1_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb5_a1_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb5_a1_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb9_e5_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb9_e5_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb9_e5_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb9_e5_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgb9_e5_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba16f_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba16f_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba16f_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba16f_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba16f_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba4_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba4_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba4_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba4_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba4_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_snorm_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_snorm_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_snorm_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_snorm_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.rgba8_snorm_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb8_alpha8_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb8_alpha8_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb8_alpha8_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb8_alpha8_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb8_alpha8_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb_r8_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb_r8_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb_r8_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb_r8_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.formats.srgb_r8_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.sizes.128x32x64_linear +dEQP-GLES3.functional.texture.filtering.3d.sizes.128x32x64_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.sizes.128x32x64_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.sizes.128x32x64_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.sizes.128x32x64_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.sizes.63x63x63_linear +dEQP-GLES3.functional.texture.filtering.3d.sizes.63x63x63_linear_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.sizes.63x63x63_linear_mipmap_nearest +dEQP-GLES3.functional.texture.filtering.3d.sizes.63x63x63_nearest_mipmap_linear +dEQP-GLES3.functional.texture.filtering.3d.sizes.63x63x63_nearest_mipmap_nearest +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_linear_clamp +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_linear_mirror +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_linear_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_linear_linear_clamp +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_linear_linear_mirror +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_linear_linear_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_linear_nearest_clamp +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_linear_nearest_mirror +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_linear_nearest_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_mipmap_nearest_linear_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_nearest_clamp +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_nearest_mirror +dEQP-GLES3.functional.texture.vertex.3d.filtering.linear_nearest_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.nearest_linear_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.nearest_mipmap_linear_linear_repeat +dEQP-GLES3.functional.texture.vertex.3d.filtering.nearest_mipmap_nearest_linear_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_clamp_clamp +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_clamp_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_clamp_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_mirror_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_mirror_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_repeat_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.clamp_repeat_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_clamp_clamp +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_clamp_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_clamp_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_mirror_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_mirror_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_repeat_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.mirror_repeat_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_clamp_clamp +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_clamp_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_clamp_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_mirror_clamp +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_mirror_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_mirror_repeat +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_repeat_clamp +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_repeat_mirror +dEQP-GLES3.functional.texture.vertex.3d.wrap.repeat_repeat_repeat +dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_repeat_linear_divisible +dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_repeat_linear_not_divisible +dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_repeat_linear_divisible +dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_repeat_linear_not_divisible +dEQP-GLES3.functional.vertex_arrays.single_attribute.normalize.int2_10_10_10.components4_quads1 +dEQP-GLES3.functional.vertex_arrays.single_attribute.normalize.int2_10_10_10.components4_quads256