This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Status and rationale for toplevel bootstrap (was Re: Example of debugging GCC with toplevel bootstrap)
- From: Paul Brook <paul at codesourcery dot com>
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 16 Jan 2006 17:32:17 +0000
- Subject: Re: Status and rationale for toplevel bootstrap (was Re: Example of debugging GCC with toplevel bootstrap)
- References: <10601161710.AA11722@vlsi1.ultra.nyu.edu>
On Monday 16 January 2006 17:10, Richard Kenner wrote:
> I don't see how this is any different to boostrapping gcc with any
> other system compiler. It's fairly common for the system compiler to
> use a different ABI to the new gcc. Why is 32/64-bit any different?
>
> It isn't any different, which is the whole point. The point is that
> what's being built is a compiler that's for a different host than we
> tell configure that it's for: specificially it's a cross-compiler and
> we're saying it's a native compiler.
I don't see why the requirement for a "native compiler" is anything stronger
than "a binary that runs on this machine".
You seem to be suggesting that we shouldn't support 3-stage bootstrap with
anything other than an identical version of gcc. I thought one of the main
points of bootstrapping was that the stage1 compiler can be built by
anything, as long as we can then run it to build a proper compiler.
If not what host triplets should I use for random HP, Sun and Apple system
compilers?
> The issue isn't what compiler *builds* the stage1 compiler, but what the
> stage1 compiler *is*: if it's not for the same system as its target, it's
> not a native compiler, but a cross-compiler and it doesn't make sense to
> bootstrap cross-compiler (or, to be precise, if you do so, you need an
> additional stage, so that compiler would become a "stage0" compiler).
Only if you assume a "cross" compiler and a true native compiler generate
different code. I certainly hope that isn't the case.
Paul