GCC 4.6 Leaves Stage 1 With New Features
Novell's Richard Guenther has just announced that GCC 4.6.0 has now left stage one of development and has immediately entered the third stage. This means no new features or other major work aside from bug-fixes will be accepted into this next major release of the GNU Compiler Collection.
Leaving GCC 4.6 Stage 1 is coming seven months after GCC 4.5.0 was released. The GCC 4.6 release series introduces a new optimization level (-0fast), inter-procedural optimization improvements, compile-time and memory usage improvements thanks to reorganized structures within the GCC data-flow framework (the x86_64 GCC C compiler binary compile-time with LTO went down by 10% according to their report), improved C++0x support, and the C front-end has a -fplan9-extensions option for matching some functionality of the Plan 9 compiler. GCC 4.6 on Linux now also supports the Bionic C library for building native libraries and applications for Google's Android, but currently is only enabled when building for the ARM Linux target.
There's also Google's Go language for GCC. Sadly, it doesn't look like Intel's Core 2 and Core i7 optimizations didn't make it into GCC 4.6. The leaving of GCC 4.6 Stage 1 development was mentioned on the GNU mailing list.
This is coming at a rather opportune time seeing as we just finished benchmarking the past 26 Linux kernels (covering five and a half years of development) and at the end of this massive Linux kernel performance article concluded with:
Again, special thanks go out to Intel for their support and supplying the Intel Core i7 970 "Gulftown" that made benchmarking the past 26 Linux kernels possible in a timely fashion, especially when it comes to bisecting these regressions with building even more kernels. With the Core i7 970 and a solid-state drive, it is possible to build the Linux kernel in about four minutes or less. We are also in the process of doing a similar type of performance comparison, but on the compiler side with GCC, DragonEgg, and LLVM/Clang, to see how the performance has evolved as they play a much greater role in the performance of user-space programs. These compiler results will be out next week for the Core i7 and other systems.
For those of you that follow Phoronix on Facebook, you will also know:
Phoronix now that the kernel benchmarks are out the door, onto benchmarking GCC 4.2 through 4.6, LLVM's Clang, LLVM-GCC, and GCC-DragonEgg. Plus Linux 2.6.37 EXT4/Btrfs benchmarks. Testing being facilitated through next-gen Iveland-based Phoromatic, as Michael Larabel will be in the San Diego area for the next week, if anyone wants to meet up [contact].
So GCC 4.2, GCC 4.3, GCC 4.4, GCC 4.5, GCC 4.6 snapshot, GCC 4.5.1 + DragonEgg 2.8, LLVM 2.8 + Clang, and LLVM-GCC 4.2.1 will all be tested in this upcoming open-source compiler performance comparison. The test plan is to do this on the Intel Core i7 970, an Intel Core 2 Duo, and an AMD Opteron Quad-Core.
GCC 4.6.0 Final should make it out in the first half of 2011.