ci/llvmpipe: Switch rusticl and clover testing over to deqp-runner.
authorEmma Anholt <emma@anholt.net>
Tue, 8 Nov 2022 21:20:00 +0000 (13:20 -0800)
committerMarge Bot <emma+marge@anholt.net>
Mon, 14 Nov 2022 21:45:28 +0000 (21:45 +0000)
The usual reasons: Flake handling, familiar skips/xfails handling, faster
parallelization.  This also sets us up for running a subset of the CL CTS
once we decide to build it in our containers.

Acked-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19608>

14 files changed:
.gitlab-ci/deqp-runner.sh
.gitlab-ci/image-tags.yml
.gitlab-ci/piglit/run_cl.sh [deleted file]
src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-clover.toml [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-rusticl.toml [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml
src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-fails.txt [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-flakes.txt [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-skips.txt [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/llvmpipe-clover.txt [deleted file]
src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-flakes.txt [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-skips.txt [new file with mode: 0644]
src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl.txt [deleted file]

index b272a94..ccd71c9 100755 (executable)
@@ -18,6 +18,7 @@ INSTALL=`pwd`/install
 export LD_LIBRARY_PATH=`pwd`/install/lib/
 export EGL_PLATFORM=surfaceless
 export VK_ICD_FILENAMES=`pwd`/install/share/vulkan/icd.d/"$VK_DRIVER"_icd.${VK_CPU:-`uname -m`}.json
+export OCL_ICD_VENDORS=`pwd`/install/etc/OpenCL/vendors/
 
 RESULTS=`pwd`/${DEQP_RESULTS_DIR:-results}
 mkdir -p $RESULTS
index cf7e2b3..244dcd6 100644 (file)
@@ -1,6 +1,6 @@
 variables:
    DEBIAN_X86_BUILD_BASE_IMAGE: "debian/x86_build-base"
-   DEBIAN_BASE_TAG: "2022-11-08-skqp-runner"
+   DEBIAN_BASE_TAG: "2022-11-08-deqp-runner"
 
    DEBIAN_X86_BUILD_IMAGE_PATH: "debian/x86_build"
    DEBIAN_BUILD_TAG: "2022-11-03-ci-fairy-s3"
@@ -11,11 +11,11 @@ variables:
    DEBIAN_X86_TEST_BASE_IMAGE: "debian/x86_test-base"
 
    DEBIAN_X86_TEST_IMAGE_PATH: "debian/x86_test-gl"
-   DEBIAN_X86_TEST_GL_TAG: "2022-11-08-skqp-runner"
-   DEBIAN_X86_TEST_VK_TAG: "2022-11-08-skqp-runner"
+   DEBIAN_X86_TEST_GL_TAG: "2022-11-08-deqp-runner"
+   DEBIAN_X86_TEST_VK_TAG: "2022-11-08-deqp-runner"
 
    FEDORA_X86_BUILD_TAG: "2022-09-22-python3-ply-2"
-   KERNEL_ROOTFS_TAG: "2022-11-08-skqp-runner"
+   KERNEL_ROOTFS_TAG: "2022-11-08-deqp-runner"
 
    WINDOWS_X64_VS_PATH: "windows/x64_vs"
    WINDOWS_X64_VS_TAG: "2022-10-20-upgrade-zlib"
diff --git a/.gitlab-ci/piglit/run_cl.sh b/.gitlab-ci/piglit/run_cl.sh
deleted file mode 100755 (executable)
index c58c70a..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/bin/bash
-
-set -e
-set -o xtrace
-
-VERSION=`head -1 install/VERSION`
-ROOTDIR=`pwd`
-
-if [ -d results ]; then
-    cd results && rm -rf ..?* .[!.]* *
-fi
-cd /piglit
-
-export OCL_ICD_VENDORS=$ROOTDIR/install/etc/OpenCL/vendors/
-
-set +e
-unset DISPLAY
-export LD_LIBRARY_PATH=$ROOTDIR/install/lib
-clinfo
-
-# If the job is parallel at the gitlab job level, will take the corresponding
-# fraction of the caselist.
-if [ -n "$CI_NODE_INDEX" ]; then
-
-    if [ "$PIGLIT_PROFILES" != "${PIGLIT_PROFILES% *}" ]; then
-        echo "Can't parallelize piglit with multiple profiles"
-        exit 1
-    fi
-    USE_CASELIST=1
-fi
-
-if [ -n "$USE_CASELIST" ]; then
-    ./piglit print-cmd $PIGLIT_TESTS $PIGLIT_PROFILES --format "{name}" > /tmp/case-list.txt
-
-    sed -ni $CI_NODE_INDEX~$CI_NODE_TOTAL"p" /tmp/case-list.txt
-
-    PIGLIT_TESTS="--test-list /tmp/case-list.txt"
-fi
-
-./piglit run -c -j${FDO_CI_CONCURRENT:-4} $PIGLIT_OPTIONS $PIGLIT_TESTS $PIGLIT_PROFILES $ROOTDIR/results
-retVal=$?
-if [ $retVal -ne 0 ]; then
-    echo "Found $(cat /tmp/version.txt), expected $VERSION"
-fi
-set -e
-
-PIGLIT_RESULTS=${PIGLIT_RESULTS:-$PIGLIT_PROFILES}
-mkdir -p .gitlab-ci/piglit
-./piglit summary console $ROOTDIR/results \
-  | tee ".gitlab-ci/piglit/$PIGLIT_RESULTS.txt.orig" \
-  | head -n -1 \
-  | grep -v ": pass" \
-  | sed '/^summary:/Q' \
-  > .gitlab-ci/piglit/$PIGLIT_RESULTS.txt
-
-if [ -n "$USE_CASELIST" ]; then
-    # Just filter the expected results based on the tests that were actually
-    # executed, and switch to the version with no summary
-    cat .gitlab-ci/piglit/$PIGLIT_RESULTS.txt.orig | sed '/^summary:/Q' | rev \
-         | cut -f2- -d: | rev | sed "s/$/:/g" > /tmp/executed.txt
-    grep -F -f /tmp/executed.txt $ROOTDIR/install/$PIGLIT_RESULTS.txt \
-         > .gitlab-ci/piglit/$PIGLIT_RESULTS.txt.baseline || true
-else
-    cp $ROOTDIR/install/$PIGLIT_RESULTS.txt .gitlab-ci/piglit/$PIGLIT_RESULTS.txt.baseline
-fi
-
-if diff -q .gitlab-ci/piglit/$PIGLIT_RESULTS.txt{.baseline,}; then
-    exit 0
-fi
-
-./piglit summary html --exclude-details=pass $ROOTDIR/results/summary $ROOTDIR/results
-
-echo Unexpected change in results:
-diff -u .gitlab-ci/piglit/$PIGLIT_RESULTS.txt{.baseline,}
-exit 1
diff --git a/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-clover.toml b/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-clover.toml
new file mode 100644 (file)
index 0000000..75f48f3
--- /dev/null
@@ -0,0 +1,4 @@
+[[piglit]]
+piglit_folder = "/piglit"
+profile = "cl"
+process_isolation = true
diff --git a/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-rusticl.toml b/src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe-rusticl.toml
new file mode 100644 (file)
index 0000000..75f48f3
--- /dev/null
@@ -0,0 +1,4 @@
+[[piglit]]
+piglit_folder = "/piglit"
+profile = "cl"
+process_isolation = true
index 96d1908..f2f791d 100644 (file)
 .llvmpipe-piglit-cl:
   extends:
     - .test-cl
-    - .piglit-test
+    - .deqp-test
     - .llvmpipe-test
   variables:
     LP_NUM_THREADS: 1
     PIGLIT_PROFILES: cl
-    PIGLIT_TESTS: >
-      -x bswap -x phatk -x clz-optimizations
-  script:
-    - install/piglit/run_cl.sh
 
 llvmpipe-piglit-clover:
   extends:
@@ -29,7 +25,8 @@ llvmpipe-piglit-clover:
     - debian/x86_test-gl
   variables:
     LP_CL: 1
-    PIGLIT_RESULTS: "llvmpipe-clover"
+    DEQP_SUITE: llvmpipe-clover
+    GPU_VERSION: llvmpipe-clover
 
 llvmpipe-piglit-rusticl:
   extends:
@@ -40,7 +37,8 @@ llvmpipe-piglit-rusticl:
     - debian/x86_test-gl
   variables:
     RUSTICL_ENABLE: "llvmpipe"
-    PIGLIT_RESULTS: "llvmpipe-rusticl"
+    DEQP_SUITE: llvmpipe-rusticl
+    GPU_VERSION: llvmpipe-rusticl
 
 llvmpipe-traces:
   extends:
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-fails.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-fails.txt
new file mode 100644 (file)
index 0000000..745c1b9
--- /dev/null
@@ -0,0 +1,53 @@
+# Failed (error code: CL_LINK_PROGRAM_FAILURE): CL_SUCCESS when compiling an empty string..
+api@clbuildprogram,Fail
+
+# "input.cl:8:10: fatal error: 'include_test.h' file not found"
+# build-piglit.sh removes all the *.[ch] files from the piglit tree, so it's a Mesa CI bug.
+program@build@include-directories,Fail
+
+# Expecting 0.000000 (0x0) with tolerance 0.000000 (0 ulps), but got 0.000000 (0x40)
+# Error at float[0]
+#  Argument 0: FAIL
+program@execute@amdgcn-f32-inline-immediates,Fail
+program@execute@amdgcn-f32-inline-immediates@add integer 64,Fail
+
+# [Error] At word No.340: "OpenCL.std ldexp: expected the exponent to have the same number of components as Result Type
+#   %call3_4 = OpExtInst %v2float %1 ldexp %call1_4 %145
+program@execute@builtin@builtin-float-ldexp-1.0.generated,Fail
+
+# cl-program-tester: ../src/gallium/auxiliary/gallivm/lp_bld_nir.c:341: get_alu_src: Assertion `num_components <= 4' failed.
+program@execute@builtin@builtin-float-lgamma_r-1.0.generated,Crash
+
+# exit status: signal: 11 (core dumped)
+program@execute@calls-large-struct,Crash
+
+
+program@execute@calls-struct,Fail
+#  Argument 0: PASS
+# Expecting 14 (0xe) with tolerance 0, but got 114 (0x72)
+# Error at int[0]
+#  Argument 1: FAIL
+program@execute@calls-struct@regs struct,Fail
+# Expecting 86 (0x56) with tolerance 0, but got 134 (0x86)
+# Error at int[0]
+#  Argument 0: FAIL
+#  Argument 1: PASS
+program@execute@calls-struct@small struct in regs,Fail
+
+
+program@execute@clz-optimizations,Crash
+
+# Expecting 0 (0x0) with tolerance 0, but got 9 (0x9)
+# Error at int[0]
+#  Argument 0: FAIL
+program@execute@global-offset,Fail
+program@execute@global-offset@3d- input dependent,Fail
+
+# Unsupported intrinsic: vec1 32 ssa_25 = intrinsic image_deref_order (ssa_2) (image_dim=2D /*1*/, image_array=false /*0*/, format=none /*0*/, access=16)
+program@execute@image-attributes,Crash
+
+# InvalidModule: Invalid SPIR-V module: vloada_half should be of a half vector type
+program@execute@vload@vloada_half-float-constant,Crash
+program@execute@vload@vloada_half-float-global,Crash
+program@execute@vload@vloada_half-float-local,Crash
+program@execute@vload@vloada_half-float-private,Crash
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-flakes.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-flakes.txt
new file mode 100644 (file)
index 0000000..9ec78c8
--- /dev/null
@@ -0,0 +1,4 @@
+program@execute@bswap
+
+# corrupted size vs. prev_size
+program@execute@clz-optimizations
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-skips.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover-skips.txt
new file mode 100644 (file)
index 0000000..be776e8
--- /dev/null
@@ -0,0 +1,4 @@
+builtin-float-cos-1.0.generated
+builtin-float-sin-1.0.generated
+builtin-float-sincos-1.0.generated
+builtin-float-tan-1.0.generated
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-clover.txt
deleted file mode 100644 (file)
index 53d3bbb..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-api/clbuildprogram: fail
-api/clcompileprogram: skip
-api/clenqueuefillbuffer: skip
-api/clenqueuefillimage: skip
-api/clenqueuemigratememobjects: skip
-api/clgetextensionfunctionaddressforplatform: skip
-api/clgetkernelarginfo: skip
-api/cllinkprogram: skip
-interop/egl_khr_cl_event2: skip
-program/build/include-directories: fail
-program/build/printf: skip
-program/check predefined preprocessor macros/__opencl_c_version__ must be consistent with host (if defined): skip
-program/check predefined preprocessor macros/__opencl_c_version__ must be defined for opencl 1.2 and later: skip
-program/check predefined preprocessor macros/cl_version_1_2 must be defined for opencl 1.2 and later: skip
-program/check predefined preprocessor macros/cl_version_2_0 must be defined for opencl 2.0 and later: skip
-program/execute/amdgcn-callee-saved-registers: skip
-program/execute/amdgcn-f32-inline-immediates/add integer 64: fail
-program/execute/atomic_int64_add-global: skip
-program/execute/atomic_int64_add-global-return: skip
-program/execute/atomic_int64_add-local: skip
-program/execute/atomic_int64_and-global: skip
-program/execute/atomic_int64_and-global-return: skip
-program/execute/atomic_int64_and-local: skip
-program/execute/atomic_int64_cmpxchg-global: skip
-program/execute/atomic_int64_cmpxchg-global-return: skip
-program/execute/atomic_int64_cmpxchg-local: skip
-program/execute/atomic_int64_dec-global: skip
-program/execute/atomic_int64_dec-global-return: skip
-program/execute/atomic_int64_dec-local: skip
-program/execute/atomic_int64_inc-global: skip
-program/execute/atomic_int64_inc-global-return: skip
-program/execute/atomic_int64_inc-local: skip
-program/execute/atomic_int64_max-global: skip
-program/execute/atomic_int64_max-global-return: skip
-program/execute/atomic_int64_max-local: skip
-program/execute/atomic_int64_min-global: skip
-program/execute/atomic_int64_min-global-return: skip
-program/execute/atomic_int64_min-local: skip
-program/execute/atomic_int64_or-global: skip
-program/execute/atomic_int64_or-global-return: skip
-program/execute/atomic_int64_or-local: skip
-program/execute/atomic_int64_sub-global: skip
-program/execute/atomic_int64_sub-global-return: skip
-program/execute/atomic_int64_sub-local: skip
-program/execute/atomic_int64_xchg-global: skip
-program/execute/atomic_int64_xchg-global-return: skip
-program/execute/atomic_int64_xchg-local: skip
-program/execute/atomic_int64_xor-global: skip
-program/execute/atomic_int64_xor-global-return: skip
-program/execute/atomic_int64_xor-local: skip
-program/execute/builtin/builtin-char-popcount-1.2.generated: skip
-program/execute/builtin/builtin-float-cos-1.0.generated: timeout
-program/execute/builtin/builtin-float-ldexp-1.0.generated: fail
-program/execute/builtin/builtin-float-sin-1.0.generated: timeout
-program/execute/builtin/builtin-float-sincos-1.0.generated: timeout
-program/execute/builtin/builtin-float-tan-1.0.generated: timeout
-program/execute/builtin/builtin-int-popcount-1.2.generated: skip
-program/execute/builtin/builtin-long-popcount-1.2.generated: skip
-program/execute/builtin/builtin-short-popcount-1.2.generated: skip
-program/execute/builtin/builtin-uchar-popcount-1.2.generated: skip
-program/execute/builtin/builtin-uint-popcount-1.2.generated: skip
-program/execute/builtin/builtin-ulong-popcount-1.2.generated: skip
-program/execute/builtin/builtin-ushort-popcount-1.2.generated: skip
-program/execute/call-clobbers-amdgcn: skip
-program/execute/calls-large-struct: crash
-program/execute/calls-struct/regs struct: fail
-program/execute/calls-struct/small struct in regs: fail
-program/execute/global-offset/3d, input dependent: fail
-program/execute/image-attributes: crash
-program/execute/load-hi16-generic: skip
-program/execute/load-lo16-generic: skip
-program/execute/program-tester-check-local-size-test-should-skip/this test should skip: skip
-program/execute/scalar-logical-float: skip
-program/execute/store-hi16-generic: skip
-program/execute/vload/vloada_half-float-constant: fail
-program/execute/vload/vloada_half-float-global: fail
-program/execute/vload/vloada_half-float-local: fail
-program/execute/vload/vloada_half-float-private: fail
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt
new file mode 100644 (file)
index 0000000..e53c880
--- /dev/null
@@ -0,0 +1,87 @@
+# Failed (error code: CL_BUILD_PROGRAM_FAILURE): Trigger CL_INVALID_BUILD_OPTIONS if the build options specified by options are invalid.
+api@clbuildprogram,Fail
+
+# Failed (error code: CL_COMPILE_PROGRAM_FAILURE): Trigger CL_INVALID_COMPILER_OPTIONS if the build options specified by options are invalid.
+# Failed (error code: CL_INVALID_OPERATION): CL_SUCCESS when compiling an empty string..
+api@clcompileprogram,Fail
+
+# Unexpected CL error: CL_INVALID_OPERATION -59
+# Failed to compile binary program.
+api@clcreateprogramwithbinary,Fail
+
+# Failed (error code: CL_SUCCESS): CL_INVALID_VALUE if values in region do not follow rules described in the argument description for region.
+api@clenqueuefillimage,Fail
+
+# Failed (error code: CL_INVALID_COMMAND_QUEUE): Get size of CL_QUEUE_SIZE.
+api@clgetcommandqueueinfo,Fail
+
+# CL_DEVICE_VERSION: failed, 'OpenCL 3.0' should contains 'OpenCL 1.1'
+# CL_DEVICE_OPENCL_C_VERSION: failed, 'OpenCL C 1.2 ' should contains 'OpenCL C 1.1'
+# CL_DEVICE_DOUBLE_FP_CONFIG: failed, expected CL_FP_FMA|CL_FP_ROUND_TO_NEAREST|CL_
+#
+# I think the test needs to be updated for CL 3.0, and we need to set PIGLIT_CL_VERSION=3.0 in the environment.
+api@clgetdeviceinfo,Fail
+
+# Failed: return NULL if platform is not a valid platform
+api@clgetextensionfunctionaddressforplatform,Fail
+
+# Failed (error code: CL_SUCCESS): Trigger CL_KERNEL_ARG_INFO_NOT_AVAILABLE if the argument information is not available for kernel.
+api@clgetkernelarginfo,Fail
+
+# Failed (error code: CL_SUCCESS): Trigger CL_INVALID_LINKER_OPTIONS if the linker options specified by options are invalid.
+# Failed (error code: CL_LINK_PROGRAM_FAILURE): Trigger CL_INVALID_OPERATION if the rules for devices containing compiled binaries or libraries as described in input_programs argument above are not followed.
+# Failed (error code: CL_SUCCESS): Trigger CL_LINK_PROGRAM_FAILURE if there is a failure to link the compiled binaries and/or libraries.
+api@cllinkprogram,Fail
+
+# piglit: error: eglCreateSync64KHR(EGL_SYNC_CL_EVENT_KHR) failed (4)
+interop@egl_khr_cl_event2,Fail
+
+# input.cl:31:2: error: use of undeclared identifier 'double2'; did you mean 'double'?
+# [...]
+# Program built when it should have failed: CL_SUCCESS
+program@build@fail@invalid-version-declaration,Fail
+
+# "input.cl:8:10: fatal error: 'include_test.h' file not found"
+# build-piglit.sh removes all the *.[ch] files from the piglit tree, so it's a Mesa CI bug.
+program@build@include-directories,Fail
+
+# Expecting 0.000000 (0x0) with tolerance 0.000000 (0 ulps), but got 0.000000 (0x40)
+# Error at float[0]
+#  Argument 0: FAIL
+program@execute@amdgcn-f32-inline-immediates,Fail
+program@execute@amdgcn-f32-inline-immediates@add integer 64,Fail
+
+# Expecting 0.000000 (0x1) with tolerance 0.000000 (0 ulps), but got 0.000000 (0x800000)
+program@execute@builtin@builtin-float-nextafter-1.0.generated,Fail
+program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float1,Fail
+program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float16,Fail
+program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float2,Fail
+program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float4,Fail
+program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float8,Fail
+
+# Expecting 14 (0xe) with tolerance 0, but got 114 (0x72)
+# Error at int[0]
+#  Argument 1: FAIL
+program@execute@calls-large-struct,Fail
+program@execute@calls-large-struct@byval struct,Fail
+
+program@execute@calls-struct,Fail
+# Expecting 14 (0xe) with tolerance 0, but got 114 (0x72)
+# Error at int[0]
+#  Argument 1: FAIL
+program@execute@calls-struct@regs struct,Fail
+# Expecting 86 (0x56) with tolerance 0, but got 134 (0x86)
+# Error at int[0]
+#  Argument 0: FAIL
+#  Argument 1: PASS
+program@execute@calls-struct@small struct in regs,Fail
+
+# Expecting 0 (0x0) with tolerance 0, but got 9 (0x9)
+program@execute@global-offset,Fail
+program@execute@global-offset@3d- input dependent,Fail
+
+# InvalidModule: Invalid SPIR-V module: vloada_half should be of a half vector type
+program@execute@vload@vloada_half-float-constant,Crash
+program@execute@vload@vloada_half-float-global,Crash
+program@execute@vload@vloada_half-float-local,Crash
+program@execute@vload@vloada_half-float-private,Crash
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-flakes.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-flakes.txt
new file mode 100644 (file)
index 0000000..9c767e1
--- /dev/null
@@ -0,0 +1,19 @@
+# corrupted size vs. prev_size
+program@execute@clz-optimizations
+
+# "malloc_consolidate(): invalid chunk size"
+# Nothing useful from valgrind:
+# ==2976980== Invalid write of size 2
+# ==2976980==    at 0x4867537: ???
+# ==2976980==    by 0x486713F: ???
+# ==2976980==    by 0x8D42AD0: ??? (in /home/anholt/src/mesa/build/src/gallium/targets/rusticl/libRusticlOpenCL.so.1.0.0)
+# ==2976980==    by 0x8D1E4EA: ??? (in /home/anholt/src/mesa/build/src/gallium/targets/rusticl/libRusticlOpenCL.so.1.0.0)
+# ==2976980==    by 0x845C227: ??? (in /home/anholt/src/mesa/build/src/gallium/targets/rusticl/libRusticlOpenCL.so.1.0.0)
+# ==2976980==    by 0x4A5E849: start_thread (pthread_create.c:442)
+# ==2976980==    by 0x4AE152F: clone (clone.S:100)
+# ==2976980==  Address 0x19faa6d0 is 0 bytes after a block of size 80 alloc'd
+# ==2976980==    at 0x4848990: memalign (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
+# ==2976980==    by 0x4848AED: posix_memalign (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
+# ==2976980==    by 0x8D5DB52: ??? (in /home/anholt/src/mesa/build/src/gallium/targets/rusticl/libRusticlOpenCL.so.1.0.0)
+# ==2976980==    by 0x8186CA2: ??? (in /home/anholt/src/mesa/build/src/gallium/targets/rusticl/libRusticlOpenCL.so.1.0.0)
+program@execute@bswap
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-skips.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-skips.txt
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl.txt
deleted file mode 100644 (file)
index 1112877..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-api/clbuildprogram: fail
-api/clcompileprogram: fail
-api/clcreateprogramwithbinary: fail
-api/clenqueuefillimage: fail
-api/clgetcommandqueueinfo: fail
-api/clgetdeviceinfo: fail
-api/clgetextensionfunctionaddressforplatform: fail
-api/clgetkernelarginfo: fail
-api/cllinkprogram: fail
-interop/egl_khr_cl_event2: skip
-program/build/fail/invalid-version-declaration: fail
-program/build/include-directories: fail
-program/execute/amdgcn-callee-saved-registers: skip
-program/execute/amdgcn-f16-inline-immediates: skip
-program/execute/amdgcn-f32-inline-immediates/add integer 64: fail
-program/execute/amdgcn-f64-inline-immediates: skip
-program/execute/amdgcn-i16-inline-immediates: skip
-program/execute/atomic_int64_add-global: skip
-program/execute/atomic_int64_add-global-return: skip
-program/execute/atomic_int64_add-local: skip
-program/execute/atomic_int64_and-global: skip
-program/execute/atomic_int64_and-global-return: skip
-program/execute/atomic_int64_and-local: skip
-program/execute/atomic_int64_cmpxchg-global: skip
-program/execute/atomic_int64_cmpxchg-global-return: skip
-program/execute/atomic_int64_cmpxchg-local: skip
-program/execute/atomic_int64_dec-global: skip
-program/execute/atomic_int64_dec-global-return: skip
-program/execute/atomic_int64_dec-local: skip
-program/execute/atomic_int64_inc-global: skip
-program/execute/atomic_int64_inc-global-return: skip
-program/execute/atomic_int64_inc-local: skip
-program/execute/atomic_int64_max-global: skip
-program/execute/atomic_int64_max-global-return: skip
-program/execute/atomic_int64_max-local: skip
-program/execute/atomic_int64_min-global: skip
-program/execute/atomic_int64_min-global-return: skip
-program/execute/atomic_int64_min-local: skip
-program/execute/atomic_int64_or-global: skip
-program/execute/atomic_int64_or-global-return: skip
-program/execute/atomic_int64_or-local: skip
-program/execute/atomic_int64_sub-global: skip
-program/execute/atomic_int64_sub-global-return: skip
-program/execute/atomic_int64_sub-local: skip
-program/execute/atomic_int64_xchg-global: skip
-program/execute/atomic_int64_xchg-global-return: skip
-program/execute/atomic_int64_xchg-local: skip
-program/execute/atomic_int64_xor-global: skip
-program/execute/atomic_int64_xor-global-return: skip
-program/execute/atomic_int64_xor-local: skip
-program/execute/builtin/builtin-float-nextafter-1.0.generated/nextafter float1: fail
-program/execute/builtin/builtin-float-nextafter-1.0.generated/nextafter float16: fail
-program/execute/builtin/builtin-float-nextafter-1.0.generated/nextafter float2: fail
-program/execute/builtin/builtin-float-nextafter-1.0.generated/nextafter float4: fail
-program/execute/builtin/builtin-float-nextafter-1.0.generated/nextafter float8: fail
-program/execute/builtin/builtin-float-sincos-1.0.generated: timeout
-program/execute/builtin/builtin-shuffle-double-ulong: skip
-program/execute/builtin/builtin-shuffle-half-ushort: skip
-program/execute/builtin/builtin-shuffle2-double-ulong: skip
-program/execute/builtin/builtin-shuffle2-half-ushort: skip
-program/execute/call-clobbers-amdgcn: skip
-program/execute/calls-large-struct/byval struct: fail
-program/execute/calls-struct/regs struct: fail
-program/execute/calls-struct/small struct in regs: fail
-program/execute/fdiv-modifiers-f64: skip
-program/execute/global-offset/3d, input dependent: fail
-program/execute/load-hi16-generic: skip
-program/execute/load-lo16-generic: skip
-program/execute/mad-mix: skip
-program/execute/program-tester-check-local-size-test-should-skip/this test should skip: skip
-program/execute/scalar-arithmetic-double: skip
-program/execute/store-hi16-generic: skip
-program/execute/store/store-double-global: skip
-program/execute/store/store-double-local: skip
-program/execute/store/store-double16-global: skip
-program/execute/store/store-double16-local: skip
-program/execute/store/store-double2-global: skip
-program/execute/store/store-double2-local: skip
-program/execute/store/store-double4-global: skip
-program/execute/store/store-double4-local: skip
-program/execute/store/store-double8-global: skip
-program/execute/store/store-double8-local: skip
-program/execute/vload/vload-double-constant: skip
-program/execute/vload/vload-double-global: skip
-program/execute/vload/vload-double-local: skip
-program/execute/vload/vload-double-private: skip
-program/execute/vload/vload-half-constant: skip
-program/execute/vload/vload-half-global: skip
-program/execute/vload/vload-half-local: skip
-program/execute/vload/vload-half-private: skip
-program/execute/vload/vloada_half-float-constant: fail
-program/execute/vload/vloada_half-float-global: fail
-program/execute/vload/vloada_half-float-local: fail
-program/execute/vload/vloada_half-float-private: fail
-program/execute/vstore/vstore-double-global: skip
-program/execute/vstore/vstore-double-local: skip
-program/execute/vstore/vstore-double-private: skip
-program/execute/vstore/vstore-half-global: skip
-program/execute/vstore/vstore-half-local: skip
-program/execute/vstore/vstore-half-private: skip
-program/execute/vstore/vstore_half-double-global: skip
-program/execute/vstore/vstore_half-double-local: skip
-program/execute/vstore/vstore_half-double-private: skip
-program/execute/vstore/vstorea_half-double-global: skip
-program/execute/vstore/vstorea_half-double-local: skip
-program/execute/vstore/vstorea_half-double-private: skip