Related articles |
---|
[2 earlier articles] |
Re: failure due to compiler? gclind01@starbase.spd.louisville.edu (1996-07-07) |
Re: failure due to compiler? ian@five-d.com (1996-07-07) |
failure due to compiler? flake@elda.demon.co.uk (1996-07-09) |
Re: failure due to compiler? dennis@netcom.com (1996-07-10) |
Re: failure due to compiler? dennis@netcom.com (1996-07-10) |
Re: failure due to compiler? grout@polestar.csrd.uiuc.edu (1996-07-10) |
Re: failure due to compiler? khays@sequent.com (1996-07-10) |
Re: failure due to compiler? cliffc@ami.sps.mot.com (1996-07-10) |
Re: failure due to compiler? WStreett@shell.monmouth.com (1996-07-13) |
Re: failure due to compiler? jfc@mit.edu (1996-07-13) |
Re: failure due to compiler? bobduff@world.std.com (1996-07-13) |
Re: failure due to compiler? baynes@ukpsshp1.serigate.philips.nl (1996-07-13) |
Re: failure due to compiler? alain@phidani.be (Corchia Alain) (1996-07-15) |
[20 later articles] |
From: | khays@sequent.com (Kirk Hays) |
Newsgroups: | comp.compilers |
Date: | 10 Jul 1996 12:02:58 -0400 |
Organization: | Sequent Computer Systems, Inc. |
References: | 96-07-041 96-07-056 |
Keywords: | errors, comment |
Peter L Flake <flake@elda.demon.co.uk> wrote:
>The most obscure compiler bug I ever came across was in the Multics BCPL
>compiler. It had a code generation bug which depended on which procedure was
>done first. It also had a random number generator based on the CPU clock which
>determined the order in which code generation was done. So a correct BCPL
>program would sometimes compile correctly, and sometimes incorrectly!
>
>[Anyone got any insight into why in the world they made a non-deterministic
>compiler? -John]
It's very handy for doing compiler correctness testing, as you can exercise
different paths through the code-gen using the same source code, and you
don't have to verify the correctness of multiple different test programs.
IOW, it multiplies the size of your codegen testing by increasing the number
of different code sequences that can be generated.
I've used this technique with a seed argument being fed to the compiler, not
using a wall-clock seed internally. OTOH, we did use wall clock to generate
the seeds, on occasion, but we always knew what the seed was, so we could
reproduce the problem(s).
--
Kirk Hays
[Makes sense for a compiler stress tester, but it sounds like this was in
the production version. -John]
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.