Having yesterday covered the features so far of GCC 4.9
, here's a look at the features baking for LLVM 3.4
-- the next major compiler infrastructure update due out likely around the end of the year.
Compared to the GNU Compiler Collection seeing just about one major update per year, LLVM sees new releases about every six months. LLVM 3.3
came in June and was a great update, but LLVM 3.4 will bring even more to this increasingly used and relied upon open-source compiler stack and its C/C++ compiler front-end.
Among the items queued up right now in mainline LLVM 3.4 include:
- Expanded use of the Loop Vectorizer
. LLVM's Loop Vectorizer was already in use for the -O3
optimization level in LLVM 3.3, but now it's also used at -O2
optimization levels too.
- AMD's R600 back-end is now enabled by default
and is no longer marked as being an experimental LLVM back-end.
- The R600 LLVM back-end now supports MSAA
and various other new functionality for the GPU LLVM back-end. There's also Sea Islands Compute Support
- NEON support for AArch64
, the 64-bit ARM architecture back-end support in LLVM.
- The SLP Vectorizer is enabled by default
. The LLVM SLP Vectorizer was introduced with 3.3 and optimizes the performance of straight-line code
- Dropping old Visual Studio support
and other old/deprecated LLVM code.
- Some compiler performance changes
- On a related note, the LLDB debugger now has better remote debugging
More LLVM / Clang 3.4 coverage will come as the official release approaches.