IBM Skip to main content
  Home     Products & services     Support & downloads     My account  
  Select a country  
Journals Home  
  Systems Journal  
  ·  Current Issue  
  ·  Recent Issues  
  ·  Papers in Progress  
  ·  Search/Index  
  ·  Orders  
  ·  Description  
  ·  Author's Guide  
Journal of Research
and Development
  Staff  
  Contact Us  
Systems Journal  
Volume 37, Number 3, 1998
Java Technology
 Table of contents: arrowHTML arrowASCII   This article: arrowHTML arrowASCII
arrowCopyright info
   

Optimizing array reference checking in Java programs - References

by S. P. Midkiff, J. E. Moreira, and M. Snir

Cited references

  1. J. Gosling, B. Joy, and G. Steele, The Java Language Specification, Addison-Wesley Publishing Co., Reading, MA (1996).
  2. J. Gosling, The Evolution of Numerical Computing in Java, document available at URL http://java.sun.com/people/jag/FP.html, Sun Microsystems, Inc.
  3. A. V. Aho, R. Sethi, and J. D. Ullman, Compilers: Principles, Techniques, and Tools, Addison-Wesley Publishing Co., Reading, MA (1985).
  4. V. Seshadri, "IBM High Performance Compiler for Java," AIXpert Magazine, http://www.developer.ibm.com/library/aixpert/ (September 1997).
  5. A. Krall and R. Grafl, "CACAO--a 64-bit JavaVM Just in Time Compiler," Concurrency, Practice and Experience 9, No. 11, 1017-30 (November 1997). Java for Computational Science and Engineering--Simulation and Modeling II, Las Vegas, NV (June 21, 1997).
  6. W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery, Numerical Recipes in FORTRAN: The Art of Scientific Computing, Cambridge University Press, Cambridge, UK (1992).
  7. D. Baxter, R. Mirchandaney, and J. H. Saltz, "Run-Time Parallelization and Scheduling of Loops," Proceedings of the 1989 ACM Symposium on Parallel Algorithms and Architectures (1989), pp. 303-312.
  8. S. P. Midkiff, J. E. Moreira, and M. Gupta, Method for Optimizing Array Bounds Checks in Programs, IBM Docket #YO-998-052, patent filed April 24, 1998.
  9. B. Schneier, Applied Cryptography: Protocols, Algorithms, and Source Code in C, John Wiley & Sons, Inc., New York (1994).
  10. B. Schwarz, W. Kirchgassner, and R. Landwehr, "An Optimizer for Ada--Design, Experience and Results," Proceedings of the ACM SIGPLAN '88 Conference on Programming Language Design and Implementation (June 1988), pp. 175-185.
  11. P. Cousot and R. Cousot, "Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints," Conference Record of the 4th ACM Symposium on Principles of Programming Languages (January 1977), pp. 238-252.
  12. P. Cousot and N. Halbwachs, "Automatic Discovery of Linear Restraints Among Variables of a Program," Conference Record of the 5th ACM Symposium on Principles of Programming Languages (January 1978), pp. 84-96.
  13. P. Cousot and N. Halbwachs, "Automatic Proofs of the Absence of Common Runtime Errors," Conference Record of the 5th ACM Symposium on Principles of Programming Languages (January 1978), pp. 105-118.
  14. W. H. Harrison, "Compiler Analysis for the Value Ranges for Variables," IEEE Transactions on Software Engineering SE3, No. 3, 243-250 (May 1977).
  15. J. M. Asuru, "Optimization of Array Subscript Range Checks," ACM Letters on Programming Languages and Systems 1, No. 2, 109-118 (June 1992).
  16. R. Gupta, "A Fresh Look at Optimizing Array Bounds Checking," Proceedings of the ACM SIGPLAN '90 Conference on Programming Language Design and Implementation (June 1990), pp. 272-282.
  17. R. Gupta, "Optimizing Array Bound Checks Using Flow Analysis," ACM Letters on Programming Languages and Systems 2, Nos. 1-4, 135-150 (March-December, 1993).
  18. P. Kolte and M. Wolfe, "Elimination of Redundant Array Subscript Range Checks," Proceedings of the ACM SIGPLAN '95 Conference on Programming Language Design and Implementation (June 1995), pp. 270-278.
  19. V. Markstein, J. Cocke, and P. Markstein, "Elimination of Redundant Array Subscript Range Checks," Proceedings of the ACM SIGPLAN '82 Conference on Programming Language Design and Implementation (June 1982), pp. 114-119.
  20. Pentium Processor Family Developer's Manual, Volume 3: Architecture and Programming Manual, Intel Corporation, Santa Clara, CA (1995).
  21. AIX Version 3.2 Assembler Language Reference, Third Edition, IBM Corporation (October 1993); available through IBM branch offices.
  22. Java JIT Compiler Project Home Page, http://www.trl.ibm.co.jp./projects/jit/index_e.htm, IBM Corporation.
  23. S. P. Midkiff, "Computing the Local Iteration Set of a Block-Cyclically Distributed Reference with Affine Subscripts," Sixth Workshop on Compilers for Parallel Computing (1996).
  24. K. van Reeuwijk, W. Denissen, H. J. Sips, and E. M. R. M. Paalvast, "An Implementation Framework for HPF Distributed Arrays on Message-Passing Parallel Computer Systems," IEEE Transactions on Parallel and Distributed Systems 7, No. 9, 897-914 (September 1996).
  25. U. Banerjee, "Loop Transformations for Restructuring Compilers," Chapter 3, Dependence Analysis, Kluwer Academic Publishers, Boston (1997).