A couple of updates: * Tim fixed ThinLTO on ppc64el via fix-clang-selection.patch, added in the 123.0.6312.86 release.
* Thanks to bug #1072299, I've built chromium 126.0.6478.126 for bookworm for my own usage/testing, and in addition to the allocator tweak suggested in that thread, I enabled ThinLTO. Here are the tweaks currently needed on stable to avoid subsequent build breakage: --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn @@ -772,10 +772,6 @@ config("compiler") { if (is_apple) { ldflags += [ "-Wcrl,object_path_lto" ] } - - # We only use one version of LLVM within a build so there's no need to - # upgrade debug info, which can be expensive since it runs the verifier. - ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ] } # TODO(crbug.com/335365324): Enable on other platforms. --- a/build/config/rust.gni +++ b/build/config/rust.gni @@ -75,7 +75,7 @@ declare_args() { # # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome - toolchain_supports_rust_thin_lto = !is_chromeos + toolchain_supports_rust_thin_lto = false # Any extra std rlibs in your Rust toolchain, relative to the standard # Rust toolchain. Typically used with 'rust_sysroot_absolute' (The stable version of Rust appears not capable of LTO.) So far, I haven't noticed any ill effects in my "production" home environment... a laptop with 3 GB RAM, and chrome://discards showing 691 tabs :] (But I can't say it feels noticeably snappier, either. Some kind of browser-performance benchmarking is probably in order...)