> > positively perceived quality, subjective as it is, I admit, and the
> > 3.4 branch is of this bread.
> 
> Well, i am just pointing out that major linux distros are 
> using gcc 4.x since over 6 month now, constantly rebuilding 
> all those (tens of) thousands of packages with it, so it 
> can't be all that unstable as you hinted it.

GCC 4 has a lot of changes, especially for the C++ ABI (yet again on
x86) and in compatibility and also code standards. Building thousands
and thousands of packages is what a compiler SHOULD do; if it can't
then it isn't very good.

The point here, I think, is that GCC 4 has so many little quirks
that nobody is really used to, that a lot of code is going to have
to be changed in a lot of projects, to get it to even compile (let
alone work through any real bugs). Example:

Debian packages have little patchsets built into them. They are hardly
mainline source. Gentoo portage and FreeBSD/NetBSD ports have patchsets
downloadable with the main code. All of these packages that get compiled
over and over and over again I notice that vast numbers include a
"gcc4-fixes" patch, or have done in the past before it was integrated
into a mainline source tree. X.org is a very good example of this.

I think using gcc 4.0 right now is going to create more work and
delay any real PORTING. There is no real advantage to 4.0 on PowerPC
except for it's new autovectorisation functionality, but in real
terms that is not essential for making a boot loader and a few
drivers, and crosscompiling. With the underlying tree ssa changes
in optimisers, autovectorisation, there seems to be some nasty
problems with code generation (read SIMDTech archives) where it is
entirely suboptimal output, I think it is just going to frustrate
everyone.

I personally agree that we should stick with 3.4.5 for now, since
it is a closed branch, stable in more ways than compilability.
They are not going to radically change the behaviour of the
compiler under our feet as is usually the case with a new release
series. Note there are no significant changes for PPC in gcc 4.0
*except* for the tree ssa improvements, so when 3.4.5 has been
used to bring the system up to sniff, and if we want all those
new features, we can move to it anyway and deal with all the
problems it may entail, when there is less important work waiting
to be done.

-- 
Matt Sealey <matt at genesi-usa.com>
Manager, Genesi, Developer Relations


Reply via email to