From 3578883bb3616208b8f9bb6fa03dc1fda0a16a78 Mon Sep 17 00:00:00 2001 From: Rasmus Munk Larsen <4643818-rmlarsen1@users.noreply.gitlab.com> Date: Thu, 19 Mar 2026 17:56:43 -0700 Subject: [PATCH] CI: Split ASAN/UBSAN build into official/unsupported jobs libeigen/eigen!2315 Co-authored-by: Rasmus Munk Larsen --- ci/build.linux.gitlab-ci.yml | 18 +++++++++++++++++- ci/test.linux.gitlab-ci.yml | 3 ++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/ci/build.linux.gitlab-ci.yml b/ci/build.linux.gitlab-ci.yml index eab079700..fdbb59ab1 100644 --- a/ci/build.linux.gitlab-ci.yml +++ b/ci/build.linux.gitlab-ci.yml @@ -127,9 +127,15 @@ build:linux:docs: ######## Sanitizers ############################################################ -build:linux:cross:x86-64:clang-19:default:asan-ubsan: +# ASAN/UBSAN builds are split into official/unsupported because the +# instrumented executables are too large to upload as a single artifact. +.build:linux:cross:x86-64:clang-19:default:asan-ubsan: extends: .build:linux:cross:x86-64 image: ubuntu:24.04 + # Disable cache for ASAN builds: instrumented .o files are so large that + # downloading the cache can take longer than a clean build from scratch. + cache: [] + timeout: 2h variables: EIGEN_CI_INSTALL: clang-19 libclang-rt-19-dev EIGEN_CI_C_COMPILER: clang-19 @@ -139,6 +145,16 @@ build:linux:cross:x86-64:clang-19:default:asan-ubsan: -DEIGEN_TEST_CUSTOM_CXX_FLAGS=-fsanitize=address,undefined;-fno-omit-frame-pointer;-fno-sanitize-recover=undefined -DEIGEN_TEST_CUSTOM_LINKER_FLAGS=-fsanitize=address,undefined +build:linux:cross:x86-64:clang-19:default:asan-ubsan:official: + extends: .build:linux:cross:x86-64:clang-19:default:asan-ubsan + variables: + EIGEN_CI_BUILD_TARGET: BuildOfficial + +build:linux:cross:x86-64:clang-19:default:asan-ubsan:unsupported: + extends: .build:linux:cross:x86-64:clang-19:default:asan-ubsan + variables: + EIGEN_CI_BUILD_TARGET: BuildUnsupported + ######## NVHPC ################################################################# # NVHPC (nvc++) uses NVIDIA's HPC SDK container image with the compilers diff --git a/ci/test.linux.gitlab-ci.yml b/ci/test.linux.gitlab-ci.yml index b093cc2b3..3461f978f 100644 --- a/ci/test.linux.gitlab-ci.yml +++ b/ci/test.linux.gitlab-ci.yml @@ -225,7 +225,6 @@ test:linux:x86-64:clang-19:generic:avx512dq:unsupported: .test:linux:x86-64:clang-19:default:asan-ubsan: extends: .test:linux:x86-64 image: ubuntu:24.04 - needs: [ build:linux:cross:x86-64:clang-19:default:asan-ubsan ] variables: EIGEN_CI_INSTALL: clang-19 llvm-19 ASAN_OPTIONS: detect_leaks=0:print_stacktrace=1 @@ -235,11 +234,13 @@ test:linux:x86-64:clang-19:generic:avx512dq:unsupported: test:linux:x86-64:clang-19:default:asan-ubsan:official: extends: .test:linux:x86-64:clang-19:default:asan-ubsan + needs: [ build:linux:cross:x86-64:clang-19:default:asan-ubsan:official ] variables: EIGEN_CI_CTEST_LABEL: Official test:linux:x86-64:clang-19:default:asan-ubsan:unsupported: extends: .test:linux:x86-64:clang-19:default:asan-ubsan + needs: [ build:linux:cross:x86-64:clang-19:default:asan-ubsan:unsupported ] variables: EIGEN_CI_CTEST_LABEL: Unsupported