In early December we passed along a GCC 4.5 status update in which there were still 26 P1 regressions (the highest priority), 93 P2 regressions, and four P3 regressions. Red Hat's Jakub Jelinek has published a new GCC 4.5 status update on the GCC mailing list. As of today there are now only 18 regressions of P1 severity, 84 regressions of P2, and there's now nine P3 regressions.
Novell's Richard Guenther has issued a GCC 4.5 status report this morning as yesterday this next major version of the GNU Compiler Collection had left "Stage 3" and is now entering a period in which only regression fixes and documentation work will take place.
Version 2.6 of LLVM, the Low-Level Virtual Machine, has been released. This modular compiler infrastructure, which can replace many parts of the GNU Compiler Collection and go far beyond the conventional roles as a code compiler such as being used within Apple's Mac OS X OpenGL implementation for providing optimizations and is similarly going to be used within Gallium3D, has taken a major leap forward with the 2.6 release.
Finally we have a stable, official release of GCC 4.4. This major update to the GNU Compiler Collection brings forth Graphite, which is a framework for providing loop optimizations and eventually will be used to provide automatic parallelization support. While still experimental, there is also improved support for C++0x, new compiler improvements, and various language-specific enhancements.
If you are into compilers and have not already tried out the latest bits from GCC 4.4, you may want to give the GCC 4.4.0 Release Candidate 1 a whirl. GCC 4.4.0 RC1 was tar'ed up yesterday and is now ready for testing.
Intel contributes quite a bit to the development of X.Org and the Linux kernel, through a number of Intel employees working on Linux full-time, making hardware contributions, etc. Up until recently, Intel even had its own Linux distribution (Moblin) for their Atom hardware. One area, however, where Intel has not been a major contributor is with the GNU Compiler Collection (GCC) considering they have long preferred their own high-performance Intel Compiler (ICC). That's not to say Intel hasn't made any contributions towards this critical piece of free software, but AMD and others have been more involved with GCC while Intel worked on its non-free ICC package. It looks though like things could be changing.
IBM's Razya Ladelsky today outlined plans for providing automatic parallelization support within the GNU Compiler Collection. The Graphite Framework, which provides high-level loop optimizations based upon the polyhedral model, was merged for the forthcoming release of GCC 4.4 and it will be used eventually to provide some level of automatic parallelization support. Graphite will be combined with autopar, which is an automatic parallelization code generator based upon GOMP that in turn implements OpenMP.
The LLVM (Low-Level Virtual Machine) still isn't a big competitor to GCC since the Clang compiler front-end remains unfinished, but the LLVM folks have issued a version 2.5 release. LLVM 2.5 is made up of a bunch of bug fixes, a new XCore back-end, performance improvements (in the compiler and its generated code), new development documentation, and plenty more new work.
In early December the OpenCL specification was unveiled, which is an open framework initially conceived by Apple for extending the power of graphics processors to better handle GPGPU computing in a unified way. Both ATI/AMD and NVIDIA are working on bringing Open Computing Language support to their proprietary Linux drivers, while nothing has yet to be started on the open-source side to integrate the support within Mesa. Though as OpenCL consists of a C99-based language for programming, what's the status on the compiler front?
It's been just under three months since GCC 4.3.0 was released with support for Intel's SSE4.1/SSE4.2 instruction sets and experiment C++0x support, and now there is GCC 4.3.1. The GCC 4.3.1 release fixes a number of regressions and other bugs, which are all laid out within the GCC BugZilla. The release announcement was made on the GNU mailing list.
GCC 4.2.0 was released less than a year ago, but arriving yesterday was the release of GCC 4.3.0. Version 4.3.0 of the GNU Compiler Collection has its middle-end integrated with the MPFR math library, experimental support for the forthcoming C++0x ISO standard, GCJ now uses the Eclipse Java Compiler for Java parsing, all Java 1.5 language features now supported by both the compiler and at run-time, and new GCJ Java tools. GCC 4.3.0 also has performance tuning for the Intel Core 2 and AMD Geode processors. In addition, there is now support for Intel's SSE4.1, and SSE4.2 instruction sets. There are many more changes, so be sure to check out the GCC 4.3 change-log. The release announcement on the GNU mailing list provides additional details.
Continuing in the GCC 4.2 series is the release of GCC 4.2.2. GCC 4.2.2 contains changes and other fixes since GCC 4.2.1. As was mentioned in the GCC 4.2.1 announcement, all future releases would be under version 3 of the GNU General Public License. With that said, GCC 4.2.2 is now GPLv3 software. The official announcement hasn't yet come down the gcc-announce wire, but it should come shortly seeing as their slated release date was October 7.
GCC 4.2.1 has been released to address bugs and other regressions in GCC. Significant about this release is that all releases after GCC 4.2.1 will be released under the GNU GPLv3 license as opposed to the GPLv2. Read more about the GCC 4.2.1 release at GNU.org.
Hitting the web recently was the release of GCC 4.2.0. This inaugural release in the GCC 4.2 branch supports OpenMP in C / C++ / Fortran, new command line options, a number of improvements to C++, fastjar being removed from GCC 4.2 and later, and a variety of other changes to the GNU C Compiler. The GCC 4.2 page is here along with a GCC 4.2 changes page.
584 Compiler news articles published on Phoronix.