This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Makefile change to restart bootstraps


On Nov 13, 2000, kenner@vlsi1.ultra.nyu.edu (Richard Kenner) wrote:

> But which compiler do you do that with?

A pre-installed GCC.

> Don't you go back to use
> what's then in the stage1 or stage2 directory?

Nope.  I often don't have stage1 or stage2.  Whenever I bootstrap, I
generally use bootstrap-lean.

> If you're debugging the one in the stage1 directory

I pretty much always debug the one in the gcc directory.  I've only
debugged the compiler in a stage directory once, when I decided to
track down a bootstrap failure the hard way, by running two gdbs in
parallel and seeing where their behaviors diverged.  Ever since, I've
learned to identify the piece of the compiler being miscompiled first,
simplify it to a reduced testcase, and debug GCC from that, so I've
never had to debug a stage1/ or stage2/ compiler again.

> you can always do "make stage2", move
> stage1 to the current directory, fix, make, make stage1, then move
> stage2 to the current directory.  That's the same as the new "make
> bootstrap" behavior.

Huh?  In what sense is it the same as the new `make bootstrap'?  The
new `make bootstrap' continues from the point where it was
interrupted.  The main advantage is that it's restartable.  If, for
*whatever* reason, a bootstrap was not completed, typing `make
bootstrap' won't restart it, which won't work on many platforms if you
don't use GCC as the bootstrap compiler anyway.  Unless you're playing
tricks with moving stage files around, it will always do the right
thing and, if you're playing tricks with stage files, you're expected
to know what you're doing, so you can be expected to be aware of the
stage stamp files too.

> It's *much* less error-prone to always start a bootstrap from the
> beginning.

I suggest that we define a `bootstrap-restart' that cleans up all
stage stamps and does the usual bootstrap.  In fact, creating such a
target has been in my to-do list ever since you complained about it,
but I haven't found the 5 minutes needed to implement it and the other
55 minutes needed to test it yet :-)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]