Status and rationale for toplevel bootstrap (was Re: Example of debugging GCC with toplevel bootstrap)

Paolo Bonzini paolo.bonzini@lu.unisi.ch
Mon Jan 16 12:52:00 GMT 2006


>I see it as "impossible with the old bootstrapping mechanism" as being
>for a good reason: it's not part of the compiler!  I still fail to understand
>what it means to "bootstrap" anything other than a compiler: that word, to
>me, talks only about compilers.
>  
>
Bootstrap, to me talks about the whole toolchain and all the library 
that it uses.  Wouldn't you bootstrap an assembler written in assembly 
language?  Even if the compiler is written in C, part of compiling 
itself is doing an assembly -> machine language translation, which can 
be stressed by bootstrapping the assembler as well.  This is not 
mandatory (of course) but possible with the new method.

I can see how a compiler bug, that manifests as a miscompilation of the 
assembler, triggers a bootstrap failure if you also build the assembler 
three times, each time using the previous compiler *and* assembler.

>I still haven't heard any advantages of the new method, nor heard from 
>anybody who's using it: most people I've seen who've weighed in on this
>discussion say "it doesn't matter to be: I'm using --disable-bootstrap".
>  
>
I've interpreted it as "I don't bootstrap while debugging, so I'm using 
--disable-bootstrap to debug".  Not as "I'm using ../configure 
--disable-bootstrap && make bootstrap".

Paolo



More information about the Gcc mailing list