diff --git a/src/gallium/drivers/panfrost/ci/create-rootfs.sh b/src/gallium/drivers/panfrost/ci/create-rootfs.sh index 84ce8cdc882..e01ccb34cb4 100644 --- a/src/gallium/drivers/panfrost/ci/create-rootfs.sh +++ b/src/gallium/drivers/panfrost/ci/create-rootfs.sh @@ -15,9 +15,9 @@ ln -s /bin/sh /init rm -rf /etc/localtime cp /usr/share/zoneinfo/Etc/UTC /etc/localtime - -UNNEEDED_PACKAGES=" libfdisk1"\ -" tzdata"\ +UNNEEDED_PACKAGES="libfdisk1 + tzdata + diffutils" export DEBIAN_FRONTEND=noninteractive @@ -182,4 +182,4 @@ rm usr/lib/*/libdb-5.3.so rm usr/lib/*/libnss_hesiod* rm usr/lib/*/libnss_nis* -rm usr/bin/tar \ No newline at end of file +rm bin/tar diff --git a/src/gallium/drivers/panfrost/ci/debian-install.sh b/src/gallium/drivers/panfrost/ci/debian-install.sh index c42c4387729..816b616b491 100644 --- a/src/gallium/drivers/panfrost/ci/debian-install.sh +++ b/src/gallium/drivers/panfrost/ci/debian-install.sh @@ -42,6 +42,13 @@ apt-get -y install --no-install-recommends \ procps \ qemu-user-static \ cpio \ + clang-8 \ + llvm-8 \ + libclang-8-dev \ + llvm-8-dev \ + gdc-9 \ + lld-8 \ + nasm \ \ libdrm-dev:${DEBIAN_ARCH} \ libx11-dev:${DEBIAN_ARCH} \ @@ -65,12 +72,12 @@ apt-get -y install --no-install-recommends \ libelf-dev:${DEBIAN_ARCH} \ libwayland-dev:${DEBIAN_ARCH} \ libwayland-egl-backend-dev:${DEBIAN_ARCH} \ - libclang-7-dev:${DEBIAN_ARCH} \ zlib1g-dev:${DEBIAN_ARCH} \ libglvnd-core-dev:${DEBIAN_ARCH} \ wayland-protocols:${DEBIAN_ARCH} \ libpng-dev:${DEBIAN_ARCH} + ############### Cross-build dEQP mkdir -p /artifacts/rootfs/deqp @@ -89,7 +96,6 @@ cmake -DDEQP_TARGET=wayland \ /VK-GL-CTS-opengl-es-cts-3.2.5.0 make -j$(nproc) rm -rf /artifacts/rootfs/deqp/external -rm -rf /artifacts/rootfs/deqp/modules/gles3 rm -rf /artifacts/rootfs/deqp/modules/gles31 rm -rf /artifacts/rootfs/deqp/modules/internal rm -rf /artifacts/rootfs/deqp/executor @@ -102,6 +108,32 @@ du -sh * rm -rf /VK-GL-CTS-opengl-es-cts-3.2.5.0 +############### Cross-build Volt dEQP runner +mkdir -p /battery +cd /battery +wget https://github.com/VoltLang/Battery/releases/download/v0.1.22/battery-0.1.22-x86_64-linux.tar.gz +tar xzvf battery-0.1.22-x86_64-linux.tar.gz +rm battery-0.1.22-x86_64-linux.tar.gz +mv battery /usr/local/bin +rm -rf /battery + +mkdir -p /volt +cd /volt +git clone --depth=1 https://github.com/VoltLang/Watt.git +git clone --depth=1 https://github.com/VoltLang/Volta.git +git clone --depth=1 https://github.com/Wallbraker/dEQP.git +battery config --release --lto Volta Watt +battery build +battery config --arch aarch64 --cmd-volta Volta/volta Volta/rt Watt dEQP +battery build +cp dEQP/deqp /artifacts/rootfs/deqp/deqp-volt +rm -rf /volt + + +############### Remove LLVM now, so the container image is smaller +apt-get -y remove \*llvm\* + + ############### Cross-build kernel KERNEL_URL="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/snapshot/linux-5.2.tar.gz" export ARCH=${KERNEL_ARCH} diff --git a/src/gallium/drivers/panfrost/ci/deqp-runner.sh b/src/gallium/drivers/panfrost/ci/deqp-runner.sh index c468d95d2b4..c6b2cce8882 100644 --- a/src/gallium/drivers/panfrost/ci/deqp-runner.sh +++ b/src/gallium/drivers/panfrost/ci/deqp-runner.sh @@ -1,7 +1,5 @@ #!/bin/sh -set -x - DEQP_OPTIONS="--deqp-surface-width=256 --deqp-surface-height=256" DEQP_OPTIONS="$DEQP_OPTIONS --deqp-visibility=hidden" DEQP_OPTIONS="$DEQP_OPTIONS --deqp-log-images=disable" @@ -24,26 +22,86 @@ sleep 1 # Give some time for Weston to start up ./deqp-gles2 $DEQP_OPTIONS --deqp-runmode=stdout-caselist | grep "TEST: dEQP-GLES2" | cut -d ' ' -f 2 > /tmp/case-list.txt # Disable for now tests that are very slow, either by just using lots of CPU or by crashing -sed -i '/dEQP-GLES2.performance/d' /tmp/case-list.txt -sed -i '/dEQP-GLES2.stress/d' /tmp/case-list.txt -sed -i '/dEQP-GLES2.functional.fbo.render.depth./d' /tmp/case-list.txt -sed -i '/dEQP-GLES2.functional.flush_finish./d' /tmp/case-list.txt +FLIP_FLOPS=" + dEQP-GLES2.performance + dEQP-GLES2.stress + dEQP-GLES2.functional.fbo.render.depth. + dEQP-GLES2.functional.flush_finish. + " -# Cannot use tee because dash doesn't have pipefail -touch /tmp/result.txt -tail -f /tmp/result.txt & +# These pass or fail seemingly at random +FLIP_FLOPS="$FLIP_FLOPS + dEQP-GLES2.performance + dEQP-GLES2.stress + dEQP-GLES2.functional.fbo.render.depth. + dEQP-GLES2.functional.flush_finish. + dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_neg_x_neg_z_and_pos_x_pos_z_and_neg_x_neg_y_pos_z + dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_pos_y_pos_z_and_neg_x_neg_y_pos_z_and_pos_x_pos_y_neg_z + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgba4 + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgba4 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgba4_stencil_index8 + dEQP-GLES2.functional.fbo.render.recreate_depthbuffer. + dEQP-GLES2.functional.fbo.render.recreate_stencilbuffer. + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.rbo_rgba4 + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.tex2d_rgb + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.tex2d_rgba + dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4 + dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.stencil_clear.rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.npot_rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.npot_rbo_rgba4_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.rbo_rgba4_stencil_index8 + dEQP-GLES2.functional.lifetime.attach.deleted_input.renderbuffer_framebuffer + dEQP-GLES2.functional.lifetime.attach.deleted_output.renderbuffer_framebuffer + dEQP-GLES2.functional.polygon_offset.fixed16_factor_0_slope + dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope + dEQP-GLES2.functional.shaders.invariance.highp.loop_4 + dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_vec4_vertex + dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec4_mat4_fragment + dEQP-GLES2.functional.shaders.operator.common_functions.smoothstep.mediump_vec3_vertex + dEQP-GLES2.functional.shaders.random.all_features.fragment.12 + dEQP-GLES2.functional.shaders.random.all_features.fragment.37 + dEQP-GLES2.functional.texture.units.2_units.mixed.1 + dEQP-GLES2.functional.texture.units.2_units.mixed.3 + dEQP-GLES2.functional.texture.units.2_units.only_2d.2 + dEQP-GLES2.functional.texture.units.4_units.mixed.5 + dEQP-GLES2.functional.texture.units.4_units.only_2d.0 + dEQP-GLES2.functional.texture.units.8_units.only_cube.2 + dEQP-GLES2.functional.texture.units.all_units.mixed.6 + dEQP-GLES2.functional.texture.units.all_units.only_cube.4 + dEQP-GLES2.functional.texture.units.all_units.only_cube.7 + dEQP-GLES2.functional.texture.units.all_units.only_cube.8 + " -while [ -s /tmp/case-list.txt ]; do - ./deqp-gles2 $DEQP_OPTIONS --deqp-log-filename=/dev/null --deqp-caselist-file=/tmp/case-list.txt >> /tmp/result.txt - if [ $? -ne 0 ]; then - # Continue from the subtest after the failing one - crashed_test=$(grep "Test case" /tmp/result.txt | tail -1 | sed "s/Test case '\(.*\)'\.\./\1/") - sed -i "0,/^$crashed_test$/d" /tmp/case-list.txt +for test in $FLIP_FLOPS; do sed -i "/$test/d" /tmp/case-list.txt; done - # So LAVA knows what happened - echo "Test case '$crashed_test'.. - Crash" - else - break - fi -done +/deqp/deqp-volt --cts-build-dir=/deqp \ + --threads=8 \ + --test-names-file=/tmp/case-list.txt \ + --results-file=/tmp/results.txt \ + --no-passed-results \ + --regression-file=/deqp/expected-failures.txt \ + --no-rerun-tests + +if [ $? -ne 0 ]; then + echo "Regressions detected, printing results:" + cat /tmp/results.txt + echo "deqp: fail" +else + echo "No regressions detected" + echo "deqp: pass" +fi diff --git a/src/gallium/drivers/panfrost/ci/expected-failures.txt b/src/gallium/drivers/panfrost/ci/expected-failures.txt index 0ecfb02c7cd..a15c3f9c670 100644 --- a/src/gallium/drivers/panfrost/ci/expected-failures.txt +++ b/src/gallium/drivers/panfrost/ci/expected-failures.txt @@ -1,237 +1,881 @@ -dEQP-GLES2.functional.buffer.write.use.index_array.array -dEQP-GLES2.functional.buffer.write.use.index_array.element_array -dEQP-GLES2.functional.color_clear.masked_rgb -dEQP-GLES2.functional.color_clear.masked_rgba -dEQP-GLES2.functional.color_clear.masked_scissored_rgb -dEQP-GLES2.functional.color_clear.masked_scissored_rgba -dEQP-GLES2.functional.color_clear.scissored_rgb -dEQP-GLES2.functional.color_clear.scissored_rgba -dEQP-GLES2.functional.color_clear.short_scissored_rgb -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 -dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 -dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 -dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 -dEQP-GLES2.functional.fbo.render.texsubimage.after_render_tex2d_rgb -dEQP-GLES2.functional.fbo.render.texsubimage.after_render_tex2d_rgba -dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgb -dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgba -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.0 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.1 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.10 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.11 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.12 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.13 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.15 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.16 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.18 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.19 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.20 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.21 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.22 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.23 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.24 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.25 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.26 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.29 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.3 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.30 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.31 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.32 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.33 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.34 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.35 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.36 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.37 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.38 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.39 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.40 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.41 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.42 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.43 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.44 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.46 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.47 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.48 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.49 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.5 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.50 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.51 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.52 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.53 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.54 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.55 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.56 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.57 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.58 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.59 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.6 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.60 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.61 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.62 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.63 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.64 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.65 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.66 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.67 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.68 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.69 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.7 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.70 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.71 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.72 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.73 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.74 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.75 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.76 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.77 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.78 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.79 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.8 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.80 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.81 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.82 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.83 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.84 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.85 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.86 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.87 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.88 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.89 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.9 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.90 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.91 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.92 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.93 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.94 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.95 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.96 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.97 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.98 -dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.99 -dEQP-GLES2.functional.fragment_ops.random.0 -dEQP-GLES2.functional.fragment_ops.random.1 -dEQP-GLES2.functional.fragment_ops.random.10 -dEQP-GLES2.functional.fragment_ops.random.11 -dEQP-GLES2.functional.fragment_ops.random.12 -dEQP-GLES2.functional.fragment_ops.random.13 -dEQP-GLES2.functional.fragment_ops.random.14 -dEQP-GLES2.functional.fragment_ops.random.15 -dEQP-GLES2.functional.fragment_ops.random.16 -dEQP-GLES2.functional.fragment_ops.random.17 -dEQP-GLES2.functional.fragment_ops.random.18 -dEQP-GLES2.functional.fragment_ops.random.19 -dEQP-GLES2.functional.fragment_ops.random.2 -dEQP-GLES2.functional.fragment_ops.random.20 -dEQP-GLES2.functional.fragment_ops.random.21 -dEQP-GLES2.functional.fragment_ops.random.22 -dEQP-GLES2.functional.fragment_ops.random.23 -dEQP-GLES2.functional.fragment_ops.random.24 -dEQP-GLES2.functional.fragment_ops.random.25 -dEQP-GLES2.functional.fragment_ops.random.26 -dEQP-GLES2.functional.fragment_ops.random.27 -dEQP-GLES2.functional.fragment_ops.random.28 -dEQP-GLES2.functional.fragment_ops.random.29 -dEQP-GLES2.functional.fragment_ops.random.3 -dEQP-GLES2.functional.fragment_ops.random.30 -dEQP-GLES2.functional.fragment_ops.random.31 -dEQP-GLES2.functional.fragment_ops.random.32 -dEQP-GLES2.functional.fragment_ops.random.33 -dEQP-GLES2.functional.fragment_ops.random.34 -dEQP-GLES2.functional.fragment_ops.random.35 -dEQP-GLES2.functional.fragment_ops.random.36 -dEQP-GLES2.functional.fragment_ops.random.37 -dEQP-GLES2.functional.fragment_ops.random.38 -dEQP-GLES2.functional.fragment_ops.random.39 -dEQP-GLES2.functional.fragment_ops.random.4 -dEQP-GLES2.functional.fragment_ops.random.40 -dEQP-GLES2.functional.fragment_ops.random.41 -dEQP-GLES2.functional.fragment_ops.random.42 -dEQP-GLES2.functional.fragment_ops.random.43 -dEQP-GLES2.functional.fragment_ops.random.44 -dEQP-GLES2.functional.fragment_ops.random.45 -dEQP-GLES2.functional.fragment_ops.random.46 -dEQP-GLES2.functional.fragment_ops.random.47 -dEQP-GLES2.functional.fragment_ops.random.48 -dEQP-GLES2.functional.fragment_ops.random.49 -dEQP-GLES2.functional.fragment_ops.random.5 -dEQP-GLES2.functional.fragment_ops.random.50 -dEQP-GLES2.functional.fragment_ops.random.51 -dEQP-GLES2.functional.fragment_ops.random.52 -dEQP-GLES2.functional.fragment_ops.random.53 -dEQP-GLES2.functional.fragment_ops.random.54 -dEQP-GLES2.functional.fragment_ops.random.55 -dEQP-GLES2.functional.fragment_ops.random.56 -dEQP-GLES2.functional.fragment_ops.random.57 -dEQP-GLES2.functional.fragment_ops.random.58 -dEQP-GLES2.functional.fragment_ops.random.59 -dEQP-GLES2.functional.fragment_ops.random.6 -dEQP-GLES2.functional.fragment_ops.random.60 -dEQP-GLES2.functional.fragment_ops.random.61 -dEQP-GLES2.functional.fragment_ops.random.62 -dEQP-GLES2.functional.fragment_ops.random.63 -dEQP-GLES2.functional.fragment_ops.random.64 -dEQP-GLES2.functional.fragment_ops.random.65 -dEQP-GLES2.functional.fragment_ops.random.66 -dEQP-GLES2.functional.fragment_ops.random.67 -dEQP-GLES2.functional.fragment_ops.random.68 -dEQP-GLES2.functional.fragment_ops.random.69 -dEQP-GLES2.functional.fragment_ops.random.7 -dEQP-GLES2.functional.fragment_ops.random.70 -dEQP-GLES2.functional.fragment_ops.random.71 -dEQP-GLES2.functional.fragment_ops.random.72 -dEQP-GLES2.functional.fragment_ops.random.73 -dEQP-GLES2.functional.fragment_ops.random.74 -dEQP-GLES2.functional.fragment_ops.random.75 -dEQP-GLES2.functional.fragment_ops.random.76 -dEQP-GLES2.functional.fragment_ops.random.77 -dEQP-GLES2.functional.fragment_ops.random.78 -dEQP-GLES2.functional.fragment_ops.random.79 -dEQP-GLES2.functional.fragment_ops.random.8 -dEQP-GLES2.functional.fragment_ops.random.80 -dEQP-GLES2.functional.fragment_ops.random.81 -dEQP-GLES2.functional.fragment_ops.random.82 -dEQP-GLES2.functional.fragment_ops.random.83 -dEQP-GLES2.functional.fragment_ops.random.84 -dEQP-GLES2.functional.fragment_ops.random.85 -dEQP-GLES2.functional.fragment_ops.random.86 -dEQP-GLES2.functional.fragment_ops.random.87 -dEQP-GLES2.functional.fragment_ops.random.88 -dEQP-GLES2.functional.fragment_ops.random.89 -dEQP-GLES2.functional.fragment_ops.random.9 -dEQP-GLES2.functional.fragment_ops.random.90 -dEQP-GLES2.functional.fragment_ops.random.91 -dEQP-GLES2.functional.fragment_ops.random.92 -dEQP-GLES2.functional.fragment_ops.random.93 -dEQP-GLES2.functional.fragment_ops.random.94 -dEQP-GLES2.functional.fragment_ops.random.95 -dEQP-GLES2.functional.fragment_ops.random.96 -dEQP-GLES2.functional.fragment_ops.random.97 -dEQP-GLES2.functional.fragment_ops.random.98 -dEQP-GLES2.functional.fragment_ops.random.99 -dEQP-GLES2.functional.polygon_offset.fixed16_render_with_units -dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope -dEQP-GLES2.functional.shaders.builtin_variable.fragcoord_w -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_fragment -dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_vertex +dEQP-GLES2.functional.buffer.write.use.index_array.array Fail +dEQP-GLES2.functional.buffer.write.use.index_array.element_array Fail +dEQP-GLES2.functional.color_clear.masked_rgba Fail +dEQP-GLES2.functional.color_clear.masked_rgb Fail +dEQP-GLES2.functional.color_clear.masked_scissored_rgba Fail +dEQP-GLES2.functional.color_clear.masked_scissored_rgb Fail +dEQP-GLES2.functional.color_clear.scissored_rgba Fail +dEQP-GLES2.functional.color_clear.scissored_rgb Fail +dEQP-GLES2.functional.color_clear.short_scissored_rgb Fail +dEQP-GLES2.functional.depth_range.write.0_8_to_third Fail +dEQP-GLES2.functional.depth_range.write.clamp_both Fail +dEQP-GLES2.functional.depth_range.write.clamp_far Fail +dEQP-GLES2.functional.depth_range.write.clamp_near Fail +dEQP-GLES2.functional.depth_range.write.default Fail +dEQP-GLES2.functional.depth_range.write.half_to_half Fail +dEQP-GLES2.functional.depth_range.write.half_to_one Fail +dEQP-GLES2.functional.depth_range.write.half_to_zero Fail +dEQP-GLES2.functional.depth_range.write.one_to_half Fail +dEQP-GLES2.functional.depth_range.write.one_to_one Fail +dEQP-GLES2.functional.depth_range.write.reverse Fail +dEQP-GLES2.functional.depth_range.write.third_to_0_8 Fail +dEQP-GLES2.functional.depth_range.write.zero_to_half Fail +dEQP-GLES2.functional.depth_stencil_clear.depth Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_scissored Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_scissored_masked Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_masked Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_scissored Fail +dEQP-GLES2.functional.depth_stencil_clear.depth_stencil_scissored_masked Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb565_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgb5_a1_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_rbo_rgba4_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgba_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.no_rebind_tex2d_rgb_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb565_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgb5_a1_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_rbo_rgba4_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgba_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.recreate_colorbuffer.rebind_tex2d_rgb_stencil_index8 Fail +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb565_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgba_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.shared_colorbuffer.tex2d_rgb_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb565_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgba_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.shared_depthbuffer.tex2d_rgb_depth_component16 Fail +dEQP-GLES2.functional.fbo.render.texsubimage.after_render_tex2d_rgba Fail +dEQP-GLES2.functional.fbo.render.texsubimage.after_render_tex2d_rgb Fail +dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgba Fail +dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgb Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.0 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.10 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.11 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.12 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.13 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.14 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.15 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.16 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.17 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.18 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.19 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.1 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.20 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.21 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.22 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.23 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.24 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.2 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.3 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.4 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.5 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.6 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.7 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.8 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.random.9 Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.no_stencil_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_always_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_equal_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_gequal_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_greater_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_lequal_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_less_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_never_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_always Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_equal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_gequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_greater Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_lequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_less Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_never Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_depth_notequal Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_depth_funcs.stencil_notequal_no_depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_wrap_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.decr_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_wrap_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.incr_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.invert_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.keep_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.replace_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_decr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_wrap_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_incr_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_invert_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_keep_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_replace_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_decr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_decr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_incr Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_incr_wrap Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_invert Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_keep Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_replace Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.zero_zero_zero Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.write_mask.both Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.write_mask.depth Fail +dEQP-GLES2.functional.fragment_ops.depth_stencil.write_mask.stencil Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.0 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.10 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.11 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.12 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.13 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.15 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.16 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.17 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.18 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.19 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.1 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.20 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.21 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.22 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.23 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.24 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.25 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.26 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.29 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.30 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.31 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.32 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.33 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.34 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.35 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.36 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.37 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.38 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.39 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.3 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.40 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.41 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.42 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.43 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.44 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.46 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.47 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.48 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.49 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.50 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.51 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.52 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.53 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.54 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.55 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.56 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.57 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.58 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.59 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.5 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.60 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.61 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.62 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.63 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.64 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.65 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.66 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.67 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.68 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.69 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.6 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.70 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.71 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.72 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.73 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.74 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.75 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.76 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.77 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.78 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.79 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.7 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.80 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.81 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.82 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.83 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.84 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.85 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.86 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.87 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.88 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.89 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.8 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.90 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.91 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.92 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.93 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.94 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.95 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.96 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.97 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.98 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.99 Fail +dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.9 Fail +dEQP-GLES2.functional.fragment_ops.random.0 Fail +dEQP-GLES2.functional.fragment_ops.random.10 Fail +dEQP-GLES2.functional.fragment_ops.random.11 Fail +dEQP-GLES2.functional.fragment_ops.random.12 Fail +dEQP-GLES2.functional.fragment_ops.random.13 Fail +dEQP-GLES2.functional.fragment_ops.random.14 Fail +dEQP-GLES2.functional.fragment_ops.random.15 Fail +dEQP-GLES2.functional.fragment_ops.random.16 Fail +dEQP-GLES2.functional.fragment_ops.random.17 Fail +dEQP-GLES2.functional.fragment_ops.random.18 Fail +dEQP-GLES2.functional.fragment_ops.random.19 Fail +dEQP-GLES2.functional.fragment_ops.random.1 Fail +dEQP-GLES2.functional.fragment_ops.random.20 Fail +dEQP-GLES2.functional.fragment_ops.random.21 Fail +dEQP-GLES2.functional.fragment_ops.random.22 Fail +dEQP-GLES2.functional.fragment_ops.random.23 Fail +dEQP-GLES2.functional.fragment_ops.random.24 Fail +dEQP-GLES2.functional.fragment_ops.random.25 Fail +dEQP-GLES2.functional.fragment_ops.random.26 Fail +dEQP-GLES2.functional.fragment_ops.random.27 Fail +dEQP-GLES2.functional.fragment_ops.random.28 Fail +dEQP-GLES2.functional.fragment_ops.random.29 Fail +dEQP-GLES2.functional.fragment_ops.random.2 Fail +dEQP-GLES2.functional.fragment_ops.random.30 Fail +dEQP-GLES2.functional.fragment_ops.random.31 Fail +dEQP-GLES2.functional.fragment_ops.random.32 Fail +dEQP-GLES2.functional.fragment_ops.random.33 Fail +dEQP-GLES2.functional.fragment_ops.random.34 Fail +dEQP-GLES2.functional.fragment_ops.random.35 Fail +dEQP-GLES2.functional.fragment_ops.random.36 Fail +dEQP-GLES2.functional.fragment_ops.random.37 Fail +dEQP-GLES2.functional.fragment_ops.random.38 Fail +dEQP-GLES2.functional.fragment_ops.random.39 Fail +dEQP-GLES2.functional.fragment_ops.random.3 Fail +dEQP-GLES2.functional.fragment_ops.random.40 Fail +dEQP-GLES2.functional.fragment_ops.random.41 Fail +dEQP-GLES2.functional.fragment_ops.random.42 Fail +dEQP-GLES2.functional.fragment_ops.random.43 Fail +dEQP-GLES2.functional.fragment_ops.random.44 Fail +dEQP-GLES2.functional.fragment_ops.random.45 Fail +dEQP-GLES2.functional.fragment_ops.random.46 Fail +dEQP-GLES2.functional.fragment_ops.random.47 Fail +dEQP-GLES2.functional.fragment_ops.random.48 Fail +dEQP-GLES2.functional.fragment_ops.random.49 Fail +dEQP-GLES2.functional.fragment_ops.random.4 Fail +dEQP-GLES2.functional.fragment_ops.random.50 Fail +dEQP-GLES2.functional.fragment_ops.random.51 Fail +dEQP-GLES2.functional.fragment_ops.random.52 Fail +dEQP-GLES2.functional.fragment_ops.random.53 Fail +dEQP-GLES2.functional.fragment_ops.random.54 Fail +dEQP-GLES2.functional.fragment_ops.random.55 Fail +dEQP-GLES2.functional.fragment_ops.random.56 Fail +dEQP-GLES2.functional.fragment_ops.random.57 Fail +dEQP-GLES2.functional.fragment_ops.random.58 Fail +dEQP-GLES2.functional.fragment_ops.random.59 Fail +dEQP-GLES2.functional.fragment_ops.random.5 Fail +dEQP-GLES2.functional.fragment_ops.random.60 Fail +dEQP-GLES2.functional.fragment_ops.random.61 Fail +dEQP-GLES2.functional.fragment_ops.random.62 Fail +dEQP-GLES2.functional.fragment_ops.random.63 Fail +dEQP-GLES2.functional.fragment_ops.random.64 Fail +dEQP-GLES2.functional.fragment_ops.random.65 Fail +dEQP-GLES2.functional.fragment_ops.random.66 Fail +dEQP-GLES2.functional.fragment_ops.random.67 Fail +dEQP-GLES2.functional.fragment_ops.random.68 Fail +dEQP-GLES2.functional.fragment_ops.random.69 Fail +dEQP-GLES2.functional.fragment_ops.random.6 Fail +dEQP-GLES2.functional.fragment_ops.random.70 Fail +dEQP-GLES2.functional.fragment_ops.random.71 Fail +dEQP-GLES2.functional.fragment_ops.random.72 Fail +dEQP-GLES2.functional.fragment_ops.random.73 Fail +dEQP-GLES2.functional.fragment_ops.random.74 Fail +dEQP-GLES2.functional.fragment_ops.random.75 Fail +dEQP-GLES2.functional.fragment_ops.random.76 Fail +dEQP-GLES2.functional.fragment_ops.random.77 Fail +dEQP-GLES2.functional.fragment_ops.random.78 Fail +dEQP-GLES2.functional.fragment_ops.random.79 Fail +dEQP-GLES2.functional.fragment_ops.random.7 Fail +dEQP-GLES2.functional.fragment_ops.random.80 Fail +dEQP-GLES2.functional.fragment_ops.random.81 Fail +dEQP-GLES2.functional.fragment_ops.random.82 Fail +dEQP-GLES2.functional.fragment_ops.random.83 Fail +dEQP-GLES2.functional.fragment_ops.random.84 Fail +dEQP-GLES2.functional.fragment_ops.random.85 Fail +dEQP-GLES2.functional.fragment_ops.random.86 Fail +dEQP-GLES2.functional.fragment_ops.random.87 Fail +dEQP-GLES2.functional.fragment_ops.random.88 Fail +dEQP-GLES2.functional.fragment_ops.random.89 Fail +dEQP-GLES2.functional.fragment_ops.random.8 Fail +dEQP-GLES2.functional.fragment_ops.random.90 Fail +dEQP-GLES2.functional.fragment_ops.random.91 Fail +dEQP-GLES2.functional.fragment_ops.random.92 Fail +dEQP-GLES2.functional.fragment_ops.random.93 Fail +dEQP-GLES2.functional.fragment_ops.random.94 Fail +dEQP-GLES2.functional.fragment_ops.random.95 Fail +dEQP-GLES2.functional.fragment_ops.random.96 Fail +dEQP-GLES2.functional.fragment_ops.random.97 Fail +dEQP-GLES2.functional.fragment_ops.random.98 Fail +dEQP-GLES2.functional.fragment_ops.random.99 Fail +dEQP-GLES2.functional.fragment_ops.random.9 Fail +dEQP-GLES2.functional.polygon_offset.default_factor_1_slope Fail +dEQP-GLES2.functional.polygon_offset.default_render_with_units Fail +dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope Fail +dEQP-GLES2.functional.polygon_offset.fixed16_render_with_units Fail +dEQP-GLES2.functional.shaders.builtin_variable.fragcoord_w Fail +dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_fragment Fail +dEQP-GLES2.functional.shaders.scoping.valid.local_variable_hides_function_parameter_vertex Fail diff --git a/src/gallium/drivers/panfrost/ci/gitlab-ci.yml b/src/gallium/drivers/panfrost/ci/gitlab-ci.yml index a135c5dd57c..8bbb48ab76f 100644 --- a/src/gallium/drivers/panfrost/ci/gitlab-ci.yml +++ b/src/gallium/drivers/panfrost/ci/gitlab-ci.yml @@ -16,7 +16,7 @@ variables: UPSTREAM_REPO: mesa/mesa DEBIAN_VERSION: testing-slim - IMAGE_TAG: "2019-07-25-1" + IMAGE_TAG: "2019-08-21-1" include: - project: 'wayland/ci-templates' @@ -51,15 +51,15 @@ stages: KERNEL_IMAGE_NAME=${KERNEL_IMAGE_NAME} bash src/gallium/drivers/panfrost/ci/debian-install.sh' -container:armhf: - extends: .container - variables: - DEBIAN_ARCH: "armhf" - GCC_ARCH: "arm-linux-gnueabihf" - KERNEL_ARCH: "arm" - DEFCONFIG: "arch/arm/configs/multi_v7_defconfig" - DEVICE_TREES: "arch/arm/boot/dts/rk3288-veyron-jaq.dtb" - KERNEL_IMAGE_NAME: "zImage" +#container:armhf: +# extends: .container +# variables: +# DEBIAN_ARCH: "armhf" +# GCC_ARCH: "arm-linux-gnueabihf" +# KERNEL_ARCH: "arm" +# DEFCONFIG: "arch/arm/configs/multi_v7_defconfig" +# DEVICE_TREES: "arch/arm/boot/dts/rk3288-veyron-jaq.dtb" +# KERNEL_IMAGE_NAME: "zImage" container:arm64: extends: .container @@ -101,6 +101,7 @@ container:arm64: # Pack rootfs - cp src/gallium/drivers/panfrost/ci/deqp-runner.sh /artifacts/rootfs/deqp/. + - cp src/gallium/drivers/panfrost/ci/expected-failures.txt /artifacts/rootfs/deqp/. - du -sh /artifacts/rootfs/deqp/* - find /artifacts/rootfs/ -type f -printf "%s\t%p\n" | sort -n - cd /artifacts/rootfs/ ; find -H | cpio -H newc -v -o | gzip -c - > $CI_PROJECT_DIR/results/panfrost-rootfs-${DEBIAN_ARCH}.cpio.gz @@ -123,13 +124,13 @@ container:arm64: paths: - results/ -build:armhf: - extends: .build - variables: - DEBIAN_ARCH: "armhf" - GCC_ARCH: "arm-linux-gnueabihf" - DEVICE_TYPE: "rk3288-veyron-jaq" - KERNEL_IMAGE_NAME: "zImage" +#build:armhf: +# extends: .build +# variables: +# DEBIAN_ARCH: "armhf" +# GCC_ARCH: "arm-linux-gnueabihf" +# DEVICE_TYPE: "rk3288-veyron-jaq" +# KERNEL_IMAGE_NAME: "zImage" build:arm64: extends: .build @@ -155,107 +156,22 @@ build:arm64: username: jenkins-fdo token: $LAVA_TOKEN " > ~/.config/lavacli.yaml - - lava_job_id=`lavacli jobs submit $CI_PROJECT_DIR/results/lava-deqp.yml` || echo $lava_job_id + - lava_job_id=`lavacli jobs submit $CI_PROJECT_DIR/results/lava-deqp.yml` + - echo $lava_job_id - lavacli jobs logs $lava_job_id | grep -a -v "{'case':" | tee results/lava-deqp-$lava_job_id.log - lavacli jobs show $lava_job_id - - curl "https://lava.collabora.co.uk/results/$lava_job_id/csv?user=jenkins-fdo&token=$LAVA_TOKEN" > raw_results.csv - - cat raw_results.csv | csvcut -c 12,3 | grep dEQP-GLES2 | sort > results/results-$lava_job_id.csv - - # FIXME: Remove flip-flops from comparison files - - | - FLIP_FLOPS=" - dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_neg_x_neg_z_and_pos_x_pos_z_and_neg_x_neg_y_pos_z - dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_pos_y_pos_z_and_neg_x_neg_y_pos_z_and_pos_x_pos_y_neg_z - dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgb5_a1 - dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgb5_a1_depth_component16 - dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgba4 - dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgba4_depth_component16 - dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb5_a1 - dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb5_a1_depth_component16 - dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgba4 - dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgba4_depth_component16 - dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1 - dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1_depth_component16 - dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1_stencil_index8 - dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgba4_depth_component16 - dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgba4_stencil_index8 - dEQP-GLES2.functional.fbo.render.recreate_depthbuffer. - dEQP-GLES2.functional.fbo.render.recreate_stencilbuffer. - dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.rbo_rgb5_a1 - dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.rbo_rgba4 - dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.tex2d_rgb - dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.tex2d_rgba - dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1 - dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4 - dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 - dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 - dEQP-GLES2.functional.fbo.render.stencil_clear.rbo_rgb5_a1_stencil_index8 - dEQP-GLES2.functional.fbo.render.stencil.npot_rbo_rgb5_a1_stencil_index8 - dEQP-GLES2.functional.fbo.render.stencil.npot_rbo_rgba4_stencil_index8 - dEQP-GLES2.functional.fbo.render.stencil.rbo_rgb5_a1_stencil_index8 - dEQP-GLES2.functional.fbo.render.stencil.rbo_rgba4_stencil_index8 - dEQP-GLES2.functional.lifetime.attach.deleted_input.renderbuffer_framebuffer - dEQP-GLES2.functional.lifetime.attach.deleted_output.renderbuffer_framebuffer - dEQP-GLES2.functional.polygon_offset.fixed16_factor_0_slope - dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope - dEQP-GLES2.functional.shaders.invariance.highp.loop_4 - dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_vec4_vertex - dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec4_mat4_fragment - dEQP-GLES2.functional.shaders.operator.common_functions.smoothstep.mediump_vec3_vertex - dEQP-GLES2.functional.shaders.random.all_features.fragment.12 - dEQP-GLES2.functional.shaders.random.all_features.fragment.37 - dEQP-GLES2.functional.texture.units.2_units.mixed.1 - dEQP-GLES2.functional.texture.units.2_units.mixed.3 - dEQP-GLES2.functional.texture.units.2_units.only_2d.2 - dEQP-GLES2.functional.texture.units.4_units.mixed.5 - dEQP-GLES2.functional.texture.units.4_units.only_2d.0 - dEQP-GLES2.functional.texture.units.8_units.only_cube.2 - dEQP-GLES2.functional.texture.units.all_units.mixed.6 - dEQP-GLES2.functional.texture.units.all_units.only_cube.4 - dEQP-GLES2.functional.texture.units.all_units.only_cube.7 - dEQP-GLES2.functional.texture.units.all_units.only_cube.8 - " - - # FIXME: These tests fail in RK3288 but pass on RK3399 - - | - FLIP_FLOPS="$FLIP_FLOPS - dEQP-GLES2.functional.fragment_ops.blend.* - dEQP-GLES2.functional.shaders.builtin_variable.max_draw_buffers_vertex - dEQP-GLES2.functional.shaders.matrix.div.const_lowp_mat2_mat2_vertex - dEQP-GLES2.functional.shaders.operator.unary_operator.pre_increment_effect.highp_ivec4_vertex - dEQP-GLES2.functional.shaders.texture_functions.vertex.texture2dprojlod_vec3 - dEQP-GLES2.functional.shaders.swizzles.vector_swizzles.mediump_ivec3_stts_fragment - dEQP-GLES2.functional.texture.filtering.2d.nearest_mipmap_nearest_linear_repeat_rgba8888 - dEQP-GLES2.functional.shaders.swizzles.vector_swizzles.mediump_ivec3_stts_fragment - dEQP-GLES2.functional.shaders.loops.do_while_constant_iterations.only_continue_vertex - dEQP-GLES2.functional.fbo.render.resize.tex2d_rgb_depth_component16 - dEQP-GLES2.functional.fbo.render.resize.tex2d_rgba_depth_component16 - dEQP-GLES2.functional.texture.filtering.2d.linear_mipmap_nearest_nearest_clamp_rgba8888 - " - - - for test in $FLIP_FLOPS; do sed -i "/$test/d" results/expected-failures.txt results/results-$lava_job_id.csv; done - - - PASSED=$(grep pass$ results/results-$lava_job_id.csv | wc -l) - - FAILED=$(grep fail$ results/results-$lava_job_id.csv | wc -l) - - TOTAL=$(wc -l < results/results-$lava_job_id.csv) - - 'echo "Passed: $PASSED ($(expr $PASSED \* 100 / $TOTAL)%)"' - - 'echo "Failed: $FAILED ($(expr $FAILED \* 100 / $TOTAL)%)"' - - 'echo "Total: $TOTAL"' - - 'if [ $TOTAL != 16374 ]; then echo "WARNING: Unexpected count of results. Incomplete run?"; fi' - - - sed '/,pass/d' results/results-$lava_job_id.csv | sed 's/,fail//' > results/failures-$lava_job_id.txt - - # Don't error out on RK3288 - - diff -u results/expected-failures.txt results/failures-$lava_job_id.txt || [ -f results/rk3288-veyron-jaq.dtb ] + - result=`lavacli results $lava_job_id 0_deqp deqp | head -1` + - echo $result + - '[[ "$result" == "pass" ]]' artifacts: when: always paths: - results/ -test:armhf: - extends: .test - dependencies: - - build:armhf +#test:armhf: +# extends: .test +# dependencies: +# - build:armhf test:arm64: extends: .test diff --git a/src/gallium/drivers/panfrost/ci/lava-deqp.yml.jinja2 b/src/gallium/drivers/panfrost/ci/lava-deqp.yml.jinja2 index f610f9c826a..56cbdf913f4 100644 --- a/src/gallium/drivers/panfrost/ci/lava-deqp.yml.jinja2 +++ b/src/gallium/drivers/panfrost/ci/lava-deqp.yml.jinja2 @@ -50,21 +50,11 @@ actions: - mount -t devtmpfs none /dev - mkdir -p /dev/pts - mount -t devpts devpts /dev/pts - - echo 1 > /proc/sys/kernel/printk -# - echo performance > /sys/devices/platform/ff9a0000.gpu/devfreq/devfreq0/governor + - echo 3 > /proc/sys/kernel/printk + - echo performance > /sys/devices/platform/ff9a0000.gpu/devfreq/devfreq0/governor - sh /deqp/deqp-runner.sh parse: - pattern: 'Test case ''(?P\S*)''..\s+(?P(Pass|NotSupported|QualityWarning|CompatibilityWarning|Fail|ResourceError|Crash|Timeout|InternalError))' - fixupdict: - Pass: pass - NotSupported: pass - QualityWarning: pass - CompatibilityWarning: pass - Fail: fail - ResourceError: fail - Crash: fail - Timeout: fail - InternalError: fail + pattern: '(?P\S*):\s+(?P(pass|fail))' from: inline name: deqp path: inline/lava-deqp.yaml