skip to main content
10.1145/277650.277667acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
Article
Free Access

Partial online cycle elimination in inclusion constraint graphs

Authors Info & Claims
Published:01 May 1998Publication History

ABSTRACT

Many program analyses are naturally formulated and implemented using inclusion constraints. We present new results on the scalable implementation of such analyses based on two insights: first, that online elimination of cyclic constraints yields orders-of-magnitude improvements in analysis time for large problems; second, that the choice of constraint representation affects the quality and efficiency of online cycle elimination. We present an analytical model that explains our design choices and show that the model's predictions match well with results from a substantial experiment.

References

  1. And94.L.O. Andersen. Program Analysis and Specialization for the C Programming Language. PhD thesis, DIKU, University of Copenhagen, May 1994. DiKU report 94/19.Google ScholarGoogle Scholar
  2. AW92.A. Aiken and E. Wimmers. Solving Systems of Set Constraints. In Symposium on Logic in Computer Science, pages 329-340, June 1992.Google ScholarGoogle Scholar
  3. AW93.A. Aiken and E. Wimmers. Type Inclusion Constraints and Type Inference. in Proceedings of the 1993 Conference on Functional Programming Languages and Computer Architecture, pages 31- 41, Copenhagen, Denmark, June 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. AWL94.A. Aiken, E. Wimmers, and T.K. Lakshman. Soft typing with conditional types. In Twenty-First Annual A CM Symposium on Principles of Programming Languages, January 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. FA96.M. F'~hndrich and A. Aiken. Making Set- Constraint Based Program Analyses Scale. In First Workshop on Set Constraints at CP'96, Cambridge, MA, August 1996. Available as Technical Report CSD-TR-96-917, University of California at Berkeley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. FF97.C. Flanagan and M. Felleisen. Componential Set- Based Analysis. In PLDr97 {PLD97}. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. FFA97.J. Foster, M. F'~hndrich, and A. Aiken. Flowinsensitive Points-to Analysis with Term and Set Constraints. Technical Report UCB//CSD-97- 964, U. of California, Berkeley, August 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. FFK+96.C. Flanagan, M. Flatt, S. Krishnamurthi, S. Weirich, and M. Felleisen. Catching Bugs in the Web of Program Invariants. In Proceedings of the 1996 A CM SiGPLAN Con/erence on Programming Language Design and Implementation, pages 23-32, May 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. GJS96.James Gosling, Bill Joy, and Guy Steele. The Java Language Specification, chapter 10, pages 199-200. Addison Wesley, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Hei92.N. Heintze. Set Based Program Analysis. PhD thesis, Carnegie Mellon University, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Hei94.N. Heintze. Set Based Analysis of ML Programs. In Proceedings of the 1994 A CM Conference on LiSP and Functional Programming, pages 306- 17, June 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. HJ90.N. Heintze and J. Jaffar. A decision procedure for a class of Herbrand set constraints. In Symposium on Logic in Computer Science, pages 42-51, June 1990.Google ScholarGoogle Scholar
  13. HM97.N. Heintze and D. McAllester. Linear-Time Subtransitive Control Flow Analysis. In PLDI'97 {PLD97}. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. JM79.N.D. Jones and S. S. Muchnick. Flow Analysis and Optimization of LISP-like Structures. In Sixth Annual A CM Symposium on Principles of Programming Languages, pages 244-256, Januaxy 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Knu73.D. Knuth. The Art of Computer Programming, Fundamental Algorithms, volume 1. Addison- Wesley, Reading, Mass., 2 edition, 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Koz93.D. Kozen. Logical Aspects of Set Constraints. In E. BSrger, Y. Gurevich, and K. Meinke, editors, Proc. 1993 Conf. Computer Science Logic (CSL '93), volume 832 of Lecture Notes in Computer Science, pages 175-188. Springer-Verlag, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Mos96.C. Mossin. Flow Analysis of Typed Higher-Order Programs. PhD thesis, DIKU, Department of Computer Science, University of Copenhagen, 1996.Google ScholarGoogle Scholar
  18. MTH90.Robin Milner, Mads Torte, and Robert Harper. The Definition of Standard ML. MIT Press, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. MW97.S. Marlow and P. Wadler. A Practical Subtyping System For Erlang. In Proceedings of the International Conference on Functional Programming (ICFP '97), June 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. PLD97.Proceedings of the 1997 ACM SIGPLAN Conference on Programming Language Design and Implementation, June 1997.Google ScholarGoogle Scholar
  21. Pot96.F. Pottier. Simplifying Subtyping Constraints. In Proceedings of the 1996 A CM SIGPLAN international Conference on Functional Programming (iCFP '96), pages 122-133, January 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. PS91.J. Palsberg and M. I. Schwartzbach. Object- Oriented Type Inference. In Proceedings of the A CM Conference on Object-Oriented programming: Systems, Languages, and Applications, October 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Rey69.J.C. Reynolds. Automatic Computation of Data Set Definitions, pages 456-461. Information Processing 68. North-Holland, 1969.Google ScholarGoogle Scholar
  24. SH97.M. Shapiro and S. Horwitz. Fast and Accurate Flow-Insensitive Points-To Analysis. In Proceedings of the 2~th Annual A CM SIGPLAN- SIGA CT Symposium on Principles of Programming Languages, pages 1-14, January 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Shi88.O. Shivers. Control Flow Analysis in Scheme. In Proceedings of the A CM SIGPLAN '88 Conference on Programming Language Design and Implementation, pages 164-174, June 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Shm83.O. Shmueli. Dynamic Cycle Detection. Information Processing Letters, 17(4):185-188, 8 November 1983.Google ScholarGoogle Scholar
  27. Ste95.B. Steensgaard. Points-to Analysis in Almost Linear Time. In Proceedings of the 23rd Annual A CM SIGPLAN-S~GA CT Symposium on Principles of Pro~ramming Languages, pages 32-41, January 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. TS96.V. Trifonov and S. Smith. Subtyping Constrained Types. In Proceedings of the 3rd International Static Analysis Symposium, pages 349- 365, September 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    PLDI '98: Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
    May 1998
    357 pages
    ISBN:0897919874
    DOI:10.1145/277650

    Copyright © 1998 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 1 May 1998

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • Article

    Acceptance Rates

    PLDI '98 Paper Acceptance Rate31of136submissions,23%Overall Acceptance Rate406of2,067submissions,20%

    Upcoming Conference

    PLDI '24

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader