|
|
|
| About GCC | last update 6-3-2009 |
Many of the free C compilers listed here are ports of
GCC, which is the standard compiler
that comes with all Linux distributions. GCC used to stand for the GNU
C Compiler, but it now stands for the GNU Compiler Collection since
it has grown to include front-ends for C, C++, Objective C, Fortran 95,
Java, and Ada, as well as other
front-ends.
GCC is highly portable, very robust, and was
started over 20 years ago by the Free
Software Foundation (FSF). In fact, Richard Stallman, the founder
of the FSF, published his thoughts on
on
the FSF after 20 years in 2004.
GCC has been called "the most important piece of software in the world" by
Arthur Griffith, author of
GCC:
The Complete Reference.
As of this writing, GCC is at version
4.4.0, but the standard GCC included with
MinGW is still
just 3.4.5
(though you
can get an alpha release of gcc 4.3 at the sourceforge MinGW download site.).
GCC 4.X
GCC version 4.X
(first released 4-20-05, is a major overhaul of GCC.
It includes
Fortran 95 support,
faster
x87 math intrinsics from Uros Bizjak,
autovectorization, and most significantly,
a new, more all-encompassing way to represent the language being compiled
called Static Single
Assignment (SSA), which was merged into the main GCC development line
on May 13, 2003. This method converts each high-level language into
a common generic
language tree
which can then use a common optimizer across all languages.
C-Net has put up a good preview article on GCC 4.0.
By the way, for you Fortran fans, GCC compiles
Fortran 77 and 95 (as of 4.X) directly to native assembler code now
(it has for some time)--not to C code.
BENCHMARKS
GNU maintains a GCC benchmark page which has links to several independent benchmarks of GCC.
Also see my Win32 Compiler Comparison
or Scott Robert Ladd's GCC 4.0 Review for some more dated benchmark results.
You can also get a gauge on how well GCC does by looking through
SPEC benchmarks and checking the scores and the compilers used in each case (click on the "CPU 2006 Search Form" link near the bottom of the page).
| |
|
|