GNU Tools Weekly News Update Week 6 (October 6, 2025)
Summary below:
General/big GNU toolchain news (including sourceware news):
* Last week was the GNU tools 2025 cauldron
** Will post and update when the videos and pdfs on cauldron available
** Thanks again to the host (Faculty of Engineering of the University of Porto) and organizers for a wonderful and productive cauldron
GCC discussion:
* Followup from the cauldron about "bugzilla keyword for beginner issues to work on"
** https://inbox.sourceware.org/gcc/0ef5e545-ec01-4fdc-99ca-28dd30577e6f@gmail.com/T/#m99b5395361ece1d1c3f294e2d5b1582e6d11a39b
* Link to the GCC Steering Committee overview on the wiki was posted
** https://gcc.gnu.org/wiki/gcc-steering-committee
* How to build a cross compiler for NVPTX backend
** The instructions can be found at https://gcc.gnu.org/wiki/Offloading#For_Nvidia_PTX:
* `Regarding vectorize pattern recognition for [generic] vector [extension] code`
** https://inbox.sourceware.org/gcc/pro8s25q-n91q-5qr0-497n-r539n9s290r9@fhfr.qr/T/#me17225d58ef3e998e5897ebd6c9c0bc3b344f49e
GCC commits:
* Removal of the fold_builtin (fab) pass
** Merged functionality into other passes
* Function multi-version (FMV) support was improved to now follow ARM's ACLE
** Support was added to the C front-end also
** AARCH64 support is no longer beta
* libstdc++: Implement Philox Engine, c++26 P2075R6
** First time contributor; https://github.com/1nfocalypse
* Improvements for AutoFDO and profiling in general
* toplevel: unify the GCC and GDB/binutils .editorconfig files
* C: Add -Wmultiple-parameter-fwd-decl-lists new warning
* C++: Implement C++26 P2795R5 - Erroneous behavior for uninitialized reads
* Ada: Availability of the Extended_Access aspect.
** https://gcc.gnu.org/onlinedocs/gnat_rm/Aspect-Extended_005fAccess.html
GCC bugzilla stats (includes previous week too):
* 149 new issues filed
* 113 issues closed
glibc commits:
* C23: Implement memset_explicit
* AArch64: Implement AdvSIMD and SVE log2p1(f) and log10p1(f) routines
* C23: Add once_flag, ONCE_FLAG_INIT and call_once to stdlib.h
* Optimize flt-32 and dbl-64 remainder implementation
glibc/binutils discussions:
* LLM-generated or assisted contributions
** https://inbox.sourceware.org/libc-alpha/20250926113418.GC1335@gnu.wildebeest.org/T/#m150c261c0efeec12da4b0b193ba79f45ddbb9d37
** https://inbox.sourceware.org/binutils/C9F607CF-13B9-492C-B939-8B72BA672BD6@comcast.net/T/#mb0cdf5c6e1a626a19a1470137e5a731058064cce
gdb/binutils commits:
* aarch64: Update and fix some of the system registers
* Add the ability to find the clang LTO plugin with ar/ld/ranlib.
* Many gdb cleanups
gdb discussion:
* gdb does not stop at printf for ppc
** https://inbox.sourceware.org/gdb/87wm5b6a9w.fsf@tromey.com/T/#m6b827501a18f4b1006fcfe390815e818107a1c47
X is where you find the people who think they run the Internet.
Bluesky is where you find the people who think they ought to run the Internet.
Mastodon is where you find the people who actually do run the Internet, and kind of wish they didn't.
(WIth apologies to Yes, Minister)
@gregkh AMD EPYC 9754 128-Core Processor [512 threads]
Cpufreq; Memory: Unknown; 773414 MiB
Compiler: gcc (Debian 15.2.0-4) 15.2.0
Linux compiled: 6.17.0 [/data/linux-6.17/]
Config; Environment: defconfig; CCACHE_DISABLE="1"
Build command: make vmlinux
Run 1 (-j 512): 22.44 seconds / 160.43 kernels/hour [P:9950%, 422 maj. pagefaults]
Run 2 (-j 512): 22.40 seconds / 160.71 kernels/hour [P:10000%, 135 maj. pagefaults]
Thanks Dell!
In honor of the late Robert Redford, "Sneakers", in high def ANSI with full subtitles:
ssh sneakers@ansi.rya.nc
(needs a terminal with 24 bit color support)
[$] Creating a healthy kernel subsystem community
Creating welcoming communities within open-source projects is a recurring topic at conferences; those projects rely on contributions from others, so making them welcome is importan [...]
Well, I just got laid off from my job. If anyone needs a talented embedded systems engineer or hardware engineer with strong experience in video hardware, send me a message with details of a job opening and I can provide a CV. Remote work preferred, but I can work anywhere in central Minnesota. Boosts welcome and encouraged.
Apple M1
My first die shots. You can see a lot more than I'd imagined without a microscope. This is a 1:1 macro lens, and just changing the angle/size of the light source gives you a ton of control.
(My photographs, die prepared by "IT AI IC Cyber Style Store"/foreverfire2005 on ebay)
2005: Your website looks like it was designed by a 3-year-old and barely works, this can't be a trustworthy source of information
2025: Your website looks like it was designed by a 3-year-old and barely works, this is the last bastion of truth on the Internet
Weekly GCC update:
Optimization improvements:
* Copy prop for aggregates improvements; now into args
* Recongize integer zero as zeroing for memset into aggregate copy or memcpy
* Improve VN support over aggregates copies
* Recongize saturation multiple more
* Allow for more mergeable constants to be placed in the mergeable section
C++ improvements/changes:
* Implement C++20 (Defect report) P1766R1: Mitigating minor modules maladies
* Fix parsing of non-comma variadic methods with default args
* Warn on #undef/#define cpp.predefined macros
* Implement C++26 P1306R5 - Expansion statements
* Implement P2036R3 - Change scope of lambda trailing-return-type
* Finish up P2115R0 implementation (unnamed unscoped enums)
Target changes:
* epiphany and rl78 are marked as obsolete targets
* LoongArch: 128bit atomics support
* LoongArch: _BitInt support
* x86: Add target("80387") function attribute
* RISCV: Add MIPS prefetch extensions
* aarch64: Fix CMPBR extension
The more I hear about RISC-V the more it it sounds like XMPP but in even worse because you can't just patch your client. Vendors implement, it doesn't match the spec, "proprietary performance extensions" and you can recompile for every different CPU because of that
Summary of last week's changes in GCC:
* Many GCCrust changes were merged in (200+)
* Improvements to diagnostics infastructure
** supporting nesting levels
* _BitInt support for s390
** changes needed to support for loongarch too
* Update versions of MPC, MPFR and GMP in contrib/download_prerequisites
* Improvments to the VN for reading past an aggregate copy
* copy prop of aggregates improvements
* Improve handling of musttail calls in C++ with -fsanitize=address and -O0
* Fix/Improve constants that are mergeable; supports non power of 2 in some cases
* Implement C++26 P1061R10 - Structured Bindings can introduce a Pack