Looking At Changes In the Newest GCC
cyberpead writes "With GCC 4 comes a new optimization framework (and new intermediate code representation), new target and language support, and a variety of new attributes and options. Get to know the major new features and their benefits in this article."
I've been using it for a year and a half now.
But most developers still do not know the important differences between 4.x and 3.x other than the superficial ones like changes in headers that need to be included(ie stuff that breaks their code). For example, few seem to be aware that GCC does profile guided optimization now with -fprofile-generate and -fprofile-use switches(not even mentioned in the article).
One of the things I personally am the most excited about is the ability to do function-level optimization in 4.4. Last year, I had a project that required me to have compiled code be as fast as possible, but you could only submit one source file and no Makefiles, which would be compiled with no arguments, optimizations, etc.. With this, I could throw the optimizations straight into the code, instead of having to compile with optimizations, taking the assembly, throwing that into a wrapper C file, and hoping the code was tested on the same architecture.