From 0a172dca264fe32bc0bb05d7383656762aa00cec Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 29 Sep 2020 08:40:13 +1000 Subject: [PATCH] ci: enable piglit testing of clover/llvmpipe. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This adds support for building clover/llvmpipe and running the piglit CL tests on it. It uses the gl testing container, and add builds the libclc spirv libraries as part of that which requires the llvm spirv translator in the build container. It also builds the llvm spirv translator as part of the build root and creates a mesa build that builds clover for testing against it. It uses llvm 10 as the baseline. This drops bswap as it has an oob memory access with llvmpipe which cause flaky test results. phatk also seems flaky Reviewed-by: Michel Dänzer Part-of: --- .gitlab-ci.yml | 54 ++++- .gitlab-ci/build-libclc.sh | 37 ++++ .gitlab-ci/build-piglit.sh | 2 +- .gitlab-ci/container/x86_build.sh | 9 + .gitlab-ci/container/x86_test-gl.sh | 13 ++ .gitlab-ci/piglit/cl.txt | 420 ++++++++++++++++++++++++++++++++++++ .gitlab-ci/piglit/run_cl.sh | 38 ++++ 7 files changed, 568 insertions(+), 5 deletions(-) create mode 100644 .gitlab-ci/build-libclc.sh create mode 100644 .gitlab-ci/piglit/cl.txt create mode 100755 .gitlab-ci/piglit/run_cl.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 443ced1..ecc5d46 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -258,7 +258,7 @@ x86_build: extends: - .use-x86_build-base variables: - FDO_DISTRIBUTION_TAG: &x86_build "2020-10-06-clang10-2" + FDO_DISTRIBUTION_TAG: &x86_build "2020-10-06-clang10-cl3" .use-x86_build: variables: @@ -330,7 +330,7 @@ x86_test-base: x86_test-gl: extends: .use-x86_test-base variables: - FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-10-06-clang10-2" + FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-10-06-clang10-cl3" # Debian 10 based x86 test image for VK x86_test-vk: @@ -566,6 +566,26 @@ meson-testing: - .gitlab-ci/meson-build.sh - .gitlab-ci/prepare-artifacts.sh +meson-clover-testing: + extends: + - .meson-build + - .ci-deqp-artifacts + variables: + UNWIND: "enabled" + LLVM_VERSION: 10 + DRI_LOADERS: > + -D glx=disabled + -D egl=disabled + -D gbm=disabled + GALLIUM_ST: > + -D gallium-opencl=icd + -D opencl-spirv=true + GALLIUM_DRIVERS: "swrast" + BUILDTYPE: "debugoptimized" + script: + - .gitlab-ci/meson-build.sh + - .gitlab-ci/prepare-artifacts.sh + meson-gallium: extends: .meson-build variables: @@ -881,16 +901,22 @@ meson-mingw32-x86_64: paths: - results/ -.test-gl: +.use-x86_test-gl: extends: - .test variables: TAG: *x86_test-gl image: "$CI_REGISTRY_IMAGE/debian/x86_test-gl:$TAG" needs: - - meson-testing - x86_test-gl +.test-gl: + extends: + - .use-x86_test-gl + needs: + - x86_test-gl + - meson-testing + .test-vk: extends: - .test @@ -901,6 +927,13 @@ meson-mingw32-x86_64: - meson-testing - x86_test-vk +.test-cl: + extends: + - .use-x86_test-gl + needs: + - x86_test-gl + - meson-clover-testing + .piglit-test: extends: - .test-gl @@ -916,6 +949,19 @@ meson-mingw32-x86_64: script: - install/piglit/run.sh +piglit-cl: + extends: + - .piglit-test + - .test-cl + variables: + LP_CL: 1 + LP_NUM_THREADS: 1 + PIGLIT_PROFILES: cl + PIGLIT_OPTIONS: > + -x bswap -x phatk + script: + - install/piglit/run_cl.sh + piglit-quick_gl: extends: .piglit-test variables: diff --git a/.gitlab-ci/build-libclc.sh b/.gitlab-ci/build-libclc.sh new file mode 100644 index 0000000..be12ed8 --- /dev/null +++ b/.gitlab-ci/build-libclc.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +set -ex + +export LLVM_CONFIG="llvm-config-10" + +$LLVM_CONFIG --version + +git clone https://github.com/KhronosGroup/SPIRV-LLVM-Translator -b llvm_release_100 --depth 1 /SPIRV-LLVM-Translator +pushd /SPIRV-LLVM-Translator +cmake -G Ninja -DLLVM_BUILD_TOOLS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-fPIC -DCMAKE_CXX_FLAGS=-fPIC -DCMAKE_INSTALL_PREFIX=`$LLVM_CONFIG --prefix` +ninja +ninja install +popd + + +git config --global user.email "mesa@example.com" +git config --global user.name "Mesa CI" +git clone \ + https://github.com/llvm/llvm-project \ + --depth 1 \ + /llvm-project + +mkdir /libclc +pushd /libclc +cmake -G Ninja -DLLVM_CONFIG=$LLVM_CONFIG -DLIBCLC_TARGETS_TO_BUILD="spirv-mesa3d-;spirv64-mesa3d-" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr /llvm-project/libclc +ninja +ninja install +popd + +# workaroud cmake vs debian packaging. +mkdir -p /usr/lib/clc +ln -s /usr/share/clc/spirv64-mesa3d-.spv /usr/lib/clc/ +ln -s /usr/share/clc/spirv-mesa3d-.spv /usr/lib/clc/ + +du -sh * +rm -rf /libclc /llvm-project /SPIRV-LLVM-Translator diff --git a/.gitlab-ci/build-piglit.sh b/.gitlab-ci/build-piglit.sh index 75300e0..7d77b10 100644 --- a/.gitlab-ci/build-piglit.sh +++ b/.gitlab-ci/build-piglit.sh @@ -6,7 +6,7 @@ git clone https://gitlab.freedesktop.org/mesa/piglit.git --single-branch --no-ch pushd /piglit git checkout 404862743cf8a7b37a4e3a93b4ba1858d59cd4ab patch -p1 <$OLDPWD/.gitlab-ci/piglit/disable-vs_in.diff -cmake -G Ninja -DCMAKE_BUILD_TYPE=Release +cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DPIGLIT_BUILD_CL_TESTS=ON ninja find -name .git -o -name '*ninja*' -o -iname '*cmake*' -o -name '*.[chao]' | xargs rm -rf rm -rf target_api diff --git a/.gitlab-ci/container/x86_build.sh b/.gitlab-ci/container/x86_build.sh index 75a45ea..26cd646 100644 --- a/.gitlab-ci/container/x86_build.sh +++ b/.gitlab-ci/container/x86_build.sh @@ -27,8 +27,11 @@ apt-get update apt-get install -y --no-remove \ $STABLE_EPHEMERAL \ libarchive-dev \ + libclang-cpp10-dev \ liblua5.3-dev \ libxml2-dev \ + ocl-icd-opencl-dev \ + spirv-tools \ wine-development \ wine32-development @@ -98,6 +101,12 @@ tar -xvf libglvnd-v$GLVND_VERSION.tar.gz && rm libglvnd-v$GLVND_VERSION.tar.gz pushd libglvnd-v$GLVND_VERSION; ./autogen.sh; ./configure; make install; popd rm -rf libglvnd-v$GLVND_VERSION +git clone https://github.com/KhronosGroup/SPIRV-LLVM-Translator -b llvm_release_100 --depth 1 +pushd SPIRV-LLVM-Translator +cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS=-fPIC -DCMAKE_CXX_FLAGS=-fPIC +ninja +ninja install +popd pushd /usr/local git clone https://gitlab.freedesktop.org/mesa/shader-db.git --depth 1 diff --git a/.gitlab-ci/container/x86_test-gl.sh b/.gitlab-ci/container/x86_test-gl.sh index 2edef88..2db11b6 100644 --- a/.gitlab-ci/container/x86_test-gl.sh +++ b/.gitlab-ci/container/x86_test-gl.sh @@ -10,8 +10,10 @@ STABLE_EPHEMERAL=" \ autoconf \ automake \ ccache \ + clang-10 \ cmake \ g++ \ + libclang-cpp10-dev \ libgbm-dev \ libgles2-mesa-dev \ libpcre3-dev \ @@ -22,8 +24,10 @@ STABLE_EPHEMERAL=" \ libxcb-keysyms1-dev \ libxkbcommon-dev \ libxrender-dev \ + llvm-10-dev \ make \ meson \ + ocl-icd-opencl-dev \ patch \ pkg-config \ python3-distutils \ @@ -33,12 +37,21 @@ STABLE_EPHEMERAL=" \ " apt-get install -y --no-remove \ + clinfo \ + libclang-common-10-dev \ + libclang-cpp10 \ libxcb-shm0 \ + ocl-icd-libopencl1 \ + spirv-tools \ $STABLE_EPHEMERAL . .gitlab-ci/container/container_pre_build.sh +############### Build libclc + +. .gitlab-ci/build-libclc.sh + ############### Build virglrenderer . .gitlab-ci/build-virglrenderer.sh diff --git a/.gitlab-ci/piglit/cl.txt b/.gitlab-ci/piglit/cl.txt new file mode 100644 index 0000000..ff3d9e0 --- /dev/null +++ b/.gitlab-ci/piglit/cl.txt @@ -0,0 +1,420 @@ +api/clbuildprogram: fail +api/clcompileprogram: skip +api/clenqueuefillbuffer: skip +api/clenqueuefillimage: skip +api/clenqueuemigratememobjects: skip +api/clgetextensionfunctionaddressforplatform: skip +api/clgetimageinfo: skip +api/clgetkernelarginfo: skip +api/cllinkprogram: skip +api/clsetkernelarg/set kernel argument for cl_int3: fail +api/clsetkernelarg/set kernel argument for sampler: 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-f16-inline-immediates: skip +program/execute/amdgcn-f32-inline-immediates/add integer 64: fail +program/execute/amdgcn-i16-inline-immediates: skip +program/execute/amdgcn-mubuf-negative-vaddr: crash +program/execute/amdgcn.sign_extend_inreg: crash +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-abs-1.0.generated: fail +program/execute/builtin/builtin-char-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-char-add_sat-1.0.generated: fail +program/execute/builtin/builtin-char-clamp-1.1.generated: fail +program/execute/builtin/builtin-char-clz-1.0.generated: fail +program/execute/builtin/builtin-char-hadd-1.0.generated: fail +program/execute/builtin/builtin-char-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-char-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-char-max-1.1.generated: fail +program/execute/builtin/builtin-char-min-1.1.generated: fail +program/execute/builtin/builtin-char-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-char-popcount-1.2.generated: skip +program/execute/builtin/builtin-char-rhadd-1.0.generated: fail +program/execute/builtin/builtin-char-rotate-1.0.generated: fail +program/execute/builtin/builtin-char-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-char-upsample-1.0.generated: fail +program/execute/builtin/builtin-float-acos-1.0.generated: fail +program/execute/builtin/builtin-float-acosh-1.0.generated: fail +program/execute/builtin/builtin-float-acospi-1.0.generated: fail +program/execute/builtin/builtin-float-asin-1.0.generated: fail +program/execute/builtin/builtin-float-asinh-1.0.generated: fail +program/execute/builtin/builtin-float-asinpi-1.0.generated: fail +program/execute/builtin/builtin-float-atan-1.0.generated: fail +program/execute/builtin/builtin-float-atan2-1.0.generated: fail +program/execute/builtin/builtin-float-atan2pi-1.0.generated: fail +program/execute/builtin/builtin-float-atanh-1.0.generated: fail +program/execute/builtin/builtin-float-atanpi-1.0.generated: fail +program/execute/builtin/builtin-float-cbrt-1.0.generated: fail +program/execute/builtin/builtin-float-ceil-1.0.generated: fail +program/execute/builtin/builtin-float-clamp-1.0.generated: fail +program/execute/builtin/builtin-float-copysign-1.0.generated: fail +program/execute/builtin/builtin-float-cos-1.0.generated: fail +program/execute/builtin/builtin-float-cosh-1.0.generated: fail +program/execute/builtin/builtin-float-cospi-1.0.generated: fail +program/execute/builtin/builtin-float-degrees-1.0.generated: fail +program/execute/builtin/builtin-float-erf-1.0.generated: fail +program/execute/builtin/builtin-float-erfc-1.0.generated: fail +program/execute/builtin/builtin-float-exp-1.0.generated: fail +program/execute/builtin/builtin-float-exp10-1.0.generated: fail +program/execute/builtin/builtin-float-exp2-1.0.generated: fail +program/execute/builtin/builtin-float-expm1-1.0.generated: fail +program/execute/builtin/builtin-float-fabs-1.0.generated: fail +program/execute/builtin/builtin-float-fdim-1.0.generated: fail +program/execute/builtin/builtin-float-floor-1.0.generated: fail +program/execute/builtin/builtin-float-fma-1.0.generated: fail +program/execute/builtin/builtin-float-fmax-1.0.generated: fail +program/execute/builtin/builtin-float-fmin-1.0.generated: fail +program/execute/builtin/builtin-float-fmod-1.0.generated: fail +program/execute/builtin/builtin-float-fract-1.0.generated: fail +program/execute/builtin/builtin-float-frexp-1.0.generated: fail +program/execute/builtin/builtin-float-hypot-1.0.generated: fail +program/execute/builtin/builtin-float-ilogb-1.0.generated: fail +program/execute/builtin/builtin-float-isequal-1.0.generated: fail +program/execute/builtin/builtin-float-isfinite-1.0.generated: fail +program/execute/builtin/builtin-float-isgreater-1.0.generated: fail +program/execute/builtin/builtin-float-isgreaterequal-1.0.generated: fail +program/execute/builtin/builtin-float-isinf-1.0.generated: fail +program/execute/builtin/builtin-float-isless-1.0.generated: fail +program/execute/builtin/builtin-float-islessequal-1.0.generated: fail +program/execute/builtin/builtin-float-islessgreater-1.0.generated: fail +program/execute/builtin/builtin-float-isnan-1.0.generated: fail +program/execute/builtin/builtin-float-isnormal-1.0.generated: fail +program/execute/builtin/builtin-float-isnotequal-1.0.generated: fail +program/execute/builtin/builtin-float-isordered-1.0.generated: fail +program/execute/builtin/builtin-float-isunordered-1.0.generated: fail +program/execute/builtin/builtin-float-ldexp-1.0.generated: fail +program/execute/builtin/builtin-float-lgamma-1.0.generated: fail +program/execute/builtin/builtin-float-lgamma_r-1.0.generated: fail +program/execute/builtin/builtin-float-log-1.0.generated: fail +program/execute/builtin/builtin-float-log10-1.0.generated: fail +program/execute/builtin/builtin-float-log1p-1.0.generated: fail +program/execute/builtin/builtin-float-log2-1.0.generated: fail +program/execute/builtin/builtin-float-logb-1.0.generated: fail +program/execute/builtin/builtin-float-mad-1.0.generated: fail +program/execute/builtin/builtin-float-max-1.0.generated: fail +program/execute/builtin/builtin-float-maxmag-1.1.generated: fail +program/execute/builtin/builtin-float-min-1.0.generated: fail +program/execute/builtin/builtin-float-minmag-1.1.generated: fail +program/execute/builtin/builtin-float-mix-1.0.generated: fail +program/execute/builtin/builtin-float-modf-1.0.generated: fail +program/execute/builtin/builtin-float-nextafter-1.0.generated: fail +program/execute/builtin/builtin-float-pow-1.0.generated: fail +program/execute/builtin/builtin-float-pown-1.0.generated: fail +program/execute/builtin/builtin-float-powr-1.0.generated: fail +program/execute/builtin/builtin-float-radians-1.0.generated: fail +program/execute/builtin/builtin-float-remainder-1.0.generated: fail +program/execute/builtin/builtin-float-remquo-1.0.generated: fail +program/execute/builtin/builtin-float-rint-1.0.generated: fail +program/execute/builtin/builtin-float-rootn-1.0.generated: fail +program/execute/builtin/builtin-float-round-1.0.generated: fail +program/execute/builtin/builtin-float-rsqrt-1.0.generated: fail +program/execute/builtin/builtin-float-sign-1.0.generated: fail +program/execute/builtin/builtin-float-signbit-1.0.generated: fail +program/execute/builtin/builtin-float-sin-1.0.generated: fail +program/execute/builtin/builtin-float-sincos-1.0.generated: fail +program/execute/builtin/builtin-float-sinh-1.0.generated: fail +program/execute/builtin/builtin-float-sinpi-1.0.generated: fail +program/execute/builtin/builtin-float-smoothstep-1.0.generated: fail +program/execute/builtin/builtin-float-sqrt-1.0.generated: fail +program/execute/builtin/builtin-float-step-1.0.generated: fail +program/execute/builtin/builtin-float-tan-1.0.generated: fail +program/execute/builtin/builtin-float-tanh-1.0.generated: fail +program/execute/builtin/builtin-float-tanpi-1.0.generated: fail +program/execute/builtin/builtin-float-tgamma-1.0.generated: fail +program/execute/builtin/builtin-float-trunc-1.0.generated: fail +program/execute/builtin/builtin-int-abs-1.0.generated: fail +program/execute/builtin/builtin-int-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-int-add_sat-1.0.generated: fail +program/execute/builtin/builtin-int-clamp-1.1.generated: fail +program/execute/builtin/builtin-int-clz-1.0.generated: fail +program/execute/builtin/builtin-int-hadd-1.0.generated: fail +program/execute/builtin/builtin-int-mad24-1.0.generated: fail +program/execute/builtin/builtin-int-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-int-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-int-max-1.1.generated: fail +program/execute/builtin/builtin-int-min-1.1.generated: fail +program/execute/builtin/builtin-int-mul24-1.0.generated: fail +program/execute/builtin/builtin-int-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-int-popcount-1.2.generated: skip +program/execute/builtin/builtin-int-rhadd-1.0.generated: fail +program/execute/builtin/builtin-int-rotate-1.0.generated: fail +program/execute/builtin/builtin-int-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-int-upsample-1.0.generated: fail +program/execute/builtin/builtin-long-abs-1.0.generated: fail +program/execute/builtin/builtin-long-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-long-add_sat-1.0.generated: fail +program/execute/builtin/builtin-long-clamp-1.1.generated: fail +program/execute/builtin/builtin-long-clz-1.0.generated: fail +program/execute/builtin/builtin-long-hadd-1.0.generated: fail +program/execute/builtin/builtin-long-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-long-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-long-max-1.1.generated: fail +program/execute/builtin/builtin-long-min-1.1.generated: fail +program/execute/builtin/builtin-long-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-long-popcount-1.2.generated: skip +program/execute/builtin/builtin-long-rhadd-1.0.generated: fail +program/execute/builtin/builtin-long-rotate-1.0.generated: fail +program/execute/builtin/builtin-long-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-short-abs-1.0.generated: fail +program/execute/builtin/builtin-short-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-short-add_sat-1.0.generated: fail +program/execute/builtin/builtin-short-clamp-1.1.generated: fail +program/execute/builtin/builtin-short-clz-1.0.generated: fail +program/execute/builtin/builtin-short-hadd-1.0.generated: fail +program/execute/builtin/builtin-short-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-short-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-short-max-1.1.generated: fail +program/execute/builtin/builtin-short-min-1.1.generated: fail +program/execute/builtin/builtin-short-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-short-popcount-1.2.generated: skip +program/execute/builtin/builtin-short-rhadd-1.0.generated: fail +program/execute/builtin/builtin-short-rotate-1.0.generated: fail +program/execute/builtin/builtin-short-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-short-upsample-1.0.generated: fail +program/execute/builtin/builtin-shuffle-char-uchar: fail +program/execute/builtin/builtin-shuffle-double-ulong: fail +program/execute/builtin/builtin-shuffle-float-uint: fail +program/execute/builtin/builtin-shuffle-half-ushort: skip +program/execute/builtin/builtin-shuffle-int-uint: fail +program/execute/builtin/builtin-shuffle-long-ulong: fail +program/execute/builtin/builtin-shuffle-short-ushort: fail +program/execute/builtin/builtin-shuffle-uchar-uchar: fail +program/execute/builtin/builtin-shuffle-uint-uint: fail +program/execute/builtin/builtin-shuffle-ulong-ulong: fail +program/execute/builtin/builtin-shuffle-ushort-ushort: fail +program/execute/builtin/builtin-shuffle2-char-uchar: fail +program/execute/builtin/builtin-shuffle2-double-ulong: fail +program/execute/builtin/builtin-shuffle2-float-uint: fail +program/execute/builtin/builtin-shuffle2-half-ushort: skip +program/execute/builtin/builtin-shuffle2-int-uint: fail +program/execute/builtin/builtin-shuffle2-long-ulong: fail +program/execute/builtin/builtin-shuffle2-short-ushort: fail +program/execute/builtin/builtin-shuffle2-uchar-uchar: fail +program/execute/builtin/builtin-shuffle2-uint-uint: fail +program/execute/builtin/builtin-shuffle2-ulong-ulong: fail +program/execute/builtin/builtin-shuffle2-ushort-ushort: fail +program/execute/builtin/builtin-uchar-abs-1.0.generated: fail +program/execute/builtin/builtin-uchar-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-uchar-add_sat-1.0.generated: fail +program/execute/builtin/builtin-uchar-clamp-1.1.generated: fail +program/execute/builtin/builtin-uchar-clz-1.0.generated: fail +program/execute/builtin/builtin-uchar-hadd-1.0.generated: fail +program/execute/builtin/builtin-uchar-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-uchar-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-uchar-max-1.1.generated: fail +program/execute/builtin/builtin-uchar-min-1.1.generated: fail +program/execute/builtin/builtin-uchar-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-uchar-popcount-1.2.generated: skip +program/execute/builtin/builtin-uchar-rhadd-1.0.generated: fail +program/execute/builtin/builtin-uchar-rotate-1.0.generated: fail +program/execute/builtin/builtin-uchar-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-uchar-upsample-1.0.generated: fail +program/execute/builtin/builtin-uint-abs-1.0.generated: fail +program/execute/builtin/builtin-uint-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-uint-add_sat-1.0.generated: fail +program/execute/builtin/builtin-uint-clamp-1.1.generated: fail +program/execute/builtin/builtin-uint-clz-1.0.generated: fail +program/execute/builtin/builtin-uint-hadd-1.0.generated: fail +program/execute/builtin/builtin-uint-mad24-1.0.generated: fail +program/execute/builtin/builtin-uint-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-uint-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-uint-max-1.1.generated: fail +program/execute/builtin/builtin-uint-min-1.1.generated: fail +program/execute/builtin/builtin-uint-mul24-1.0.generated: fail +program/execute/builtin/builtin-uint-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-uint-popcount-1.2.generated: skip +program/execute/builtin/builtin-uint-rhadd-1.0.generated: fail +program/execute/builtin/builtin-uint-rotate-1.0.generated: fail +program/execute/builtin/builtin-uint-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-uint-upsample-1.0.generated: fail +program/execute/builtin/builtin-ulong-abs-1.0.generated: fail +program/execute/builtin/builtin-ulong-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-ulong-add_sat-1.0.generated: fail +program/execute/builtin/builtin-ulong-clamp-1.1.generated: fail +program/execute/builtin/builtin-ulong-clz-1.0.generated: fail +program/execute/builtin/builtin-ulong-hadd-1.0.generated: fail +program/execute/builtin/builtin-ulong-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-ulong-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-ulong-max-1.1.generated: fail +program/execute/builtin/builtin-ulong-min-1.1.generated: fail +program/execute/builtin/builtin-ulong-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-ulong-popcount-1.2.generated: skip +program/execute/builtin/builtin-ulong-rhadd-1.0.generated: fail +program/execute/builtin/builtin-ulong-rotate-1.0.generated: fail +program/execute/builtin/builtin-ulong-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-ushort-abs-1.0.generated: fail +program/execute/builtin/builtin-ushort-abs_diff-1.0.generated: fail +program/execute/builtin/builtin-ushort-add_sat-1.0.generated: fail +program/execute/builtin/builtin-ushort-clamp-1.1.generated: fail +program/execute/builtin/builtin-ushort-clz-1.0.generated: fail +program/execute/builtin/builtin-ushort-hadd-1.0.generated: fail +program/execute/builtin/builtin-ushort-mad_hi-1.0.generated: fail +program/execute/builtin/builtin-ushort-mad_sat-1.0.generated: fail +program/execute/builtin/builtin-ushort-max-1.1.generated: fail +program/execute/builtin/builtin-ushort-min-1.1.generated: fail +program/execute/builtin/builtin-ushort-mul_hi-1.0.generated: fail +program/execute/builtin/builtin-ushort-popcount-1.2.generated: skip +program/execute/builtin/builtin-ushort-rhadd-1.0.generated: fail +program/execute/builtin/builtin-ushort-rotate-1.0.generated: fail +program/execute/builtin/builtin-ushort-sub_sat-1.0.generated: fail +program/execute/builtin/builtin-ushort-upsample-1.0.generated: fail +program/execute/call-clobbers-amdgcn: skip +program/execute/calls: crash +program/execute/calls-large-struct: crash +program/execute/calls-struct: crash +program/execute/gegl-rgb-gamma-u8-to-ragabaf: crash +program/execute/global-offset/3d, input dependent: fail +program/execute/i32-stack-array: crash +program/execute/image-attributes: skip +program/execute/image-read-2d: skip +program/execute/image-write-2d: skip +program/execute/load-hi16: crash +program/execute/load-hi16-generic: skip +program/execute/load-lo16: crash +program/execute/load-lo16-generic: skip +program/execute/mad-mix: skip +program/execute/multiple-stack-objects: crash +program/execute/negative-private-base-pointer: crash +program/execute/program-tester-check-local-size-test-should-skip/this test should skip: skip +program/execute/pyrit-wpa-psk: crash +program/execute/realign-stack: crash +program/execute/reference: crash +program/execute/sampler: skip +program/execute/scalar-logical-float: skip +program/execute/store-hi16-generic: skip +program/execute/v2i32-stack: crash +program/execute/v3i32-stack: crash +program/execute/v3i32-stack-array: crash +program/execute/v4i32-stack: crash +program/execute/vload/vload-char-global: fail +program/execute/vload/vload-char-local: fail +program/execute/vload/vload-char-private: fail +program/execute/vload/vload-double-global: fail +program/execute/vload/vload-double-local: fail +program/execute/vload/vload-double-private: fail +program/execute/vload/vload-float-global: fail +program/execute/vload/vload-float-local: fail +program/execute/vload/vload-float-private: fail +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/vload-int-global: fail +program/execute/vload/vload-int-local: fail +program/execute/vload/vload-int-private: fail +program/execute/vload/vload-long-global: fail +program/execute/vload/vload-long-local: fail +program/execute/vload/vload-long-private: fail +program/execute/vload/vload-short-global: fail +program/execute/vload/vload-short-local: fail +program/execute/vload/vload-short-private: fail +program/execute/vload/vload-uchar-global: fail +program/execute/vload/vload-uchar-local: fail +program/execute/vload/vload-uchar-private: fail +program/execute/vload/vload-uint-global: fail +program/execute/vload/vload-uint-local: fail +program/execute/vload/vload-uint-private: fail +program/execute/vload/vload-ulong-global: fail +program/execute/vload/vload-ulong-local: fail +program/execute/vload/vload-ulong-private: fail +program/execute/vload/vload-ushort-global: fail +program/execute/vload/vload-ushort-local: fail +program/execute/vload/vload-ushort-private: fail +program/execute/vload/vload_half-float-local: crash +program/execute/vload/vload_half-float-private: crash +program/execute/vload/vloada_half-float-private: crash +program/execute/vstore/vstore-char-global: fail +program/execute/vstore/vstore-char-local: fail +program/execute/vstore/vstore-char-private: fail +program/execute/vstore/vstore-double-global: fail +program/execute/vstore/vstore-double-local: fail +program/execute/vstore/vstore-double-private: fail +program/execute/vstore/vstore-float-global: fail +program/execute/vstore/vstore-float-local: fail +program/execute/vstore/vstore-float-private: fail +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-int-global: fail +program/execute/vstore/vstore-int-local: fail +program/execute/vstore/vstore-int-private: fail +program/execute/vstore/vstore-long-global: fail +program/execute/vstore/vstore-long-local: fail +program/execute/vstore/vstore-long-private: fail +program/execute/vstore/vstore-short-global: fail +program/execute/vstore/vstore-short-local: fail +program/execute/vstore/vstore-short-private: fail +program/execute/vstore/vstore-uchar-global: fail +program/execute/vstore/vstore-uchar-local: fail +program/execute/vstore/vstore-uchar-private: fail +program/execute/vstore/vstore-uint-global: fail +program/execute/vstore/vstore-uint-local: fail +program/execute/vstore/vstore-uint-private: fail +program/execute/vstore/vstore-ulong-global: fail +program/execute/vstore/vstore-ulong-local: fail +program/execute/vstore/vstore-ulong-private: fail +program/execute/vstore/vstore-ushort-global: fail +program/execute/vstore/vstore-ushort-local: fail +program/execute/vstore/vstore-ushort-private: fail +program/execute/vstore/vstore_half-double-global: crash +program/execute/vstore/vstore_half-double-local: crash +program/execute/vstore/vstore_half-double-private: crash +program/execute/vstore/vstore_half-float-private: crash +program/execute/vstore/vstorea_half-double-global: crash +program/execute/vstore/vstorea_half-double-local: crash +program/execute/vstore/vstorea_half-double-private: crash +program/execute/vstore/vstorea_half-float-private: crash +summary: + name: results + ---- -------- + pass: 1418 + fail: 296 + crash: 29 + skip: 79 + timeout: 0 + warn: 0 + incomplete: 0 + dmesg-warn: 0 + dmesg-fail: 0 + changes: 0 + fixes: 0 +regressions: 0 + total: 1822 diff --git a/.gitlab-ci/piglit/run_cl.sh b/.gitlab-ci/piglit/run_cl.sh new file mode 100755 index 0000000..57251ea --- /dev/null +++ b/.gitlab-ci/piglit/run_cl.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +set -e +set -o xtrace + +VERSION=`cat install/VERSION` + +rm -rf results +cd /piglit + +export OCL_ICD_VENDORS=$OLDPWD/install/etc/OpenCL/vendors/ + +PIGLIT_OPTIONS=$(echo $PIGLIT_OPTIONS | head -n 1) +set +e +unset DISPLAY +export LD_LIBRARY_PATH=$OLDPWD/install/lib +clinfo +./piglit run -c -j${FDO_CI_CONCURRENT:-4} $PIGLIT_OPTIONS $PIGLIT_PROFILES $OLDPWD/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 +cp $OLDPWD/install/piglit/$PIGLIT_RESULTS.txt .gitlab-ci/piglit/$PIGLIT_RESULTS.txt.baseline +./piglit summary console $OLDPWD/results | head -n -1 | grep -v ": pass" >.gitlab-ci/piglit/$PIGLIT_RESULTS.txt + +if diff -q .gitlab-ci/piglit/$PIGLIT_RESULTS.txt{.baseline,}; then + exit 0 +fi + +./piglit summary html --exclude-details=pass $OLDPWD/summary $OLDPWD/results + +echo Unexpected change in results: +diff -u .gitlab-ci/piglit/$PIGLIT_RESULTS.txt{.baseline,} +exit 1 -- 2.7.4