GNU toolchain 2025 in year review As we step into 2026, here is a review of all of the exciting things that happened in 2025 in the GNU toolchain. Sorry if I miss something out, I might have just forgotten about it since there was so much that happened in the last year.
Releases this year: * GCC: 15.1.0, 15.2.0, 14.3.0, 13.4.0 and 12.5.0 (the last one of GCC 12) * binutils: 2.44, 2.45 and 2.45.1 * gdb: 16.1, 16.2, 16.3 and 17.1 * glibc: 2.41 and 2.42 Conferences this year: * GNU Tools Cauldron 2025 * GCC developer room at FOSDEM 2025 Sourceware changes: * Improvements to forge * sourceware.org moving to new HW and new co-location * Many changes/improvement happened to mitigate AI/LLM bot scraper bots * Include recent change to git over https GCC: * MAINTAINERs news * Richard Sandiford and Marcus Shawcroft stepped down as aarch64 maintainers * aarch64 gained 1 new maintainer and 4 new reviewers * autovectorization gained 1 new maintainer and 1 new reviewer * C++ front-end gained 1 new reviewer * The forge integrator is an official maintainer position * 9525 commits to the trunk * 411 different authors (by names) * 154 different (email) domain * 1056 commits to rust front-end * 857 commits to C++ front-end * 933 commits to Ada front-end and runtime * 565 commits to Fortran front-end * 1073 commits to libstdc++ (C++ runtime/library) * 84 commits to Fortran runtime * 418 commits to riscv backend * 319 commits to aarch64 backend * 314 commits to x86 backend * 385 commits to the vectorizer * 79 commits to match-and-simplify * 91 commits to analyzer * 2 new front-ends * Algol68 (will be included in GCC 16) * cobol (released in GCC 15) * C++ defaults to C++20 * Many C++23 and C++26 features implemented * Rewrite of the analyzer's supergraph * New optimization for openmp: Copy prop into openmp outlined functions * Major improvement to early break/exit auto-vectorization * Improvements to AutoFDO; aarch64 support and more * Improvements and fixes for function multi-versioning; support for aarch64 and riscv * Removal of fold_all_builtins pass * A simple copy prop for aggregates was added * Improved tail recursion with aggregate arguments * libdiagnostics gained many improvements * rustc_codegen_gcc (rustc using libjit) is able to compile many things including std library * LoongArch32 support * _BitInt support for s390 and LoongArch * inline-asm support for supplying hard register # instead of just constraints * Add dep_fusion RTL pass * documentation snapshots happen not just daily * Bugzilla: +778 issues * 5091 new issues opened * 4313 issues closed glibc: * Able to compile with clang * Improvements to math library (libm and libmvec) * sframe support * malloc improvements * termio.h header has been removed * 1409 commits to the trunk * 117 different authors (by names) * 61 different (email) domain * Bugzilla: +42 issues * 253 new issues opened * 211 issues closed gdb/binutils: * 3990 commits to the trunk * 191 different authors (by names) * 105 different (email) domain * gdb Bugzilla: +98 issues * 418 new issues opened * 320 issues closed * binutils Bugzilla: +62 issues * 394 new issues opened * 332 issues closed * AArch64 Linux Guarded Control Stacks support * stabs support was removed from gdb * gdb record now supported for rv64gc * sframe support in binutils improved *
