2025 and clang-format still can't enforce a space before function calls https://releases.llvm.org/20.1.0/tools/clang/docs/ClangFormatStyleOptions.html #llvm #clang #format
2025 and clang-format still can't enforce a space before function calls https://releases.llvm.org/20.1.0/tools/clang/docs/ClangFormatStyleOptions.html #llvm #clang #format
One of the reasons I'm still using GitHub for a lot of stuff is the free CI, but I hadn't really realised how little that actually costs. For #CHERIoT #LLVM, we're using Cirrus-CI with a 'bring your own cloud subscription' thing. We set up ccache backed by a cloud storage thing, so incremental builds are fast. The bill for last month? £0.31.
We'll probably pay more as we hire more developers, but I doubt it will cost more than £10/month even with an active team and external contributors. Each CI run costs almost a rounding-error amount, and that's doing a clean (+ ccache) build of LLVM and running the test suite. We're using Google's Arm instances, which have amazingly good price:performance (much better than the x86 ones) for all CI, and just building the x86-64 releases on x86-64 hardware (we do x86-64 and AArch64 builds to pull into our dev container).
For personal stuff, I doubt the CI that I use costs more than £0.10/month at this kind of price. There's a real market for a cloud provider that focuses on scaling down more than on scaling up and made it easy to deploy this kind of thing (we spent far more money on the developer time to figure out the nightmare GCE web interface than we've spent on the compute. It's almost as bad as Azure and seems to be designed by the same set of creatures who have never actually met a human).
Great news everybody! We are moving #MetaCG development into the open!
I wrote a brief blog post about it: https://jplehr.de/2025/03/31/metacg-development-moves-into-open/
A new #blog post appears!
I built a native GCC 14.2.0 for Mac OS X 10.4 Tiger PowerPC.
Hercules: A Compiler for Productive Programming of Heterogeneous Systems
Is there a way to get #Apple #Clang to warn on aggregate initialization w/ designated initializers in the wrong order? In C++ it's supposed to be illegal to aggregate-initialize a struct in any other order than declaration order, but Clang never warns on that so I don't catch it until CI complains or I try to compile the code on a Linux machine
Announcing the LLVM backend for MoonBit, hitting 8x faster performance than Java in FFT benchmarks and enabling out-of-the-box debugging! #MoonBit #LLVM
https://www.moonbitlang.com/blog/llvm-backend
#FreeBSD enables the full suite of #llvm compiler toolchain components for the base operating system: https://cgit.FreeBSD.org/src/commit/?id=1cae7121c667d9caf205832cf45fd02af3157e6f
Great to see.
I'm wondering why FreeBSD uses #LLVM. Not as in where and why specifically they use clang/etc. but this in particular: what's the point in using that if FreeBSD core won't even agree with each other on having a X11-based GNOME or XFCE installer that can be adopted with amd64? Not everyone wants a headless FreeBSD server, or just a remote non-GUI file server guys!
"On FreeBSD, LLVM (specifically Clang/LLVM) serves as the primary compiler toolchain, including the compiler (Clang), linker (LLD), and debugger (LLDB), used for building the FreeBSD operating system, kernel, and various software packages from the FreeBSD Ports Collection"
FYI, someone's actually putting an effort to try to make #Flang compileable. You know, without needing 16G RAM for a single compiler job.
Oh yay #clangformat updated and is now even worse
(No this can't be fixed, give me a .clang-format file which fixes this particular case and I guarantee it'll break 10 other cases)
Healthy Competition With #GCC15 vs. #LLVM #Clang20 Performance On #AMD #Zen5
With some codebases/workloads there can be strong advantages at time for one compiler over the other, but at a high level the #GCC and Clang #compiler performance is extremely tight with recent versions and on modern #x86_64 hardware.
https://www.phoronix.com/review/clang20-gcc15-amd-znver5
Really cool seeing our name up there with the big boys and girls on the new #LLVM Target list: https://www.phoronix.com/news/LLVM-20.1-Released
It's been [ 0 ] days since I have accidentally created a file called `pt-bisect-limit=-1` when debugging LLVM.
An Elf Odissey! #dreamos64 I recently added support for basic ELFs in my hobby #kernel but, it required me to dig into some very obscure issues caused by some changes in llvm and their linker.
Basically the introduction of large sections in #llvm broke the grub image, and caused more problems to my kernel.
I posted all the details of my debug process in my free #kofi post here: https://ko-fi.com/post/Finally-Dreamos64-is-officially-running-an-ELF-Exe-B0B41AYZW0