AVR is an official backend now. Rust has also recently added support for AVR.<p>One more backend I'd like to see is the Espressif (ESP32 etc.) one. They've trying to upstream the support, but it seems that the lack of reviewers from the part of LLVM is slowing down the process...?
> The macros enable users to write C/C++ Vector Length Agnostic (VLA) loops,<p>What a great idea to use VLA to mean something else than it does for ISO C99.
A few items from the release notes that caught my attention:<p>* The debug information now has a feature which lets your debugger recover the value of an optimized-out value in certain (common) circumstances. I wish gdb and lldb pick on up this quickly and that it doesn't need you to specify anything explicitly.<p>* If you're doing JITing with LLVM, you can now run your code's static initializations (which apparently you couldn't before? :-O )<p>* Lots of RISC-V-related work (features, optimization improvements and bug fixes).<p>* Nothing new for PTX (the CUDA IR which you can use LLVM to generate).
Kind of interesting, I was looking at the wikipedia page for LLVM and noticed Delphi was listed, and sure enough the more modern compilers for Delphi are LLVM based[0]. I remember discussing with people just a few days ago here on HN about how the Delphi compiler used to be blazing fast due to being written in Assembly[1]. It's kind of nice to see that others are taking full advantage of LLVM at an official capacity at least, making it much more tried and tested, not that it wasn't already tried and tested before. I think Rust / Swift as well don't hurt. It would be nice to see Kotlin Native taken a lot more seriously by JetBrains on the other hand.<p>[0]: <a href="http://docwiki.embarcadero.com/RADStudio/Sydney/en/LLVM-based_Delphi_Compilers" rel="nofollow">http://docwiki.embarcadero.com/RADStudio/Sydney/en/LLVM-base...</a><p>[1]: <a href="https://news.ycombinator.com/item?id=24735969" rel="nofollow">https://news.ycombinator.com/item?id=24735969</a>
The thing that caught my eye in the release notes is the blurb about Zig:<p><i>Zig is a general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software. In addition to supporting LLVM as an optional backend, Zig links Clang and LLD to provide an out-of-the-box cross compilation experience, not only for Zig code but for C and C++ code as well. Using a sophisticated caching system, Zig lazily builds from source compiler-rt, mingw-w64, musl, glibc, libcxx, libcxxabi, and libunwind for the selected target - a “batteries included” drop-in for GCC/Clang that works the same on every platform.</i>