Program analysis with partial transfer functions

Citation
Br. Murphy et Ms. Lam, Program analysis with partial transfer functions, ACM SIGPL N, 34(11), 1999, pp. 94-103
Citations number
33
Categorie Soggetti
Computer Science & Engineering
Journal title
ACM SIGPLAN NOTICES
ISSN journal
15232867 → ACNP
Volume
34
Issue
11
Year of publication
1999
Pages
94 - 103
Database
ISI
SICI code
1523-2867(199911)34:11<94:PAWPTF>2.0.ZU;2-5
Abstract
Program analyses used in compilers commonly use a transfer function (TF) to summarize the input/output behavior of a procedure or region, speeding con vergence of analysis of the surrounding region or program. A partial transf er function (PTF) summarizes input/output behavior for only a subset of the possible inputs. Tn many cases, an exact characterization of input/output behavior is possible for the contexts occurring in a given program, even wh en a concise and exact total summary would not be feasible. In other cases, an approximate PTF can be used which, while not exact, is more precise tha n would be possible with a total approximation. As demonstrated by prior work in a flow- and context-sensitive pointer alia s analysis, PTFs are effective in speeding the convergence of program analy sis involving higher-order functions and complex transfer functions that ca nnot easily be summarized. This paper presents a formal definition of partial transfer functions and i ntroduces a general framework that enables data flow systems with complex t ransfer functions to be decomposed into simpler partial transfer functions. This paper provides a foundation that will allow the further development o f the PTF concept, as well as enabling application to many more program ana lyses.