|question on a "logical" cmp utility email@example.com (taek) (1998-09-18)|
|Re: question on a "logical" cmp utility firstname.lastname@example.org (Bruce Dawson) (1998-09-22)|
|Re: question on a "logical" cmp utility cliff.click@Eng.Sun.COM (Clifford Click) (1998-09-22)|
|From:||Clifford Click <cliff.click@Eng.Sun.COM>|
|Date:||22 Sep 1998 14:40:01 -0400|
> To be fair, optimizing compilers go to a great deal of effort to
> rewrite object code in different logically equivalent ways; that's
> where all the glitter is in the compiler business. However, even an
> optimzing compiler should output the same code when given identical
> input; just being able to verify this would be a great step forward in
> rigorously maintaining development environments. -Mark Carmichael" --
While I was at Motorola, we used a 3-stage bootstrap technique.
Compiler 1 was built with a known safe (i.e., old/safe/debug-mode) compiler.
Compiler 2 was built from Compiler 1 with full optimizations.
Compiler 3 was built from Compiler 2 with full optimizations.
Compiler 2 and compiler 3 should be bitwise identical. If they are
not, then the compiler is non-deterministic. Almost always this is
due to an uninitialized variable guiding some heuristic; the code is
always correct - just different. We treated this as a high priority
Cliff Click Compiler Designer and Researcher
cliffc at acm.org JavaSoft
(408) 863-3266 MS UCUP02-302
Return to the
Search the comp.compilers archives again.