The team released the new major version of their multi-platform compiler suite, GCC 3.3.
Update: In other development news, Squeak 3.5, an open, highly-portable Smalltalk-80 implementation whose virtual machine is written entirely in Smalltalk, is released.
I didn’t see anything in this release about speedups, just about deprecation of platforms. Any word about speedups?
It’s already there, just click on the ‘major version’ link. Get the better browser.
win32 target is deprecated
I loved that part of gcc. It allows me to setup a script to automagicly produce windows builds on every cvs commit. Can’t really do it as easily if win32 is deprecated..how lame.
I think the only reason it’s deprecated is cos they have no maintainer for it..I wish somebody will step up to the task and continue maintaining the win32 side of things.
They are only removing the Windows NT 3.x support not Win32 support. It should still work on Windows 2K and XP.
Also, the x86 systems are dead. Intel is droping all x86 support in 2010; at which time they will be moving everyone to ia64.
There are actually several speed-ups implemented. Just go to the second link, and read under “general optimizer improvements.” In particular, C++ code now features type based alias analysis for aggregate types. In English, it means that the compiler can make aliasing optimizations for code that uses structures more complex than the built-in types. For example, if you’ve got an array of “matrix” classes, and a pointer to a “vector” class. The compiler can do optimizations assuming that you aren’t going to change the “matrix” array with the “vector” pointer. Normally, this type of analysis was limited to built-in types like ‘int’ and ‘float’.
The section “General Optimizer Improvements” mentions several.
Other improvements scattered throughout the rest of the notes:
SSE2 and 3dNOW! intrinsics are now supported.
The Java section says that the bytecode interpreter is now direct threaded and thus faster.
Fortran has better optimizes induction variables in unrolled loops now.
The S390 port has several performance improvements
I got to use a prerelease on an opteron system and worked well for our codes. I hope Scott Robert Ladd updates his comparison of GCC and ICC.
If you were referring to how fast the compiler does its job, then I believe you will have to wait for another major version.
where is the procompiled header support, dang-naggit!
*shakes fist*
It’s a gcc 3.4 feature.
Does this mean that netbsd will finaly get gcc 3.x support? (ie. the next version will come with it by default?)
I thought the latest gcc was 3.2.3?? Does the relese today superceed it?? Or is it a different branch??
Jon
If the GCC maintainers for NetBSD built and tested this new version for NetBSD, then it will be a version for NetBSD. If the maintainers didn’t, then stay with your older version until they build and test one for you. Easy. 🙂
jon: The next major release of NetBSD (2.0) will have gcc 3.3 in the base system. It will be imported into -current RSN (few targets will still need additional patches, though).
Eugenia: you seem to misunderstood the OP, he is talking about the base system compiler.
thanks marty!, that was my question.
Eugenia: thanks anyway for trying to answer… we all luv ya :-).
You forgot the AMD part of the picture (x86-64).
now that finals is almost over, I can finally write those articles I’ve been talking about forever… There is Dynapad, a PDA OE I’ve been working on that is built on Squeak. And on my desktop/notebook, I use Squeak as my desktop environment. It’s like emacs, but much more … normal.
It is great to see Squeak always moving forward- some awesome stuff has shown up in the last couple dot revision of Squeak.
Is the latest squeak image 3.5-5180?
The latest version of 3.5 is #5180. There is also a 3.6alpha series, which is at #5205. I’m not sure what is the thrust of main work in 3.6- I’ve been mostly using 3.2 and 3.4 myself.
Just for grins I decided to run full compiles of our software here at work. It uses Qt as base and I have some nasty heavy templates in some of the code. This is based onthe wall clock, I pretty much walked away while these were running:
gcc 3.2.2
libraries: 9:37
test modules: 3:08
applications: 7:22
gcc 3.3
libraries: 8:51
test modules: 2:58
applications: 6:31
libraries: 8.7% faster
test modules: 5.6% faster
applications: 13% faster
Since this is only a single sample I’m sure there’s no statistical significance.
And what about the code size ? it seems that gcc 3.x has been having, and still has many problems with inlining of c++ functions, and the compilation speed is highly dependent on that. The apparent speed of g++ 3.3 may come from a reduced default inline-limit