From c616598f39ab63bb9ba7132101611b95c931b5d9 Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Wed, 13 May 2026 16:50:52 +0200 Subject: [PATCH 1/5] Add CI check when building sysroot with GCC backend and running libcore tests with it --- src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile index 2208ed3ffbe15..60c754b4a15cc 100644 --- a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile +++ b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile @@ -51,3 +51,15 @@ ENV SCRIPT="python3 ../x.py \ --skip tests/rustdoc-json \ --skip tests/rustdoc-ui \ --set rust.codegen-backends=[\\\"llvm\\\",\\\"gcc\\\"]" + +# Build sysroot with gcc backend and run libcore tests in stage 1. +ENV RUST_CONFIGURE_ARGS="--build=x86_64-unknown-linux-gnu \ + --enable-sanitizers \ + --enable-profiler \ + --enable-compiler-docs \ + --set llvm.libzstd=true \ + --set rust.codegen-backends=[\\\"gcc\\\"]" +ENV SCRIPT="python3 ../x.py \ + --stage 1 \ + test library/core \ + --set rust.codegen-backends=[\\\"gcc\\\"]" From 7fe09672f3915c9c6f46725e80a8b2dce561fe4e Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Wed, 13 May 2026 19:25:32 +0200 Subject: [PATCH 2/5] Use debug mode when building and testing libcore with gcc backend --- src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile index 60c754b4a15cc..04c79482a64bc 100644 --- a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile +++ b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile @@ -53,13 +53,16 @@ ENV SCRIPT="python3 ../x.py \ --set rust.codegen-backends=[\\\"llvm\\\",\\\"gcc\\\"]" # Build sysroot with gcc backend and run libcore tests in stage 1. +# We need to use the debug mode because of https://github.com/rust-lang/rustc_codegen_gcc/issues/686 ENV RUST_CONFIGURE_ARGS="--build=x86_64-unknown-linux-gnu \ --enable-sanitizers \ --enable-profiler \ --enable-compiler-docs \ --set llvm.libzstd=true \ + --set rust.debug=true \ --set rust.codegen-backends=[\\\"gcc\\\"]" ENV SCRIPT="python3 ../x.py \ --stage 1 \ test library/core \ + --set rust.debug=true \ --set rust.codegen-backends=[\\\"gcc\\\"]" From f847fa64b62a926907012b0cc4a284477595a8bf Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Wed, 13 May 2026 23:43:09 +0200 Subject: [PATCH 3/5] Disable debug asserts when testing core lib with GCC backend --- src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile index 04c79482a64bc..16d4fde85cf74 100644 --- a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile +++ b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile @@ -60,9 +60,11 @@ ENV RUST_CONFIGURE_ARGS="--build=x86_64-unknown-linux-gnu \ --enable-compiler-docs \ --set llvm.libzstd=true \ --set rust.debug=true \ + --set rust.debug-assertions=false \ --set rust.codegen-backends=[\\\"gcc\\\"]" ENV SCRIPT="python3 ../x.py \ --stage 1 \ test library/core \ --set rust.debug=true \ + --set rust.debug-assertions=false \ --set rust.codegen-backends=[\\\"gcc\\\"]" From f834b748d164042c2785b53466431ed293d4e32a Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Thu, 14 May 2026 17:15:37 +0200 Subject: [PATCH 4/5] Disable optimizations for gcc CI --- src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile index 16d4fde85cf74..b14135feddff1 100644 --- a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile +++ b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile @@ -53,18 +53,18 @@ ENV SCRIPT="python3 ../x.py \ --set rust.codegen-backends=[\\\"llvm\\\",\\\"gcc\\\"]" # Build sysroot with gcc backend and run libcore tests in stage 1. -# We need to use the debug mode because of https://github.com/rust-lang/rustc_codegen_gcc/issues/686 +# We need to disable optimizations because of https://github.com/rust-lang/rustc_codegen_gcc/issues/686 ENV RUST_CONFIGURE_ARGS="--build=x86_64-unknown-linux-gnu \ --enable-sanitizers \ --enable-profiler \ --enable-compiler-docs \ --set llvm.libzstd=true \ - --set rust.debug=true \ + --set rust.optimize=false \ --set rust.debug-assertions=false \ --set rust.codegen-backends=[\\\"gcc\\\"]" ENV SCRIPT="python3 ../x.py \ --stage 1 \ test library/core \ - --set rust.debug=true \ + --set rust.optimize=false \ --set rust.debug-assertions=false \ --set rust.codegen-backends=[\\\"gcc\\\"]" From 21586f4d843c29490130fc5a09f6522417f4eaa6 Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Thu, 14 May 2026 17:53:54 +0200 Subject: [PATCH 5/5] Disable tests optimizations for gcc CI --- src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile index b14135feddff1..fa1bb9f811452 100644 --- a/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile +++ b/src/ci/docker/host-x86_64/x86_64-gnu-gcc/Dockerfile @@ -60,11 +60,13 @@ ENV RUST_CONFIGURE_ARGS="--build=x86_64-unknown-linux-gnu \ --enable-compiler-docs \ --set llvm.libzstd=true \ --set rust.optimize=false \ + --set rust.optimize-tests=false \ --set rust.debug-assertions=false \ --set rust.codegen-backends=[\\\"gcc\\\"]" ENV SCRIPT="python3 ../x.py \ --stage 1 \ test library/core \ --set rust.optimize=false \ + --set rust.optimize-tests=false \ --set rust.debug-assertions=false \ --set rust.codegen-backends=[\\\"gcc\\\"]"