LLVM 3.4 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.