Re: Bootstraping compilers ?

Greg Lindahl <lindahl@pbm.com>
Fri, 18 Apr 2008 14:13:55 -0700 (PDT)

          From comp.compilers

Related articles
Bootstraping compilers ? pocm@soton.ac.uk (2008-04-16)
Re: Bootstraping compilers ? chris@phaedsys.org (Chris Hills) (2008-04-18)
Re: Bootstraping compilers ? roland.leissa@googlemail.com (=?ISO-8859-1?Q?Roland_Lei=DFa?=) (2008-04-18)
Re: Bootstraping compilers ? damian.thomas@unisys.com (Damian Thomas) (2008-04-18)
Re: Bootstraping compilers ? marcov@stack.nl (Marco van de Voort) (2008-04-18)
Re: Bootstraping compilers ? marcov@stack.nl (Marco van de Voort) (2008-04-18)
Re: Bootstraping compilers ? lindahl@pbm.com (Greg Lindahl) (2008-04-18)
Re: Bootstraping compilers ? cdb@nullstone.com (Christopher Glaeser) (2008-04-19)
Re: Bootstraping compilers ? torbenm@app-4.diku.dk (2008-04-21)
Re: Bootstraping compilers ? DrDiettrich1@aol.com (Hans-Peter Diettrich) (2008-04-21)
Re: Bootstraping compilers ? pocm@soton.ac.uk (2008-04-22)
Re: Bootstraping compilers ? gah@ugcs.caltech.edu (glen herrmannsfeldt) (2008-04-21)
Re: Bootstraping compilers ? spencer@panix.com (David Spencer) (2008-04-22)
[2 later articles]
| List of all articles for this month |

From: Greg Lindahl <lindahl@pbm.com>
Newsgroups: comp.compilers
Date: Fri, 18 Apr 2008 14:13:55 -0700 (PDT)
Organization: Compilers Central
References: 08-04-059
Keywords: code, practice
Posted-Date: 18 Apr 2008 19:54:30 EDT

I had the pleasure of working with some ex-SGI compiler people at
PathScale, and they had 2 major reasons for bootstrapping:


1) You don't want to hunt bugs in the other compiler that make it
compile your compiler wrong. We had a slowly increasing list of files
in our compiler that needed -O0 with gcc to compile correctly, or
obscure bugs would surface. Now maybe our compiler code wasn't
standard conforming, or maybe gcc had a bug. Either way, we don't want
to be in the business of fixing gcc.


2) You (should) have a great QA testsuite for your compiler, better
than the average customer has for their own programs. You can find and
fix a lot of obscure bugs by bootstrapping with lots of flag
combinations and looking for changes in the QA suite results.


On the general topic of QA, a good lesson we learned from gcc was that
building an entire Linux distro is a pretty useful exercise. You have
to be pretty gcc-compatible to do it, and sometimes the bugs are hard
to localize (binary search through huge lists of rpms..., and it'd
better be easily repeatable).


-- greg


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.