Skip to main content

A Prolog Tailoring Technique on an Epilog Tailored Procedure

  • Conference paper
  • First Online:
  • 369 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2244))

Abstract

Prolog tailoring technique, an optimization method to improve the execution speed of a procedure, is proposed in this paper. When a procedure is repeatedly called and the machine has a lot of callee-saved registers, optimizing prolog and epilog of the procedure can become an important step of optimization. Epilog tailoring supported by IBM xlc compiler has been known to improve a procedure’s execution speed by reducing the number of registerrestoring instructions on exit points. In this paper, we propose a prolog tailoring technique that can reduce register-saving instructions at entry points. We can optimize prolog by providing multiple tailored versions of it on different execution paths of the procedure and by delaying the generation of register-saving instructions as late as possible on each path. However, generating prolog inside diamond structures or loop structures will cause incorrectness or unnecessary code repetition. We propose a technique to generate efficient prolog without such problems based on Tarjan’s algorithms to detect SCCs (Strongly Connected Components) and BCCs (Bi-Connected Components).

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. V. Aho, J. E. Hopcroft, and J. D. Ullman, The Design and Analysis of Computer Algorithms, Addison Wesley, 1974

    Google Scholar 

  2. A. V. Aho, R. Sethi, and J. D. Ullman, Compilers, Addison Wesley, 1988

    Google Scholar 

  3. F. E. Allen, and J. Cocke, “A Catalogue of Optimizing Transformations,” In Design and Optimization of Compilers, Prentice-Hall, 1972

    Google Scholar 

  4. K. Ebcioglu, R. D. Groves, K. C. Kim, G. M. Silberman, and I. Ziv, “VLIW Compilation Techniques in a Superscalar Environment,” ACM SIGPLAN Not., Vol.29, No.6, pp.36–48, 1994

    Article  Google Scholar 

  5. J. Huang and D.J. Lilja, Extending Value Reuse to Basic Blocks with Compiler Support, IEEE Transactions on Computers, Vol. 49, No. 4, April 2000.

    Google Scholar 

  6. M. Lipasti, C. Wilkerson, and J. Shen, Value Locality and Load Value Prediction, Proc. Eighth Int’l Conf. Architecture Support for Programming Languages and Operating Systems, Oct. 1996.

    Google Scholar 

  7. M. Lipasti and J. Shen, Exceeding the Dataflow Limit via Value Prediction, Proc. 29th Ann. ACM/IEEE Int’l Symp. Microarchitecture, Dec. 1996.

    Google Scholar 

  8. K. O’Brien, B. Hay, J. Minish, H. Schaffer, B. Schloss, A. Shepherd, and M. Zaleski, “Advanced Compiler Technology for the RISC System/6000 Architecture,” IBM RISC System/6000 Technology, SA23-2619, IBM Corporation, 1990

    Google Scholar 

  9. R. E. Tarjan, “Depth first search and linear graph algorithms,” SIAM J. Computing, Vol.1, No.2, pp.146–160, 1972

    Article  MATH  MathSciNet  Google Scholar 

  10. G. Tyson and T. Austin, Improving the Accuracy and Performance of Memory Communication through Renaming, Proc. 30th Ann. Int’l Symp. Microarchitecture, Dec. 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jhi, YC., Kim, KC., Ebcioglu, K., Lee, Y.S. (2001). A Prolog Tailoring Technique on an Epilog Tailored Procedure. In: Bjørner, D., Broy, M., Zamulin, A.V. (eds) Perspectives of System Informatics. PSI 2001. Lecture Notes in Computer Science, vol 2244. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45575-2_41

Download citation

  • DOI: https://doi.org/10.1007/3-540-45575-2_41

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43075-9

  • Online ISBN: 978-3-540-45575-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics