ACM Home Page
Please provide us with feedback. Feedback
Predicting the effects of optimization on a procedure body
Full text PdfPdf (620 KB)
Source Symposium on Compiler Construction archive
Proceedings of the 1979 SIGPLAN symposium on Compiler construction table of contents
Denver, Colorado, United States
Pages: 214 - 220  
Year of Publication: 1979
ISBN:0-89791-002-8
Also published in ...
Author
J. Eugene Ball  Computer Science Department, University of Rochester, Rochester, New York
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 22,   Citation Count: 17
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/800229.806972
What is a DOI?

ABSTRACT

Practical application of procedure integration (inline expansion) as a program optimization requires some method for estimating the effects of subsequent optimization on the integrated procedure. A technique is described for predicting the code improvement that can be expected due to constant folding and test elision when a procedure call involving constant actual parameters is integrated. The technique is based on information collected during a single data flow analysis of each procedure body, and on execution frequency statistics for the procedure. This information can then be used to estimate the cost in code size and the benefit in execution speed of integrating each call to the procedure. The algorithm uses a syntax directed analysis technique suitable for structured programming languages without gotos.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Allen, Frances E. and Cocke, John. A catalogue of optimizing transformations. RC 3548, IBM T. J. Watson Research Center, Yorktown Heights, N.Y., September 1971.
 
2
Allen, Frances E. Interprocedural data flow analysis. Proc. IFIP Congress 74, North Holland Publishing Co., Amsterdam, 1974, 398-402.
 
3
Allen, F. E., Carter, J. L., Harrison, W. H., Loewner, P. G., Tapscott, R. P., Trevillyan, L. H., and Wegman, M.N. The Experimental Compiling Systems Project. IBM T. J. Watson Research Center, Yorktown Heights, N.Y., August 1977.
 
4
Ball, Eugene; Williams, Graeme; and Low, James. Zeno Preliminary Language Description. TR41, University of Rochester Computer Science Department, Rochester, NY, December 1978.
5
 
6
Harrison, William. Compiler analysis of the value ranges for variables. RC 5544, IBM T. J. Watson Research Center, Yorktown Heights, N.Y., July 1975.
7
 
8
Hilfinger, Paul; Feldman, Gary; Fitzgerald, Robert; Kimura, Izumi; London, Ralph L.; Prasad, K. V. S.; Prasad, V. R.; Rosenberg, Jonathan; Shaw, Mary; and Wulf, William A. An Informal Definition of Alphard (Preliminary). Computer Science Department, Carnegie-Mellon University, Pittsburgh, Pa, February 1978.
 
9
10
11
 
12
Liskov, Barbara; Moss, Eliot; Schaffert, Craig; Scheifler, Bob; and Snyder, Alan. CLU Reference Manual. Computation Structures Group Memo 161, Massachusetts Institute of Technology, Laboratory for Computer Science, July 1978.
 
13
Mitchell, James G. and Wegbreit, Ben. Schemes: A High Level Data Structuring Concept. CSL-77-1, Xerox Palo Alto Research Center, Palo Alto, Ca., January 1977.
 
14
Zelkowitz, M.V. and Bail, W.G. Optimization of structured programs. Software Practice and Experience, 4 (1974), 51-57.

CITED BY  17
 
 


Peer to Peer - Readers of this Article have also read: