LLVM 3.4 should be released before the month's end with a matching update to the Clang C/C++ compiler front-end and other LLVM sub-projects like DragonEgg and Compiler-RT.
is tentatively scheduled to be released right before Christmas
. At the moment there's no indications of any delays, but we have seen LLVM releases slip before -- generally though by just a couple days.
Among the highlights you can look forward to with LLVM 3.4 include:
- The AMD "R600" LLVM GPU back-end is no longer experimental and now built by default
. This AMD GPU LLVM back-end is required for the open-source OpenCL support, optionally as a shader back-end for R600g hardware, and is required for any RadeonSI-based GPU (Radeon HD 7000 series and newer).
- Besides no longer being experimental, the R600 back-end has a ton of improvements for LLVM 3.4 so that there can be OpenGL 3.0 compliance and other new functionality
. There's also new GPU support like for AMD Sea Islands
- Greater use of the Loop Vectorizer
. The LLVM Loop Vectorizer is now used at -O2 and -Os levels
(beyond the -O3 optimization level).
- The SLP Vectorizer is turned on by default
for the -O3 optimization level.
- Dropped support for older Visual Studio releases
. This is also likely the last release where LLVM will build under a C++98 compiler as after the 3.4 release, they want to take advantage of C++11
- Improved 64-bit ARM support
- LLDB debugger improvements
, including better Linux compatibility.
- Clang-cl improvements
in imitating Microsoft's Visual Studio.
- LLVM-ar now uses the new object library and produces archives / symbol tables in the GNU format.
- Different sized pointers for different address spaces should now to boost LLVM GPU targets.
- The OCaml bindings should now cover nearly all LLVM libraries.
- Support for the MIPS SIMD architecture (MSA) has been added.
I have already delivered some LLVM/Clang 3.4 compiler benchmarks
but updated results will be out later in the month. Overall LLVM/Clang 3.4 should be some nice competition for the featureful GCC 4.9 release
due in early 2014.