LLVM / Clang 6.0 Should Be Released Soon With Its Many New Features

LLVM 6.0 and Clang 6.0 are bringing many improvements that have come about over the past six months. Some of the highlights of this upcoming liberally-licensed compiler stack include:
- Initial Spectre mitigation support with Retpolines.
- Initial sanitizer support on NetBSD x86/x86_64.
- Many updates to the MIPS and Hexagon targets.
- Support for 128-bit atomic operations with the System Z target.
- Intrinsics for a number of new Intel extensions like GFNI, AES, and various AVX-512 additions.
- Initial Intel Icelake CPU support.
- Instruction scheduling updates for Sandy Bridge / Ivy Bridge / Haswell / Broadwell / Skylake.
- The AMD znver1 scheduler model is now considered complete.
- An improved scheduler model for AMD Jaguar APUs.
- Improved x86/x86_64 code generation in various conditions.
- A number of new warning options for Clang.
- Clang is now compatible with Microsoft Visual Studio 2015 and 2017 C++ standard library headers.
- A new "--autocomplete" option for Clang to obtain a list of possible flags and arguments.
- -std=17 / -std=gnu17 is now support for initial C17 support for Clang that is currently being firmed up.
- Support for configuration files with Clang.
- Clang on Windows has initial support for Windows on 64-bit ARM.
- Clang now defaults to GNU++14/C++14 rather than the GNU++98 standard.
- OpenCL Clang improvements of sub-group built-ins to enqueue kernel support, OpenCL 2 atomic improvements, and more.
- Various OpenMP improvements for Clang.
And much more. I'll have more LLVM/Clang 6.0 benchmarks on Phoronix in the days ahead. If you have any special test requests, be sure to let us know via the forums.
10 Comments