[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [MiNT] Gcc 3.3.6 v 4.0.1
Miro Kropacek wrote:
Interesting thing is it crashes also with gcc 2.95 (and I mean really
*crashes*),
That's why we need an up-to-date gcc: if we find bugs, we will be able to
report them to the official gcc team, take benefit of the fixes, etc.
It seems compile newest gcc is getting harder and harder
with our old native 2.95 version.
Another good reason to get rid of it. But it should be replaced by a better
and less buggy version, not the contrary ;-)
Btw don't you think it would be wiser to use some tested gcc (i.e. that
2.95 or Vincent's cross compiled 4.3) to make such important things like
semi-official packages? Keith's and Zorro's gcc can be full of bugs
It is not actually problem, for several reasons:
- Most of the patches for the MiNT target are in the binutils (especially
the linker), and the binutils are clean, they are unrelated to gcc.
- If something is buggy in Mark's new build, it will only be inside gcc
(more precisely, the compiler part, the cc1 executable). If some library is
buggy, it will only be embedded inside gcc.
- gcc has a "make check" Makefile target, for checking the code it produces
is correct. Shame on me, I never tried it (may not work with a cross-compiler).
- if the compiler produces valid code, it will be able to recompile itself !
The resulting compiler will be as "perfect" as possible.
Another note: I double checked that the cross and native binutils produces
the very same executables (compared byte to byte). If we compile some
project with the new compiler Mark is currently building, if we do the same
with my Cygwin cross-binaries, and if we get exactly the same prg, we could
proudly say that the native and cross compiler are equivalent (but not
necessarily good ;-) ). But I guess we will have to wait a bit before doing
this test.
We are currently in an infernal spiral: with our current native gcc, we
can't compile a better gcc, so we're stuck :-(
An external compiler is necessary to unlock the situation.
So, Mark, go ahead !
--
Vincent Rivière