• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Solving Shape-Analysis Problems in Languages with Destructive Updating (1996)

Cached

  • Download as a PDF

Download Links

  • [www.eecs.umich.edu]
  • [www.cs.colorado.edu]
  • [www.cs.trinity.edu]
  • [sol.cs.trinity.edu]
  • [www-plan.cs.colorado.edu]
  • [www.cs.wisc.edu]
  • [www-rocq.inria.fr]
  • [www.cs.wisc.edu]
  • [www.cs.wisc.edu]
  • [www.math.tau.ac.il]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Mooly Sagiv , Thomas Repst , Reinhard Wilhelm
Venue:POPL '96
Citations:281 - 18 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Sagiv96solvingshape-analysis,
    author = {Mooly Sagiv and Thomas Repst and Reinhard Wilhelm},
    title = {Solving Shape-Analysis Problems in Languages with Destructive Updating},
    year = {1996}
}

Years of Citing Articles

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

This paper concerns the static analysis of programs that perform destructive updating on heap-allocated storage. We give an algorithm that conservatively solves this problem by using a finite shape-graph to approximate the possible “shapes” that heap-allocated structures in a program can take on. In contrast with previous work, our method M even accurate for certain programs that update cyclic data structures. For example, our method can determine that when the input to a program that searches a list and splices in a new element is a possibly circular list, the output is a possibly circular list.

Citations

1813 The Art of Computer Programming - Knuth - 1968
1635 Abstract Interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints - COUSOT, COUSOT - 1977
360 Analysis of pointers and structures - Chase, Wegman, et al. - 1990
273 Two approaches to interprocedural data flow analysis - SHARIR, PNUELI - 1981
211 Interprocedural may-alias analysis for pointers: beyond k-limiting - Deutsch - 1994
209 Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects - Choi, Burke, et al. - 1993
186 Flow analysis and optimization of Lisplike structures - Muchnick, Jones - 1981
154 Parallelizing programs with recursive data structures - Hendren, Nicolau - 1990
152 Detecting conflicts between structure accesses - Larus, Hilfinger - 1988
134 Dependence analysis for pointer variables - Horwitz, Pfeiffer, et al. - 1989
123 Undecidability of static analysis - LANDI - 1992
115 Memoing for logic programs - Warren - 1992
112 A precise inter-procedural data flow algorithm - Myers - 1981
104 Pointer-induced aliasing: a problem classification - Landi, Ryder - 1991
97 A flexible approach to interprocedural data flow analysis and programs with recursive data structures - Jones, Muchnick - 1982
83 Abstractions for recursive pointer data structures: improving the analysis and transformation of imperative programs - Hendren, Hummell, et al. - 1992
71 The undecidability of aliasing - RAMALINGAM - 1994
68 A storeless model of aliasing and its abstractions using finite representations of right-regular equivalence relations - Deutsch - 1992
64 Automatic computation of data set definitions - Reynolds - 1969
49 Set-Based Program Analysis - HEINTZE - 1992
45 Partially static structures in a self-applicable partial evaluator - Mogensen - 1988
38 Implementation of the CORAL deductive database system - Ramakrishnan, Srivastava, et al. - 1993
37 Is it a tree, a DAG, or a cyclic graph - Ghiya, Hendren - 1996
34 Restructuring symbolic programs for concurrent execution on multiprocessors - Larus - 1989
34 Analysis of dynamic structures for efficient parallel execution - Plevyak, Karamcheti, et al. - 1993
30 Separating binding times in language specifications - Mogensen
20 Designing Programming Languages for Analyzability: a Fresh Look at Pointer Data Structures - Hendren, Gao - 1992
18 analysis as a generalized path problem - Shape - 1995
14 Algorithms, 2-nd Ed - Sedgewick - 1988
13 A lattice for abstract interpretation of dynamic (lisp-like) structures - Stransky - 1992
9 induced aliasing: A problem classification - Pointer - 1991
8 Interprocedural Heap Analysis For Parallelizing Imperative Programs - Assmann, Weinhardt - 1993
8 Scanning list structures without stacks or tag bits - Lindstrom - 1973
1 Parallelizing Programs with Recursive Date Structures - Hendren - 1990
1 Solving Shape-Analysis Problems in Languages with Destructive Updating · 49 - Hendren - 1990
1 Detecting conflicts between structure accesses - California, Berkeley, et al. - 1988
1 accepted April 1997 - August - 1996
1 ACM 0164-0925/98/0100-0001A $5.00 - c○ - 1998
1 Program Flow Analysis: Theory and Applications, chapter 7 - Wilhelm - 1981
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University