From 25c007b185eb80f1b432365e54b1a49d20d63967 Mon Sep 17 00:00:00 2001 From: Derek Date: Tue, 6 Oct 2026 12:52:34 +1100 Subject: [PATCH] docs: say the image's older LLVM majors were for the ClickHouse fork only LLVM 19 to 22 on the ARC image, and its clang/ld.lld defaults on 19, served only the ClickHouse server fork's C++ build. Reading them as a Rust default is the mistake that left Rust releases linking with lld 19 under BOLT 23. The LLVM page now says so and points at versions.yaml as the only default. --- docs/languages/rust-llvm.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/languages/rust-llvm.md b/docs/languages/rust-llvm.md index 59a552d6..6a5c9da6 100644 --- a/docs/languages/rust-llvm.md +++ b/docs/languages/rust-llvm.md @@ -20,6 +20,10 @@ Every Rust build links with `ld.lld` and, on a Tier 2 release, rewrites the bina `llvm-profdata` is the exception: it comes from the rustc sysroot (`llvm-tools-preview`), so the profile is merged by the LLVM that wrote it. +## Older majors on the runner image + +The ARC image has carried LLVM 19, 20, 21 and 22 beside the default, and its unversioned `clang` and `ld.lld` used to point at 19. That was ONLY for the ClickHouse server fork's C++ build (LLVM 19 for ClickHouse OSS compatibility, 21 for the fork's own CI). It was never a Rust default, and the fork is no longer built. Don't read a leftover major on a runner as a requirement: the only default is `versions.yaml` `llvm`. The image is being trimmed to that one major (#519). + ## Choosing the major Highest wins: