LLVM 6.0 Released With C++14 Default, Intel/AMD Scheduling Improvements

Written by Michael Larabel in LLVM on 8 March 2018 at 07:56 AM EST. 6 Comments
Today marks the long-awaited release of LLVM 6.0 as the slightly late half-year update to this open-source compiler stack and its sub-projects like Clang, LLD, etc.

Among the changes to find with LLVM 6.0 / Clang 6.0 are:

- Improved scheduler models for several x86 micro-architectures, including most Intel CPUs from Sandy Bridge and newer.

- The AMD Zen "znver1" scheduler model is also now considered effectively complete with LLVM 6.0.

- Clang 6.0 now defaults to C++14 by default (GNU++14) rather than C++98. This matches the behavior of GCC while the actual C++14 support has been in place for Clang for quite a while now with -std=gnu++14, this is simple a change in the default.

- Early bits of C++2A support in Clang.

- Retpoline support for Spectre Variant 2 mitigation on Linux, though this support is also being back-ported to LLVM 5.0.

- Intel Icelake CPU support.

- Many other improvements and new features.

The brief LLVM 6.0.0 release announcement can be read on llvm-announce.

Onwards now to LLVM 7.0 for release in late 2018. GCC 8.1 meanwhile should be released within the next few weeks as its first stable GCC 8 release as part of the annual GNU compiler toolchain update.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week