low level optimization

Rob Carriere rob at mckinley.eng.ohio-state.edu
Mon Apr 29 04:48:51 AEST 1991


In article <703 at curly.appmag.com> pa at appmag.com (Pierre Asselin) writes:
[about the 2-objects-in-1 scheme of IM optimization]
>But does this sheme really count?  Suppose there are N modules subject
>to interoptimization.  Translating any one of them leads to a
>2^(N-1)-way branch as to what set of optimizations is allowed.
>Hmmm...  or 2^M,, where M is the number of optimization tricks the
>compiler knows about.  Still too big, though.

Well, this is why us academic types invented the thought experiment... :-)
Seriously, the proposed implementation was just that: a proof of concept.  A
real implementation would be a lot smarter about it.  If you build an RCS-like
structure of diffs, I'm pretty sure you can get away low space and time
wastage.  Or you could be lazy and either IM optimize or not at all.  The idea
was, after all, to encourage the programmer to use a compilation scheme that
provides IM optimzation, but still allow compilation in the general case for
standard conformance.  In other words, the executable that results when the
linker goes `oops' can stink as long as it works well enough to conform to the
standard. 

SR
---





More information about the Comp.lang.c mailing list