smart compilers

Jeff Lee jeff at gatech.UUCP
Sat Dec 29 06:02:06 AEST 1984


> It is usually necessary for optimizations to break certain obscure points
> that conform to the language definition, e.g. which order STATEMENTS are
> executed in so that code can be moved out of loops.  Many useful optimizations
> cannot be done when more than 99.9% of the language definition must be
> respected.
> 
> In turn, this is the reason that optimizations must be optional.

This is a truly incredible statement. I'm sure we can come up with many more
optimizations that work real well if we only respect 99% of the language
definition, but how useful are those "optimizations". It seems to me that
when your optimizer gets finished with your code, it is no longer compiling
FORTRAN, Pascal, C, etc... but some dialect that doesn't do what you intended
for it to do. I don't want any compiler (and optimizer) that doesn't "respect"
all of the language definition. That is simply begging and pleading for
trouble.

Jeff Lee
CSNet:	Jeff @ GATech		ARPA:	Jeff.GATech @ CSNet-Relay
uucp:	...!{akgua,allegra,rlgvax,sb1,unmvax,ulysses,ut-sally}!gatech!jeff
-- 
Jeff Lee
CSNet:	Jeff @ GATech		ARPA:	Jeff.GATech @ CSNet-Relay
uucp:	...!{akgua,allegra,rlgvax,sb1,unmvax,ulysses,ut-sally}!gatech!jeff



More information about the Comp.unix.wizards mailing list