Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/582153.582161acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free access

A flexible approach to interprocedural data flow analysis and programs with recursive data structures

Published: 25 January 1982 Publication History

Abstract

A new approach to data flow analysis of procedural programs and programs with recursive data structures is described. The method depends on simulation of the interpreter for the subject programming language using a retrieval function to approximate a program's data structures.

References

[1]
Bar78 Barth, Jeffrey, A Practical Interprocedural Data Flow Analysis Algorithm, Comm. of the ACM, vol. 21, no. 9, 1978, pp. 724 -- 736.
[2]
Cou77a Cousot, Patrick & Radhia Cousot, Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints, Conf. Rec. of 4th ACM Symp. on Princ. of Prog. Lang., Los Angeles, California, January 1977, pp. 238 -- 252.
[3]
Cou77b Cousot, Patrick & Radhia Cousot, Automatic Synthesis of Optimal Invariant Assertions: Mathematical Foundations, Proc. of ACM Symp. on Artif. Intell. and Prog. Lang., SIGPLAN Notices, vol. 12, no. 8, August 1977, pp. 1 -- 12.
[4]
Cou79 Cousot, Patrick & Radhia Cousot, Systematic Design of Program Analysis Frameworks, Conf. Rec. of 6th ACM Symp. on Princ. of Prog. Lang., January 1979, pp. 269 -- 282.
[5]
Eng75 Engelfriet, Joost, Tree Automata and Tree Grammars. DAIMI Report FN-10, Dept. of Computer Science, University of Aarhus, Aarhus, Denmark, April 1975.
[6]
Hec77 Hecht, Matthew S., Flow Analysis of Computer Programs, Elsevier North-Holland, New York, 1977.
[7]
JoM81 Jones, Neil D. & Steven S. Muchnick, Flow Analysis and Optimization of LISP-Like Structures, in Steven S. Muchnick & Neil D. Jones (eds.), Program Flow Analysis: Theory and Applications, Prentice-Hall, Englewood Cliffs, New Jersey, 1981, pp. 102 -- 131.
[8]
Jon80 Jones, Neil D., Flow Analysis of Lambda Expressions, Technical Report DAIMI IR-23, Computer Science Department, University of Aarhus, Aarhus, Denmark, October 1980.
[9]
Ken76 Kennedy, Ken, A Comparison of Two Algorithms for Global Data Flow Analysis, SIAM J. Comput., vol. 5, no. 1, 1976, pp. 158 -- 180.
[10]
Kil73 Kildall, G. A., A Unified Approach to Global Program Optimization, Conf. Rec. of the ACM Symp. on Princ. of Prog. Lang., Boston, Massachusetts, October 1973, pp. 194 -- 206.
[11]
McC63 McCarthy, John, Towards a Mathematical Science of Computation, Information Processing 1962, North-Holland, Amsterdam, 1963, pp. 220 -- 226.
[12]
Nie80 Nielson, Flemming, Semantic Foundations of Data Flow Analysis, Technical Report DAIMI PB-131, Computer Science Department, Aarhus University, Aarhus, Denmark, February 1981.
[13]
Rei79 Reif, John H., Data Flow Analysis of Communicating Processes, Conf. Rec. of the 6th ACM Symp. on Princ. of Prog. Lang., San Antonio, Texas, January 1979, pp. 257 -- 268.
[14]
Sin72 Sintzoff, Michel, Calculating Properties of Programs by Valuations on Specific Models, Proc. ACM Conf. on Proving Assertions about Programs, Las Cruces, New Mexico, January 1972, pp. 203 -- 207.
[15]
ShP81 Sharir, Micha & Amir Pnueli, Two Approaches to Interprocedural Data Flow Analysis, in Steven S. Muchnick & Neil D. Jones (eds.), Program Flow Analysis: Theory and Applications, Prentice-Hall, Englewood Cliffs, New Jersey, 1981, pp. 189 -- 234.
[16]
Tha73 Thatcher, James W., Tree Automata: An Informal Survey, in Alfred V. Aho (ed.), Currents in the Theory of Computing, Prentice-Hall, Englewood Cliffs, New Jersey, 1973, pp. 143 -- 172.

Cited By

View all
  • (2023)StaticPersist: Compiler Support for PMEM ProgrammingVerification, Model Checking, and Abstract Interpretation10.1007/978-3-031-24950-1_3(44-65)Online publication date: 16-Jan-2023
  • (2021)Reasoning about recursive tree traversalsProceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3437801.3441617(47-61)Online publication date: 17-Feb-2021
  • (2020)Incremental Abstract InterpretationFrom Lambda Calculus to Cybersecurity Through Program Analysis10.1007/978-3-030-41103-9_5(132-148)Online publication date: 15-Feb-2020
  • Show More Cited By
  1. A flexible approach to interprocedural data flow analysis and programs with recursive data structures

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    POPL '82: Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
    January 1982
    378 pages
    ISBN:0897910656
    DOI:10.1145/582153
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 25 January 1982

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Acceptance Rates

    POPL '82 Paper Acceptance Rate 38 of 121 submissions, 31%;
    Overall Acceptance Rate 724 of 3,601 submissions, 20%

    Upcoming Conference

    POPL '25

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)52
    • Downloads (Last 6 weeks)10
    Reflects downloads up to 30 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)StaticPersist: Compiler Support for PMEM ProgrammingVerification, Model Checking, and Abstract Interpretation10.1007/978-3-031-24950-1_3(44-65)Online publication date: 16-Jan-2023
    • (2021)Reasoning about recursive tree traversalsProceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/3437801.3441617(47-61)Online publication date: 17-Feb-2021
    • (2020)Incremental Abstract InterpretationFrom Lambda Calculus to Cybersecurity Through Program Analysis10.1007/978-3-030-41103-9_5(132-148)Online publication date: 15-Feb-2020
    • (2019)Weakly sensitive analysis for JavaScript object‐manipulating programsSoftware: Practice and Experience10.1002/spe.267649:5(840-884)Online publication date: 7-Jan-2019
    • (2018)Template-Based Verification of Heap-Manipulating Programs2018 Formal Methods in Computer Aided Design (FMCAD)10.23919/FMCAD.2018.8603009(1-9)Online publication date: Oct-2018
    • (2018)Abstract allocation as a unified approach to polyvariance in control-flow analysesJournal of Functional Programming10.1017/S095679681800013828Online publication date: 1-Aug-2018
    • (2017)Incremental whole program optimization and compilationProceedings of the 2017 International Symposium on Code Generation and Optimization10.5555/3049832.3049857(221-232)Online publication date: 4-Feb-2017
    • (2017)Incremental whole program optimization and compilation2017 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)10.1109/CGO.2017.7863742(221-232)Online publication date: Feb-2017
    • (2017)Precise Null Pointer Analysis Through Global Value NumberingAutomated Technology for Verification and Analysis10.1007/978-3-319-68167-2_2(25-41)Online publication date: 27-Sep-2017
    • (2017)QuickChecking static analysis propertiesSoftware Testing, Verification and Reliability10.1002/stvr.164027:6Online publication date: 30-Aug-2017
    • Show More Cited By

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media