diff --git a/.gitlab-ci/build/gitlab-ci.yml b/.gitlab-ci/build/gitlab-ci.yml index dfc9a148876..c666b80ae47 100644 --- a/.gitlab-ci/build/gitlab-ci.yml +++ b/.gitlab-ci/build/gitlab-ci.yml @@ -708,6 +708,7 @@ debian-clang: -Wno-error=overloaded-virtual -Wno-error=tautological-constant-out-of-range-compare -Wno-error=unused-private-field + -Wno-error=vla-cxx-extension DRI_LOADERS: > -D glx=dri -D gbm=enabled diff --git a/.gitlab-ci/container/build-llvm-spirv.sh b/.gitlab-ci/container/build-llvm-spirv.sh index 125420c9731..8fcfa4e9851 100644 --- a/.gitlab-ci/container/build-llvm-spirv.sh +++ b/.gitlab-ci/container/build-llvm-spirv.sh @@ -4,7 +4,11 @@ set -ex uncollapsed_section_start llvm-spirv "Building LLVM-SPIRV-Translator" -VER="${LLVM_VERSION:?llvm not set}.0.0" +if [ "${LLVM_VERSION:?llvm version not set}" -ge 18 ]; then + VER="${LLVM_VERSION}.1.0" +else + VER="${LLVM_VERSION}.0.0" +fi curl -L --retry 4 -f --retry-all-errors --retry-delay 60 \ -O "https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/refs/tags/v${VER}.tar.gz" diff --git a/.gitlab-ci/container/build-skqp_base.gn b/.gitlab-ci/container/build-skqp_base.gn index 472b44fb8e4..1a64da34e0e 100644 --- a/.gitlab-ci/container/build-skqp_base.gn +++ b/.gitlab-ci/container/build-skqp_base.gn @@ -34,6 +34,11 @@ extra_cflags_cc = [ "-Wno-unused-but-set-variable", "-Wno-sizeof-array-div", "-Wno-string-concatenation", + "-Wno-unsafe-buffer-usage", + "-Wno-switch-default", + "-Wno-cast-function-type-strict", + "-Wno-format", + "-Wno-enum-constexpr-conversion", ] cc_wrapper = "ccache" diff --git a/.gitlab-ci/container/debian/arm64_build.sh b/.gitlab-ci/container/debian/arm64_build.sh index e9d4e078477..e3cf5351ca6 100644 --- a/.gitlab-ci/container/debian/arm64_build.sh +++ b/.gitlab-ci/container/debian/arm64_build.sh @@ -9,10 +9,11 @@ set -o xtrace : "${LLVM_VERSION:?llvm version not set}" -apt-get -y install ca-certificates +apt-get -y install ca-certificates curl gnupg2 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list.d/* echo "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" | tee /etc/apt/sources.list.d/gfx-ci_.list -apt-get update + +. .gitlab-ci/container/debian/maybe-add-llvm-repo.sh # Ephemeral packages (installed for this script and removed again at the end) EPHEMERAL=( @@ -81,6 +82,8 @@ DEPS=( zstd ) +apt-get update + apt-get -y install "${DEPS[@]}" "${EPHEMERAL[@]}" pip3 install --break-system-packages git+http://gitlab.freedesktop.org/freedesktop/ci-templates@ffe4d1b10aab7534489f0c4bbc4c5899df17d3f2 diff --git a/.gitlab-ci/container/debian/maybe-add-llvm-repo.sh b/.gitlab-ci/container/debian/maybe-add-llvm-repo.sh new file mode 100644 index 00000000000..6890fb63721 --- /dev/null +++ b/.gitlab-ci/container/debian/maybe-add-llvm-repo.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash + +# Check to see if we need a separate repo to install LLVM. + +case "${FDO_DISTRIBUTION_VERSION%-*},${LLVM_VERSION}" in + bookworm,15) + NEED_LLVM_REPO="false" + ;; + *) + NEED_LLVM_REPO="true" + ;; +esac + +if [ "$NEED_LLVM_REPO" = "true" ]; then + curl -s https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - + export LLVM_APT_REPO="deb [trusted=yes] https://apt.llvm.org/${FDO_DISTRIBUTION_VERSION%-*}/ llvm-toolchain-${FDO_DISTRIBUTION_VERSION%-*}-${LLVM_VERSION} main" + echo "$LLVM_APT_REPO" | tee /etc/apt/sources.list.d/llvm.list +fi diff --git a/.gitlab-ci/container/debian/test-base.sh b/.gitlab-ci/container/debian/test-base.sh index e4ea33d906a..01d3907e49e 100644 --- a/.gitlab-ci/container/debian/test-base.sh +++ b/.gitlab-ci/container/debian/test-base.sh @@ -15,7 +15,7 @@ uncollapsed_section_start debian_setup "Base Debian system setup" export DEBIAN_FRONTEND=noninteractive -apt-get install -y ca-certificates gnupg2 software-properties-common +apt-get install -y curl ca-certificates gnupg2 software-properties-common sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list.d/* @@ -23,6 +23,8 @@ echo "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/ : "${LLVM_VERSION:?llvm version not set!}" +. .gitlab-ci/container/debian/maybe-add-llvm-repo.sh + # Ephemeral packages (installed for this script and removed again at the end) EPHEMERAL=( autoconf @@ -40,6 +42,7 @@ EPHEMERAL=( libasound2-dev libcap-dev "libclang-cpp${LLVM_VERSION}-dev" + "libclang-rt-${LLVM_VERSION}-dev" libdrm-dev libegl-dev libelf-dev diff --git a/.gitlab-ci/container/debian/x86_64_build-base.sh b/.gitlab-ci/container/debian/x86_64_build-base.sh index 91f2a42ae0d..a7fcc8184f7 100644 --- a/.gitlab-ci/container/debian/x86_64_build-base.sh +++ b/.gitlab-ci/container/debian/x86_64_build-base.sh @@ -14,10 +14,12 @@ set -o xtrace export DEBIAN_FRONTEND=noninteractive : "${LLVM_VERSION:?llvm version not set!}" -apt-get install -y ca-certificates +apt-get install -y ca-certificates curl gnupg2 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list.d/* echo "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" | tee /etc/apt/sources.list.d/gfx-ci_.list +. .gitlab-ci/container/debian/maybe-add-llvm-repo.sh + # Ephemeral packages (installed for this script and removed again at # the end) EPHEMERAL=( diff --git a/.gitlab-ci/container/debian/x86_64_build.sh b/.gitlab-ci/container/debian/x86_64_build.sh index ffb5f1f320c..86b6a4de2b5 100644 --- a/.gitlab-ci/container/debian/x86_64_build.sh +++ b/.gitlab-ci/container/debian/x86_64_build.sh @@ -31,6 +31,7 @@ DEPS=( libarchive-dev libdrm-dev "libclang-cpp${LLVM_VERSION}-dev" + "libclang-rt-${LLVM_VERSION}-dev" libgbm-dev libglvnd-dev liblua5.3-dev diff --git a/.gitlab-ci/container/gitlab-ci.yml b/.gitlab-ci/container/gitlab-ci.yml index 8f4a3888997..e65cf894638 100644 --- a/.gitlab-ci/container/gitlab-ci.yml +++ b/.gitlab-ci/container/gitlab-ci.yml @@ -72,7 +72,7 @@ debian/x86_64_build-base: - .debian-container variables: MESA_IMAGE_TAG: &debian-x86_64_build-base "${DEBIAN_BASE_TAG}--${PKG_REPO_REV}" - LLVM_VERSION: &debian-x86_64-llvm 15 + LLVM_VERSION: &debian-x86_64-llvm 19 .use-debian/x86_64_build-base: extends: @@ -130,6 +130,7 @@ debian/ppc64el_build: - .use-debian/x86_64_build-base variables: MESA_IMAGE_TAG: &debian-ppc64el_build ${DEBIAN_BUILD_TAG} + LLVM_VERSION: &debian-ppc64el-llvm 15 # no LLVM packages for PPC .use-debian/ppc64el_build: extends: @@ -138,7 +139,7 @@ debian/ppc64el_build: MESA_BASE_TAG: *debian-x86_64_build-base MESA_IMAGE_PATH: "debian/ppc64el_build" MESA_IMAGE_TAG: *debian-ppc64el_build - LLVM_VERSION: *debian-x86_64-llvm + LLVM_VERSION: *debian-ppc64el-llvm needs: - debian/ppc64el_build @@ -148,6 +149,7 @@ debian/s390x_build: - .use-debian/x86_64_build-base variables: MESA_IMAGE_TAG: &debian-s390x_build ${DEBIAN_BUILD_TAG} + LLVM_VERSION: &debian-s390x-llvm 19 .use-debian/s390x_build: extends: @@ -156,7 +158,7 @@ debian/s390x_build: MESA_BASE_TAG: *debian-x86_64_build-base MESA_IMAGE_PATH: "debian/s390x_build" MESA_IMAGE_TAG: *debian-s390x_build - LLVM_VERSION: *debian-x86_64-llvm + LLVM_VERSION: *debian-s390x-llvm needs: - debian/s390x_build @@ -200,7 +202,7 @@ debian/arm64_build: - aarch64 variables: MESA_IMAGE_TAG: &debian-arm64_build "${DEBIAN_BASE_TAG}--${PKG_REPO_REV}" - LLVM_VERSION: &debian-arm64-llvm 15 + LLVM_VERSION: &debian-arm64-llvm 19 .use-debian/arm64_build: extends: @@ -485,7 +487,7 @@ kernel+rootfs_arm32: - .firmware_arm32 variables: DEBIAN_ARCH: "armhf" - LLVM_VERSION: *debian-arm64-llvm # these are tied together as arm32 is built within aarch64 + LLVM_VERSION: &debian-arm32-llvm 15 # no armhf builds for LLVM # Cannot use anchors defined here from included files, so use extends: instead .use-kernel+rootfs-arm: diff --git a/.gitlab-ci/container/lava_build.sh b/.gitlab-ci/container/lava_build.sh index 56fc400ea41..7f617e8b7f6 100755 --- a/.gitlab-ci/container/lava_build.sh +++ b/.gitlab-ci/container/lava_build.sh @@ -183,6 +183,8 @@ CONTAINER_EPHEMERAL=( echo "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" | tee /etc/apt/sources.list.d/gfx-ci_.list +. .gitlab-ci/container/debian/maybe-add-llvm-repo.sh + apt-get update apt-get install -y --no-remove \ -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' \ @@ -266,7 +268,8 @@ mmdebstrap \ bookworm \ "$ROOTFS/" \ "http://deb.debian.org/debian" \ - "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" + "deb [trusted=yes] https://gitlab.freedesktop.org/gfx-ci/ci-deb-repo/-/raw/${PKG_REPO_REV}/ ${FDO_DISTRIBUTION_VERSION%-*} main" \ + "${LLVM_APT_REPO:-}" ############### Install mold . .gitlab-ci/container/build-mold.sh diff --git a/.gitlab-ci/image-tags.yml b/.gitlab-ci/image-tags.yml index e4ec3ec93de..e0abbd58ec3 100644 --- a/.gitlab-ci/image-tags.yml +++ b/.gitlab-ci/image-tags.yml @@ -13,10 +13,10 @@ variables: DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base" - DEBIAN_BASE_TAG: "20250128-llversionm1" + DEBIAN_BASE_TAG: "20250128-llvm19-up" DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build" - DEBIAN_BUILD_TAG: "20250128-llversionm1" + DEBIAN_BUILD_TAG: "20250128-llvm19-up" DEBIAN_X86_64_TEST_BASE_IMAGE: "debian/x86_64_test-base" DEBIAN_ARM64_TEST_BASE_IMAGE: "debian/arm64_test-base" @@ -27,10 +27,10 @@ variables: DEBIAN_ARM64_TEST_IMAGE_VK_PATH: "debian/arm64_test-vk" DEBIAN_X86_64_TEST_ANDROID_IMAGE_PATH: "debian/x86_64_test-android" - DEBIAN_TEST_ANDROID_TAG: "20250128-llversionm1" - DEBIAN_TEST_GL_TAG: "20250128-llversionm1" - DEBIAN_TEST_VK_TAG: "20250128-llversionm1" - KERNEL_ROOTFS_TAG: "20250128-llversionm1" + DEBIAN_TEST_ANDROID_TAG: "20250128-llvm19-up" + DEBIAN_TEST_GL_TAG: "20250128-llvm19-up" + DEBIAN_TEST_VK_TAG: "20250128-llvm19-up" + KERNEL_ROOTFS_TAG: "20250128-llvm19-up" DEBIAN_PYUTILS_IMAGE: "debian/x86_64_pyutils" DEBIAN_PYUTILS_TAG: "20241223-pyutils" @@ -41,7 +41,7 @@ variables: KERNEL_TAG: "v6.13-rc4-mesa-5e77" KERNEL_REPO: "gfx-ci/linux" - PKG_REPO_REV: "bca9635d" + PKG_REPO_REV: "95bf62c" FLUSTER_VECTORS_VERSION: "5" diff --git a/src/freedreno/ci/freedreno-a618-fails.txt b/src/freedreno/ci/freedreno-a618-fails.txt index b164b81e9fe..979eba223cd 100644 --- a/src/freedreno/ci/freedreno-a618-fails.txt +++ b/src/freedreno/ci/freedreno-a618-fails.txt @@ -311,3 +311,94 @@ program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float16, 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 + +# (file=input,line=0,column=0,index=0): Unresolved external reference to "_Z21convert_char4_sat_rteDv4_i". +program@execute@vector-conversion,Fail + +# piles of new fails since updating skqp; to be re-evaluated with new upstream +gl_all_bitmap_configs,Fail +gl_androidblendmodes,Fail +gl_annotated_text,Fail +gl_arithmode,Fail +gl_bitmapcopy,Fail +gl_blob_rsxform,Fail +gl_blurSmallRadii,Fail +gl_coloremoji_blendmodes,Fail +gl_colorwheelnative,Fail +gl_combinemaskfilter,Fail +gl_dashtextcaps,Fail +gl_degenerate_gradients,Fail +gl_draw-atlas-colors,Fail +gl_encode,Fail +gl_gammagradienttext,Fail +gl_gammatext,Fail +gl_gpusamplerstress,Fail +gl_gradtext,Fail +gl_highcontrastfilter,Fail +gl_image-surface,Fail +gl_imageblur2,Fail +gl_imageblur_large,Fail +gl_imageblurtiled,Fail +gl_lcdblendmodes,Fail +gl_lcdtextsize,Fail +gl_scaled_tilemode_bitmap,Fail +gl_scaled_tilemode_gradient,Fail +gl_scaled_tilemodes,Fail +gl_simpleaaclip_aaclip,Fail +gl_skbug_5321,Fail +gl_srcmode,Fail +gl_surfaceprops,Fail +gl_textblob_intercepts,Fail +gl_textblobblockreordering,Fail +gl_textblobcolortrans,Fail +gl_textfilter_color,Fail +gl_textfilter_image,Fail +gl_tilemode_bitmap,Fail +gl_typefacestyles,Fail +gl_wacky_yuv_formats,Fail +gl_wacky_yuv_formats_cs,Fail +gl_xfermodes2,Fail +gl_xfermodes3,Fail +vk_all_bitmap_configs,Fail +vk_androidblendmodes,Fail +vk_annotated_text,Fail +vk_arithmode,Fail +vk_bitmapcopy,Fail +vk_blob_rsxform,Fail +vk_blurSmallRadii,Fail +vk_coloremoji_blendmodes,Fail +vk_colorwheelnative,Fail +vk_combinemaskfilter,Fail +vk_dashtextcaps,Fail +vk_degenerate_gradients,Fail +vk_draw-atlas-colors,Fail +vk_encode,Fail +vk_gammagradienttext,Fail +vk_gammatext,Fail +vk_gpusamplerstress,Fail +vk_gradtext,Fail +vk_highcontrastfilter,Fail +vk_image-surface,Fail +vk_imageblur2,Fail +vk_imageblur_large,Fail +vk_imageblurtiled,Fail +vk_lcdblendmodes,Fail +vk_lcdtextsize,Fail +vk_scaled_tilemode_bitmap,Fail +vk_scaled_tilemode_gradient,Fail +vk_scaled_tilemodes,Fail +vk_simpleaaclip_aaclip,Fail +vk_skbug_5321,Fail +vk_srcmode,Fail +vk_surfaceprops,Fail +vk_textblob_intercepts,Fail +vk_textblobblockreordering,Fail +vk_textblobcolortrans,Fail +vk_textfilter_color,Fail +vk_textfilter_image,Fail +vk_tilemode_bitmap,Fail +vk_typefacestyles,Fail +vk_wacky_yuv_formats,Fail +vk_wacky_yuv_formats_cs,Fail +vk_xfermodes2,Fail +vk_xfermodes3,Fail diff --git a/src/freedreno/ci/freedreno-a660-fails.txt b/src/freedreno/ci/freedreno-a660-fails.txt index 10d5e10da4e..1159f7c350b 100644 --- a/src/freedreno/ci/freedreno-a660-fails.txt +++ b/src/freedreno/ci/freedreno-a660-fails.txt @@ -80,3 +80,6 @@ program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float16, 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 + +# (file=input,line=0,column=0,index=0): Unresolved external reference to "_Z21convert_char4_sat_rteDv4_i". +program@execute@vector-conversion,Fail diff --git a/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt b/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt index edb994f0381..b42d41f5fdc 100644 --- a/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt +++ b/src/gallium/drivers/llvmpipe/ci/llvmpipe-rusticl-fails.txt @@ -42,3 +42,6 @@ api@clgetcommandqueueinfo,Fail # demands at least 1/4 system RAM be allocatable, which we can't guarantee api@clgetdeviceinfo,Fail + +# (file=input,line=0,column=0,index=0): Unresolved external reference to "_Z21convert_char4_sat_rteDv4_i". +program@execute@vector-conversion,Fail diff --git a/src/intel/ci/intel-adl-fails.txt b/src/intel/ci/intel-adl-fails.txt index c90c39595f5..d66146f81ba 100644 --- a/src/intel/ci/intel-adl-fails.txt +++ b/src/intel/ci/intel-adl-fails.txt @@ -12,6 +12,9 @@ program@execute@vstore@vstore-uchar-private,Crash program@execute@vstore@vstore-ushort-private,Crash program@execute@vstore@vstore_half-float-private,Crash +# (file=input,line=0,column=0,index=0): Unresolved external reference to "_Z21convert_char4_sat_rteDv4_i". +program@execute@vector-conversion,Fail + # Piglit CL bug program@execute@builtin@builtin-float-nextafter-1.0.generated,Fail program@execute@builtin@builtin-float-nextafter-1.0.generated@nextafter float1,Fail