; 35, rue Saint-Honor'e, 77305 Fontainebleau cedex, France
user correction - Legacy Corrections
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 the main interprocedural analysis techniques, with an emphasis on the suitability of the analysis framework for the characteristics of the original semantic problem. Our experience with the pips interprocedural compiler workbench is then described. pips includes a make-like mechanism, PipsMake, which takes care of the interleavings between top-down and bottom-up analyses and allows a quick prototyping of new interprocedural analyses. Intensive summarization is used to reduce storage requirements and achieve reasonable analysis times when dealing with real-life applications. The speed/accuracy tradeoffs made for pips are discussed in the light of other interprocedural tools. Key ...