skip to main content
10.1145/1251535.1251539acmconferencesArticle/Chapter ViewAbstractPublication PagespasteConference Proceedingsconference-collections
Article

Interstatement must aliases for data dependence analysis of heap locations

Published: 13 June 2007 Publication History

Abstract

Data dependences are of critical importance in many software engineering activities. Due to the dynamic allocation mechanism, it is still difficult to extract them precisely for heap locations. This paper firstly proposes two notion of interstatement must aliases and then exploits these aliases in improving data depend-ence analysis for heap locations. We carry out a preliminary ex-periment on some programs, the result of which indicates that the new technique can effectively improve the precision of depend-ence analysis for heap locations with an endurable cost.

References

[1]
A. Aiken, J. S. Foster, J. Kodumal, and T. Terauchi. Checking and inferring local non--aliasing. In Proceedings of the ACM Conference on Programming Language Design and Implementation, 2003.
[2]
R. Z. Altucher and W. Landi. An extended form of must alias analysis for dynamic allocation. In Proceedings of the ACM Symposium on Principles of programming languages, 1995.
[3]
W. Amme and E. Zehendner. Data dependence analysis in programs with pointers. Parallel Computing, 24(3--4): 505--525, 1998.
[4]
M. Burke, P. Carini, J.D. Choi, and M. Hind. Interprocedural pointer alias analysis. Research Report RC 21055, IBM T. J. Watson Research Center, 1997.
[5]
D. Chase, M. Wegman, and F. Zadek. Analysis of pointers and structures. In Proceedings of the SIGPLAN Conference on Program Language Design and Implementation, pp. 296--310, 1990.
[6]
R. Chatterjee, B. G. Ryder, and W. Landi. Relevant context inference. In Proceedings of the Symposium on Principles of Programming Languages, pp.133--146, 1999.
[7]
S. S. Muchnick. Advanced compiler design and implementation. Academic Press, 1997.
[8]
N. Dor, S. Adams, M. Das, and Z. Yang. Software validation via scalable path--sensitive value flow analysis. In Proceedings of International Sympo--sium on Software Testing and Analysis, 2004.
[9]
M. Emami, R. Ghiya, and L. J. Hendren. Context--sensitive interprocedural points-to analysis in the presence of function pointers. In Proceedings of the ACM Conference on Programming Language Design and Implementation, 1994.
[10]
M. Hind. Pointer analysis: haven't we solved this problem yet?, In Program Analysis for Software Tools and Engineering, 2001.
[11]
S. Horwitz, P. Pfeiffer, and T. W. Reps. Dependence analysis for pointer variables. In Proceedings of the ACM Conference on Programming Lan--guage Design and Implementation, 1989.
[12]
S. Jagarmathan, P. Thiemam, S. Weeks, and A. Wright. Single and loving it: Must--alias analysis for higher--order languages. In Proceedings of the ACM Symposium on Principles of Programming Languages, 1998.
[13]
W. Landi and B. G. Ryder. Pointer--induced aliasing: A problem classifica--tion. In Conference Record of the 18th Annual ACM Symposium on Princi--ples of Programming Languages, 1991.
[14]
W. Landi and B. G. Ryder. A safe approximation algorithm for interproce--dural pointer aliasing. In Proceedings of the ACM Conference on Program--ming Language Design and Implementation, 1992.
[15]
J. R. Larus and P. N. Hilfinger. Detecting conflicts between structure accesses. In Proceedings of the ACM Conference on Programming Language Design and Implementation, 1988.
[16]
O. Lhoták and L. Hendren. Scaling Java points-to analysis using Spark. In Proceedings of the International Conference on Compiler Construction, pp. 153--169, 2003.
[17]
L.-P. Ni and N.-W. Lin. Flow--sensitive interprocedural pointer induced alias analysis. In Proceedings of the 3rd Workshop on Compiler Techniques for High Performance Computing, 1997.
[18]
M. Sagiv, T. Reps, and R. Wilhelm. Parametric shape analysis via 3--valued logic. ACM Transactions on Programming Languages and Systems, 24(3):217--298, 2002.
[19]
Soot. http://www.sable.mcgill.ca/soot/

Cited By

View all
  • (2018)May-happen-in-parallel analysis with static vector clocksProceedings of the 2018 International Symposium on Code Generation and Optimization - CGO 201810.1145/3179541.3168813(228-240)Online publication date: 2018
  • (2018)May-happen-in-parallel analysis with static vector clocksProceedings of the 2018 International Symposium on Code Generation and Optimization10.1145/3168813(228-240)Online publication date: 24-Feb-2018
  • (2012)Side-effect analysis with fast escape filterProceedings of the ACM SIGPLAN International Workshop on State of the Art in Java Program analysis10.1145/2259051.2259054(15-20)Online publication date: 14-Jun-2012
  • Show More Cited By

Index Terms

  1. Interstatement must aliases for data dependence analysis of heap locations

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    PASTE '07: Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
    June 2007
    96 pages
    ISBN:9781595935953
    DOI:10.1145/1251535
    • General Chairs:
    • Manuvir Das,
    • Dan Grossman
    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: 13 June 2007

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. data dependence
    2. heap
    3. must alias
    4. pointer analysis

    Qualifiers

    • Article

    Conference

    PASTE07

    Acceptance Rates

    Overall Acceptance Rate 57 of 159 submissions, 36%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 14 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2018)May-happen-in-parallel analysis with static vector clocksProceedings of the 2018 International Symposium on Code Generation and Optimization - CGO 201810.1145/3179541.3168813(228-240)Online publication date: 2018
    • (2018)May-happen-in-parallel analysis with static vector clocksProceedings of the 2018 International Symposium on Code Generation and Optimization10.1145/3168813(228-240)Online publication date: 24-Feb-2018
    • (2012)Side-effect analysis with fast escape filterProceedings of the ACM SIGPLAN International Workshop on State of the Art in Java Program analysis10.1145/2259051.2259054(15-20)Online publication date: 14-Jun-2012
    • (2011)Contribution-based call stack abstraction for call string based pointer analysisInformation and Software Technology10.1016/j.infsof.2010.11.00453:6(654-665)Online publication date: 1-Jun-2011
    • (2009)Improving Side-Effect Analysis with Lazy Access Path ResolvingProceedings of the 2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation10.1109/SCAM.2009.13(35-44)Online publication date: 20-Sep-2009
    • (2009)Contribution-Based Call Stack Abstraction and Its Application in Pointer Analysis of AspectJ ProgramsProceedings of the 2009 16th Asia-Pacific Software Engineering Conference10.1109/APSEC.2009.28(267-274)Online publication date: 1-Dec-2009
    • (2008)Quantitative information flow as network flow capacityACM SIGPLAN Notices10.1145/1379022.137560643:6(193-205)Online publication date: 7-Jun-2008
    • (2008)Quantitative information flow as network flow capacityProceedings of the 29th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/1375581.1375606(193-205)Online publication date: 7-Jun-2008

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media