And today I learned that #Flang is real, a FORTRAN compiler.
🚀🎉 Huzzah, the earth-shattering #news is here: "flangnew" is now just "flang"! 🎨 It's a monumental leap for humanity, akin to swapping your mom's spaghetti sauce recipe with *the exact same recipe*. Expect a 33-minute epic saga on how this name change will revolutionize #Fortran #compilation... or not. 🙄👾
https://blog.llvm.org/posts/2025-03-11-flang-new/ #flang #flangnew #tech #software #development #HackerNews #ngated
First official release of LLVM Flang
https://blog.llvm.org/posts/2025-03-11-flang-new/
#HackerNews #LLVM #Flang #Release #LLVM #Flang #News #Compiler #Development #Open #Source #Software
Wygląda na to, że ktoś stara się, żeby Flanga dało się skompilować. No wiecie, jak ktoś nie ma po 16G RAM-u na każdy proces kompilatora.
FYI, someone's actually putting an effort to try to make #Flang compileable. You know, without needing 16G RAM for a single compiler job.
Not that I'm promising anything but I've just sent the final patch to fix building #Flang on #Gentoo:
Nie, żebym coś obiecywał, ale właśnie wysłałem ostatnią łatkę, która powinna naprawić budowanie Flanga na #Gentoo:
Fajne rzeczy dzieją się z #LLVM w #Gentoo:
1. Już o tym wspominałem, ale wszystkie paczki teraz siedzą w llvm-*/, więc łatwiej je znaleźć.
2. Wrzuciłem llvm-runtimes/offload, przywracając obsługę offloadowania #OpenMP (dla 19.1.6 wzwyż).
3. Wrzuciłem llvm-core/mlir, korzystając ze świeżutkiej biblioteki dynamicznej (dostępne w najnowszym snapshocie 20.x, do 19.x raczej nie wejdzie już).
4. Przy okazji zacząłem pracować nad Flangiem, ale nic nie obiecuję. Chciałbym chociaż na poziomie projektu wprowadzić obsługę biblioteki dynamicznej MLIR-a.
5. Wysłałem łatki do wsparcia samodzielnego budowania #ClangIR, więc jak wszystko dobrze pójdzie, od pierwszego dnia będzie nam działało.
6. Na przegląd poszła nowa eclass llvm-r2, ze znacznie lepszym wsparciem kompilacji skrośnej. https://public-inbox.gentoo.org/gentoo-dev/20241221160053.780079-1-mgorny@gentoo.org/T/#t
7. Powoli też pracuję nad poprawą wsparcia kompilacji skrośnej w samych paczkach LLVM, ale nie wiem, kiedy skończę. Chciałbym chociaż wyeliminować konieczność budowania drugiej pełnej kopii LLVM i Clanga na CBUILD, tylko po to, by skompilować Clanga.
Some recent #LLVM goodies in #Gentoo:
1. Well, I've said that already but all packages are now in llvm-*/, so they're easier to find.
2. I've added llvm-runtimes/offload, which restores the offloading functions of #OpenMP (available in 19.1.6+).
3. I've added llvm-core/mlir, now that it provides a proper dylib to link to (available in the most recent 20.x snapshot, no plans to backport to 19.x).
4. I've started working on #Flang too, but no promises. At the very least, I'd like to make it support #MLIR dylib upstream.
5. I've sent patches for standalone build support in #ClangIR, so hopefully it'll be ready for integration when it lands in mainstream.
6. I've sent a new llvm-r2 eclass for review, now with much cleaner support for cross-compilation scenarios. https://public-inbox.gentoo.org/gentoo-dev/20241221160053.780079-1-mgorny@gentoo.org/T/#t
7. I'm also slowly working on improving cross-compilation support for LLVM packages themselves, but no ETA on this. At the very least, I'd like to remove the necessity of building another complete copy of LLVM+Clang for CBUILD to compile #Clang.
Debugging flang in gdb be like.
#Flang-New can officially compile the alpha branch of our primary in house library 🙌 🎉
#flang (the #Fortran #LLVM front-end) is an amazing piece of software but it is built on a heavy piece of C++ infrastructure that is very resource hungry to compile.
I am a bit worried this is an actual deterrent for contributions and it is unintentionally gatekeeping flang to large organisations that can access to big hardware.
Building a modern #compiler infrastructure is never trivial. Building #flang is too arduous (even in Release mode).
The program and schedule for the #fosdem 2023 #llvm devroom has been published! See https://fosdem.org/2023/schedule/track/llvm/
Presentation topics include #sycl, #compiler-rt, reducing global state, #mlir, experience of a downstream project tracking newer LLVM versions, #c2, #flang, and C/C++ embedded toolchains.
#LLVM's #Flang Compiler Adds -Ofast & -ffast-math Support
https://www.phoronix.com/news/Flang-Ofast-ffast-math
Original tweet : https://twitter.com/phoronix/status/1603088316156493824
You can try #Fortran with online #compilers:
- On the Fortran Playground https://play.fortran-lang.org/ you can learn Fortran by compiling (and editing) various examples.
- On Godbolt Compiler Explorer https://godbolt.org/, you can use several versions of #GFortran, Intel #ifort, Intel #ifx and #Flang. And you can read the assembler code.
- On https://dev.lfortran.org/ you can play with the #LFortran compiler (development in progress) and see its intermediate representations.