summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/drivers/panfrost/ci/create-rootfs.sh8
-rw-r--r--src/gallium/drivers/panfrost/ci/debian-install.sh36
-rw-r--r--src/gallium/drivers/panfrost/ci/deqp-runner.sh108
-rw-r--r--src/gallium/drivers/panfrost/ci/expected-failures.txt1118
-rw-r--r--src/gallium/drivers/panfrost/ci/gitlab-ci.yml138
-rw-r--r--src/gallium/drivers/panfrost/ci/lava-deqp.yml.jinja216
6 files changed, 1032 insertions, 392 deletions
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
-
-# Cannot use tee because dash doesn't have pipefail
-touch /tmp/result.txt
-tail -f /tmp/result.txt &
-
-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
-
- # So LAVA knows what happened
- echo "Test case '$crashed_test'..
- Crash"
- else
- break
- fi
-done
+FLIP_FLOPS="
+ dEQP-GLES2.performance
+ dEQP-GLES2.stress
+ dEQP-GLES2.functional.fbo.render.depth.
+ dEQP-GLES2.functional.flush_finish.
+ "
+
+# 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
+ "
+
+for test in $FLIP_FLOPS; do sed -i "/$test/d" /tmp/case-list.txt; 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<test_case_id>\S*)''..\s+(?P<result>(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<test_case_id>\S*):\s+(?P<result>(pass|fail))'
from: inline
name: deqp
path: inline/lava-deqp.yaml