While LLVM's Clang C/C++ compiler has made amazing progress in recent times, one of the features it's sorely been missing has been OpenMP support to allow it to better compete with GCC in many multi-threaded workloads. There's been numerous projects to work on OpenMP support in LLVM/Clang and most recently Intel has been taking up the work. Intel's latest announcement in the area is that they have decided to open-source their own OpenMP Runtime as a new LLVM sub-project.
An experimental library has been published by a Red Hat developer that allows for an embeddable JIT compiler that's based on GCC.
Several months ago I wrote about the Duetto C++ compiler that is based upon LLVM's Clang and looks to take C++ programming to the HTML5 web. We hadn't heard anything out of the project since then, but today they're announcing their first public beta.
Samsung has published their code to a modified version of the GCC Compiler that supports using the OpenACC 1.0 parallel computing specification. OpenACC allows for simplified parallel programming on heterogeneous CPU and GPU systems.
LLVM's libc++ standard library alternative to the GNU's libstdc++ now has full support for the forthcoming C++1y standard.
For those curious about the performance of LLVM/Clang 3.4 -- the current development code of the increasingly-used open-source cross-platform compiler -- here's some new tests done on an Intel Core i7 "Haswell" processor with using the compiler's "core-avx2" optimizations and benchmarks comparing it to the stable LLVM 3.3 release.
After writing about ClangFormat yesterday as an interesting LLVM project that leverages Clang to automatically reformat C/C++ source-code, a Phoronix reader wrote in about another interesting project, Cling. Cling is an interactive C++ interpreter that uses Clang for Just-In-Time compilation.
Clang-Format is taking shape in LLVM 3.4 to be a competitive answer for automatically transforming and polishing C, C++, and Objective-C code-bases. Clang-Format is part of Clang Tools and can be used for automatic styling of code with easy integration for common programming applications.
While the LLVM compiler infrastructure is supported to some extent on Microsoft Windows, the main focus of LLVM development has been -- and continues to be -- around Linux and OS X support. However, with a recent push, the LLVM toolchain is beginning to make more serious progress on Windows.
It's been a while since last publicly releasing any GCC vs. LLVM/Clang compiler benchmarks from the Samsung Chromebook with Exynos 5 Dual Cortex-A15 SoC. However, uploaded to OpenBenchmarking.org I have now released some new results.
Our latest tests from an Intel Core i7 4900MQ "Haswell" laptop are looking at the impact of applying CPU compiler optimizations for this high-end "core-avx2" processor when using a recent GCC 4.9 development snapshot.
The mainline GCC compiler received support today for UBSAN, the Undefined Behavior Sanitizer.
GCC 4.9 isn't anticipated for release until H1'2014, but it's already been stacking up changes for several months. We have covered some of the new GCC 4.9 work already on Phoronix for this open-source compiler, but here's an overview of some of the other changes.
Intel software engineers have implemented full support for OpenMP 3.1 onto LLVM's Clang C/C++ compiler front-end.
Improvements for LLVM's support of the Linux x32 ABI is set to improve with some work-in-progress patches for the Clang C/C++ compiler front-end and Compiler-RT runtime library.
The latest benchmark results to share from the System76 Gazelle Pro, a Linux laptop with an Intel Core i7 4900MQ "Haswell" processor, are some current benchmarks of the LLVM Clang 3.4 SVN compiler development code. Is there much churn over the latest LLVM/Clang 3.3 stable on this latest-generation Intel CPU?
As anticipated, the LLVM Clang compiler has now enabled the use of its SLP Vectorizer by default.
The 64-bit ARM back-end to the LLVM/Clang compiler now supports generating NEON instructions for AArch64.
Following word this weekend that Apple and Google engineers agree on SLP vectorization by default for the LLVM/Clang compiler, I carried out some fresh SLP Vectorizer benchmarks this weekend from the LLVM Clang 3.4 SVN development code.
After making more widespread use of the Loop Vectorizer, developers at Apple in Google are at least agreeing that LLVM's SLP Vectorizer should be more widely-used as well.
Videos from the recent GCC Cauldron 2013 that was hosted at the Googleplex earlier this month are now available online. Discussed during this developer event is not only the GCC compiler but also GDB, Address Sanitizer, and other compiler-related technologies.
We're still many months out from seeing the release of GCC 4.9 and LLVM Clang 3.4 releases, but with the next major updates to these open-source code compilers will come better support for the C++14 (C++1y) language.
To the ire of some developers, LLVM 3.4 is dropping support for Visual Studio 2008 as its host compiler.
While LLVM/Clang and GCC are moving forward vibrantly as open-source compilers, the current status of the open-source Open64 compiler project appears to be in hiatus.
The Apache Software Foundation has decided to end its Apache C++ Standard Library (stdcxx) project.
The LLVM debugger is back to having ELF core file support for 64-bit Linux.
From an older Intel Core i7 990X Extreme Edition "Gulftown" system the LLVM/Clang compiler performance of the 3.2 and 3.3 releases were compared to the current SVN code as of today. There are some LLVM 3.4 performance improvements while for other workloads there isn't much evolution to see.
The LLVM compiler infrastructure may be generating some speedier binaries by default for the -O3 optimization level by turning on the straight-line SLP vectorizer.
While the innovative LLVM compiler infrastructure is mentioned extremely often on Phoronix along with its Clang C/C++ compiler, receiving less coverage is LLDB. However, with LLVM 3.3, the LLVM Debugger has grown in functionality and is growing in usefulness.
613 Compiler news articles published on Phoronix.