Re: Static vs. dynamic analysis (Alex Zatsman)
Mon, 11 May 1992 17:01:02 GMT

          From comp.compilers

Related articles
register variables in C. (1992-04-22)
Static vs. dynamic analysis (Chuck Lins) (1992-04-24)
Re: Static vs. dynamic analysis (1992-04-26)
Re: Static vs. dynamic analysis (1992-04-26)
Re: Static vs. dynamic analysis (1992-04-27)
Re: Static vs. dynamic analysis (1992-05-11)
Re: Static vs. dynamic analysis (1992-05-12)
| List of all articles for this month |

Newsgroups: comp.compilers
From: (Alex Zatsman)
Keywords: optimize
Organization: Analog Devices, Inc.
References: 92-04-108 92-04-129
Date: Mon, 11 May 1992 17:01:02 GMT

In article 92-04-129
(Chuck Lins) writes:

> ... dynamic information is usually better for the compiler than static
> information in producing good code. ...

> ... [but] there's no guarantee that any particular run is a typical run.
> Of course, one tries to choose a typical run, but you can be wrong.

I've spent some time working on a prototype code generator which took into
account profiling information (it assigned execution frequence to each arc
of the flow graph). The impression I've got is that the code generator is
not overly sensitive to that data, i.e. it often does not matter whether
a particular loop is executed one million times or ten million, but it
does matter if it is executed only once or twice. Thus even a non-typical
run produces useful information.

You might find the following two papers of interest:

W.G.Morris. CGG: A prototype coagulating code generator. In "Proceedings
of the SIGPLAN'91 Conference on Programming Language Design and
Implementation", Toronto 1991, pp. 45-58

Michael Karr. Code geneeration by coagulation. In "Proceedings of the
SIGPLAN'84 Symposium on Compiler Construction", 1984, pp. 1-12.

> Hopefully some bright PhD student will come along and do a thesis
> on the technique showing how it can be improved :-)

Michael Karr did just that in, I believe, 1983 at Harvard.

Alex Zatsman.
Analog Devices, Inc.

Post a followup to this message

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