Interprocedural optimization: eliminating unnecessary recompilation (1993)
| Venue: | ACM Transactions on Programming Languages and Systems |
| Citations: | 33 - 4 self |
BibTeX
@ARTICLE{Burke93interproceduraloptimization:,
author = {Michael Burke},
title = {Interprocedural optimization: eliminating unnecessary recompilation},
journal = {ACM Transactions on Programming Languages and Systems},
year = {1993},
volume = {15},
pages = {39--9}
}
Years of Citing Articles
OpenURL
Abstract
While efficient new algorithms for interprocedural data-flow analysis have made these techniques practical for use in production compilation systems,a new problem has arisen: collecting and using interprocedural information in a compiler introduces subtle dependence among the proceduresof a program. If the compiler dependson interprocedural information to optimize a given module, a subsequentediting changeto another module in the program may changethe interprocedural information and necessitaterecompilation. To avoid having to recompile every module in a program in responseto a single editing changeto one module, we have developed techniquesto more precisely determine which compilations have actually beeninvalidated by a changeto the program’s source.This paper presents a general recoi-npzlatton test to determine which proceduresmust be compiled in responseto a series of editing changes.Three different implementation strategies, which demonstrate the fundamental tradeoff between the cost of analysis and the precision of the resulting test, are also discussed.







