Interprocedural analyses IPA are becoming more and more common in commercial compilers. But research on the analysis of Fortran programs is still going on, as a number of problems are not yet satisfactorily solved and others are emerging with new language dialects. This paper presents a survey of th
Interprocedural analyses: a comparison
โ Scribed by Helmut Seidl; Christian Fecht
- Publisher
- Elsevier Science
- Year
- 2000
- Tongue
- English
- Weight
- 299 KB
- Volume
- 43
- Category
- Article
- ISSN
- 0743-1066
No coin nor oath required. For personal study only.
โฆ Synopsis
We present a framework for program analysis of languages with procedures which is general enough to allow for a comparison of various approaches to interprocedural analysis. Our framework is based on a small-step operational semantics and subsumes both frameworks for imperative and for logic languages. We consider reachability analysis, that is, the problem of approximating the sets of program states reaching program points. We use our framework in order to clarify the impact of several independent design decisions on the precision of the analysis. Thus, we compare intraprocedural forward accumulation with intraprocedural backward accumulation. Furthermore, we consider both relational and functional approaches. While for relational analysis the accumulation strategy makes no dierence in precision, we prove for functional analysis that forward accumulation may lose precision against backward accumulation. Concerning the relative precision of relational analyses and corresponding functional analyses, we exhibit scenarios where functional analysis does not lose precision. Finally, we explain why even an enhancement of functional analysis through disjunctive completion of the underlying abstract domain may sometimes lose precision against relational analysis.
๐ SIMILAR VOLUMES
Its goal is to provide a machine-independent programming model for data-parallel applications that shifts the burden of machine-dependent optimizations to the compiler. Fortran D has contributed to the development of High Performance Fortran (HPF), an emerging Fortran standard for programming parall
In this paper, we review several important issues in interprocedural analysis for parallel computing: call effects, variable aliasing, and execution context. We show the use of traditional summary data flow information in program transformation for parallel computing. We examine three different meth