The release of LLVM 3.4 is imminent and with the major compiler infrastructure upgrade comes update to the Clang C/C++ compiler front-end, LLDB debugger, and other LLVM sub-projects. LLVM 3.4 is a very righteous release and in celebration of its forthcoming release, it's back into compiler benchmarking season at Phoronix.
For this weekend benchmarking of LLVM/Clang 3.4, testing is just being done from a single system and comparing just the LLVM/Clang/Compiler-RT 3.3 release against a SVN snapshot of the LLVM 3.4 branch with Clang and Compiler-RT. When LLVM 3.4 is officially declared as stable, more benchmarks will be coming on Phoronix and reference compiler performance benchmarks against GCC, etc. It's a cycle that comes every six months at Phoronix with major LLVM updates.
I've written dozens of articles in the past few months talking about LLVM 3.4 improvements; here's a brief overview of LLVM 3.4 changes. Among the major highlights is the AMD R600 GPU LLVM back-end now being built by default, the loop vectorizer is now more widely used, the SLP Vectorizer is now enabled at the -O3 optimization level, improved ARM performance, and enhanced C++11/C++14 language support.
For this fresh benchmarking of LLVM Clang 3.4 against LLVM Clang 3.3, an Intel Core i7 4960X Ivy Bridge Extreme Edition was used for this round with its six CPU cores plus Hyper Threading. During benchmarking, the CFLAGS/CXXFLAGS were set to "-O3 -march=native" for some interesting Ivy Bridge optimized, performant builds.
The base operating system was a recent development snapshot of Ubuntu 14.04 LTS (x86_64) while using the Linux 3.13 Git mainline kernel. Again, just today is the single-system 3.3 vs. 3.4 results while more compiler tests are forthcoming and into January. To carry out your own automated, fully reproducible compiler benchmarks on Linux/BSD/OSX/Solaris operating systems, install the GPL-licensed Phoronix Test Suite to tap the hundreds of test profiles offered on OpenBenchmarking.org.