Efficient interprocedural analysis for program parallelization and restructuring
- 1 January 1988
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 23 (9), 85-99
- https://doi.org/10.1145/62115.62125
Abstract
An approach to efficient interprocedural analysis for program parallelization and restructuring is presented. Such analysis is needed for parallelizing loops which contain procedure calls. Our approach captures call effect on data dependencies by propagating the precise information of array subscripts from the called procedure. This allows the optimizing compiler to choose an efficient yet precise data dependence test scheme depending on the complexity of array reference patterns. The other existing methods do not provide such flexibility, hence may suffer from either imprecision or inefficiency. The paper also discusses usage of classical summary information in several important transformations for program parallelization. Experimental results are reported.Keywords
This publication has 14 references indexed in Scilit:
- Interprocedural dependence analysis and parallelizationACM SIGPLAN Notices, 1986
- Interprocedural constant propagationACM SIGPLAN Notices, 1986
- Constant propagation with conditional branchesPublished by Association for Computing Machinery (ACM) ,1985
- Efficient computation of flow insensitive interprocedural summary informationPublished by Association for Computing Machinery (ACM) ,1984
- A precise inter-procedural data flow algorithmPublished by Association for Computing Machinery (ACM) ,1981
- A practical interprocedural data flow analysis algorithmCommunications of the ACM, 1978
- Automatic discovery of linear restraints among variables of a programPublished by Association for Computing Machinery (ACM) ,1978
- A Survey of Parallel Machine Organization and ProgrammingACM Computing Surveys, 1977
- Global Data Flow Analysis and Iterative AlgorithmsJournal of the ACM, 1976
- A Fast and Usually Linear Algorithm for Global Flow AnalysisJournal of the ACM, 1976