Optimization of expressions in Fortran
- 1 December 1969
- journal article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 12 (12) , 666-674
- https://doi.org/10.1145/363626.363635
Abstract
A method of optimizing the computation of arithmetic and indexing expressions of a Fortran program is presented. The method is based on a linear analysis of the definition points of the variables and the branching and DO loop structure of the program. The objectives of the processing are (1) to eliminate redundant calculations when references are made to common sub-expression values, (2) to remove invariant calculations from DO loops, (3) to efficiently compute subscripts containing DO iteration variables, and (4) to provide efficient index register usage. The method presented requires at least a three-pass compiler, the second of which is scanned backward. It has been used in the development of several FORTRAN compilers that have proved to produce excellent object code without significantly reducing the compilation speed.Keywords
This publication has 5 references indexed in Scilit:
- Object code optimizationCommunications of the ACM, 1969
- On compiling algorithms for arithmetic expressionsCommunications of the ACM, 1967
- A Direction-Independent Algorithm for Determining the Forward and Backward Compute Point for A Term or Subscript During CompilationThe Computer Journal, 1966
- High speed compilation of efficient object codeCommunications of the ACM, 1965
- On the automatic simplification of computer programsCommunications of the ACM, 1965