summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2020-04-17 12:02:37 -0700
committerMarge Bot <[email protected]>2020-04-27 22:10:10 +0000
commit5082ac007d1758fdbe516649a1b28363ca32456c (patch)
treefa97dacca481d06a61256afdd0519b155d583fb1
parentb8c66aeb9341d695c79a2d69935016919c42f843 (diff)
ci/freedreno: Add a test run of a few driver options.
This lets us get coverage of corner cases of the driver that are tricky to force a testcase to hit. We don't want to do a full run of the CTS with each option because that's a lot of runner time, so stack a bunch of fractional runs in one test job to amortize the test run setup overhead. Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4621>
-rw-r--r--.gitlab-ci.yml16
-rw-r--r--.gitlab-ci/deqp-freedreno-a630-bypass-fails.txt96
-rw-r--r--.gitlab-ci/deqp-freedreno-a630-noubo-fails.txt18
-rwxr-xr-x.gitlab-ci/deqp-runner.sh4
4 files changed, 134 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b28cdb8fc61..409ed8ef609 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -794,6 +794,22 @@ arm64_a630_gles3:
variables:
DEQP_VER: gles3
+arm64_a630_gles31_options:
+ extends: arm64_a630_gles2
+ variables:
+ DEQP_VER: gles31
+ CI_NODE_INDEX: 1
+ CI_NODE_TOTAL: 5
+ script:
+ # We almost always manage to lower UBOs back to constant uploads in
+ # the test suite, so get a little testing for it here.
+ - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_EXPECTED_FAILS=deqp-freedreno-a630-noubo-fails.txt DEQP_CASELIST_FILTER="functional.\*ubo" ./install/deqp-runner.sh
+ # The driver does some guessing as to whether to render using gmem
+ # or bypass, and some GLES3.1 features interact with either one.
+ # Do a little testing with gmem and bypass forced.
+ - DEQP_RUN_SUFFIX=-bypass FD_MESA_DEBUG=nogmem DEQP_EXPECTED_FAILS=deqp-freedreno-a630-bypass-fails.txt ./install/deqp-runner.sh
+ - DEQP_RUN_SUFFIX=-gmem FD_MESA_DEBUG=nobypass ./install/deqp-runner.sh
+
.baremetal-test:
extends:
- .ci-run-policy
diff --git a/.gitlab-ci/deqp-freedreno-a630-bypass-fails.txt b/.gitlab-ci/deqp-freedreno-a630-bypass-fails.txt
new file mode 100644
index 00000000000..2cf4c3e5b60
--- /dev/null
+++ b/.gitlab-ci/deqp-freedreno-a630-bypass-fails.txt
@@ -0,0 +1,96 @@
+dEQP-GLES31.functional.blend_equation_advanced.barrier.colorburn
+dEQP-GLES31.functional.blend_equation_advanced.barrier.colordodge
+dEQP-GLES31.functional.blend_equation_advanced.barrier.darken
+dEQP-GLES31.functional.blend_equation_advanced.barrier.difference
+dEQP-GLES31.functional.blend_equation_advanced.barrier.exclusion
+dEQP-GLES31.functional.blend_equation_advanced.barrier.hardlight
+dEQP-GLES31.functional.blend_equation_advanced.barrier.hsl_color
+dEQP-GLES31.functional.blend_equation_advanced.barrier.hsl_hue
+dEQP-GLES31.functional.blend_equation_advanced.barrier.hsl_luminosity
+dEQP-GLES31.functional.blend_equation_advanced.barrier.hsl_saturation
+dEQP-GLES31.functional.blend_equation_advanced.barrier.lighten
+dEQP-GLES31.functional.blend_equation_advanced.barrier.multiply
+dEQP-GLES31.functional.blend_equation_advanced.barrier.overlay
+dEQP-GLES31.functional.blend_equation_advanced.barrier.screen
+dEQP-GLES31.functional.blend_equation_advanced.barrier.softlight
+dEQP-GLES31.functional.blend_equation_advanced.basic.colorburn
+dEQP-GLES31.functional.blend_equation_advanced.basic.colordodge
+dEQP-GLES31.functional.blend_equation_advanced.basic.darken
+dEQP-GLES31.functional.blend_equation_advanced.basic.difference
+dEQP-GLES31.functional.blend_equation_advanced.basic.exclusion
+dEQP-GLES31.functional.blend_equation_advanced.basic.hardlight
+dEQP-GLES31.functional.blend_equation_advanced.basic.hsl_color
+dEQP-GLES31.functional.blend_equation_advanced.basic.hsl_hue
+dEQP-GLES31.functional.blend_equation_advanced.basic.hsl_luminosity
+dEQP-GLES31.functional.blend_equation_advanced.basic.hsl_saturation
+dEQP-GLES31.functional.blend_equation_advanced.basic.lighten
+dEQP-GLES31.functional.blend_equation_advanced.basic.multiply
+dEQP-GLES31.functional.blend_equation_advanced.basic.overlay
+dEQP-GLES31.functional.blend_equation_advanced.basic.screen
+dEQP-GLES31.functional.blend_equation_advanced.basic.softlight
+dEQP-GLES31.functional.blend_equation_advanced.msaa.colorburn
+dEQP-GLES31.functional.blend_equation_advanced.msaa.colordodge
+dEQP-GLES31.functional.blend_equation_advanced.msaa.darken
+dEQP-GLES31.functional.blend_equation_advanced.msaa.difference
+dEQP-GLES31.functional.blend_equation_advanced.msaa.exclusion
+dEQP-GLES31.functional.blend_equation_advanced.msaa.hardlight
+dEQP-GLES31.functional.blend_equation_advanced.msaa.hsl_color
+dEQP-GLES31.functional.blend_equation_advanced.msaa.hsl_hue
+dEQP-GLES31.functional.blend_equation_advanced.msaa.hsl_luminosity
+dEQP-GLES31.functional.blend_equation_advanced.msaa.hsl_saturation
+dEQP-GLES31.functional.blend_equation_advanced.msaa.lighten
+dEQP-GLES31.functional.blend_equation_advanced.msaa.multiply
+dEQP-GLES31.functional.blend_equation_advanced.msaa.overlay
+dEQP-GLES31.functional.blend_equation_advanced.msaa.screen
+dEQP-GLES31.functional.blend_equation_advanced.msaa.softlight
+dEQP-GLES31.functional.blend_equation_advanced.srgb.colorburn
+dEQP-GLES31.functional.blend_equation_advanced.srgb.colordodge
+dEQP-GLES31.functional.blend_equation_advanced.srgb.darken
+dEQP-GLES31.functional.blend_equation_advanced.srgb.difference
+dEQP-GLES31.functional.blend_equation_advanced.srgb.exclusion
+dEQP-GLES31.functional.blend_equation_advanced.srgb.hardlight
+dEQP-GLES31.functional.blend_equation_advanced.srgb.hsl_color
+dEQP-GLES31.functional.blend_equation_advanced.srgb.hsl_hue
+dEQP-GLES31.functional.blend_equation_advanced.srgb.hsl_luminosity
+dEQP-GLES31.functional.blend_equation_advanced.srgb.hsl_saturation
+dEQP-GLES31.functional.blend_equation_advanced.srgb.lighten
+dEQP-GLES31.functional.blend_equation_advanced.srgb.multiply
+dEQP-GLES31.functional.blend_equation_advanced.srgb.overlay
+dEQP-GLES31.functional.blend_equation_advanced.srgb.screen
+dEQP-GLES31.functional.blend_equation_advanced.srgb.softlight
+dEQP-GLES31.functional.compute.basic.shared_var_single_group
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_common.common_advanced_blend_eq_buffer_advanced_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_common.common_blend_eq_buffer_advanced_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_common.common_separate_blend_eq_buffer_advanced_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_indexed.common_advanced_blend_eq_buffer_advanced_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_indexed.common_advanced_blend_eq_buffer_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_indexed.common_advanced_blend_eq_buffer_separate_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.overwrite_indexed.common_separate_blend_eq_buffer_blend_eq
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.11
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.15
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.17
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.18
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.2
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.3
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.6
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.7
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.19
+dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.3
+dEQP-GLES31.functional.image_load_store.early_fragment_tests.early_fragment_tests_depth_fbo
+dEQP-GLES31.functional.ssbo.layout.3_level_array.std140.column_major_mat4x2
+dEQP-GLES31.functional.ssbo.layout.3_level_unsized_array.std430.mat3
+dEQP-GLES31.functional.ssbo.layout.random.arrays_of_arrays.6
+dEQP-GLES31.functional.ssbo.layout.unsized_struct_array.per_block_buffer.shared_instance_array
+dEQP-GLES31.functional.stencil_texturing.render.depth24_stencil8_draw
+dEQP-GLES31.functional.stencil_texturing.render.depth32f_stencil8_clear
+dEQP-GLES31.functional.stencil_texturing.render.depth32f_stencil8_draw
+dEQP-GLES31.functional.tessellation.invariance.inner_triangle_set.quads_fractional_even_spacing
+dEQP-GLES31.functional.tessellation.invariance.tess_coord_component_range.triangles_fractional_odd_spacing_cw
+dEQP-GLES31.functional.texture.multisample.samples_1.use_texture_depth_2d
+dEQP-GLES31.functional.texture.multisample.samples_1.use_texture_depth_2d_array
+dEQP-GLES31.functional.texture.multisample.samples_2.use_texture_depth_2d
+dEQP-GLES31.functional.texture.multisample.samples_2.use_texture_depth_2d_array
+dEQP-GLES31.functional.texture.multisample.samples_3.use_texture_depth_2d
+dEQP-GLES31.functional.texture.multisample.samples_3.use_texture_depth_2d_array
+dEQP-GLES31.functional.texture.multisample.samples_4.use_texture_depth_2d
+dEQP-GLES31.functional.texture.multisample.samples_4.use_texture_depth_2d_array
diff --git a/.gitlab-ci/deqp-freedreno-a630-noubo-fails.txt b/.gitlab-ci/deqp-freedreno-a630-noubo-fails.txt
new file mode 100644
index 00000000000..2b00497a6ca
--- /dev/null
+++ b/.gitlab-ci/deqp-freedreno-a630-noubo-fails.txt
@@ -0,0 +1,18 @@
+dEQP-GLES31.functional.stencil_texturing.render.depth24_stencil8_clear
+dEQP-GLES31.functional.stencil_texturing.render.depth24_stencil8_draw
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.11
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.16
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.21
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.31
+dEQP-GLES31.functional.ubo.random.all_per_block_buffers.6
+dEQP-GLES31.functional.ubo.random.all_shared_buffer.12
+dEQP-GLES31.functional.ubo.random.all_shared_buffer.17
+dEQP-GLES31.functional.ubo.random.all_shared_buffer.2
+dEQP-GLES31.functional.ubo.random.all_shared_buffer.27
+dEQP-GLES31.functional.ubo.random.all_shared_buffer.37
+dEQP-GLES31.functional.ubo.random.all_shared_buffer.47
+dEQP-GLES31.functional.ubo.random.basic_type_arrays.1
+dEQP-GLES31.functional.ubo.random.basic_type_arrays.11
+dEQP-GLES31.functional.ubo.random.basic_type_arrays.16
+dEQP-GLES31.functional.ubo.random.basic_type_arrays.21
+dEQP-GLES31.functional.ubo.random.basic_type_arrays.6
diff --git a/.gitlab-ci/deqp-runner.sh b/.gitlab-ci/deqp-runner.sh
index 59cfd820214..d4de8f74baf 100755
--- a/.gitlab-ci/deqp-runner.sh
+++ b/.gitlab-ci/deqp-runner.sh
@@ -60,6 +60,10 @@ if [ -n "$CI_NODE_INDEX" ]; then
sed -ni $CI_NODE_INDEX~$CI_NODE_TOTAL"p" /tmp/case-list.txt
fi
+if [ -n "$DEQP_CASELIST_FILTER" ]; then
+ sed -i "/$DEQP_CASELIST_FILTER/p" /tmp/case-list.txt
+fi
+
if [ ! -s /tmp/case-list.txt ]; then
echo "Caselist generation failed"
exit 1