MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Object Graph Analysis Andre Spiegel

Download:
Download as a PDF | Download as a PS
unknown authors
ftp://ftp.inf.fu-berlin.de/pub/reports/tr-b-99-11.ps.gz
Add To MetaCart

Abstract:

The run-time structure of an object-oriented program can be represented by an object graph. Approximating this graph statically is a prerequisite for higher level analyses such as distribution analysis and concurrency analysis; it is also helpful in contexts of software maintenance and re-engineering. However, most existing techniques for static analysis of object-oriented programs are not adequate for deriving general object graphs from the source code. We have therefore developed a new algorithm that is capable of doing so. The algorithm is dened for the Java language, of which it covers all language features except class loader interactions and run-time re ection. It is ow-insensitive but contextsensitive, and therefore has a low computational complexity. This paper describes the algorithm and presents results that our implementation obtained for several non-trivial example programs of considerable size.

Citations

415 Points-to analysis in almost linear time – Steensgaard - 1996
403 Program Analysis and Specialization for the C Programming Language. PhDthesis, University of Copenhagen, DIKU, DIKU report 94/19 – Andersen - 1994
318 Analysis of pointers and structures – Chase, Wegman, et al. - 1990
249 Solving shape-analysis problems in languages with destructive updating – Sagiv, Reps, et al. - 1998
208 Object-oriented type inference – Palsberg, Schwartzbach - 1991
158 Precise Concrete Type Inference for Object-Oriented Languages – Plevyak, Chien - 1994
91 Relevant Context Inference – Chatterjee, Ryder, et al. - 1999
91 Call graph construction in object-oriented languages – Grove, DeFouw, et al. - 1997
37 Barat–A Front-End for Java – Bokowski, Spiegel - 1998
37 Compile-time analysis of object-oriented programs – Vitek, Horspool, et al. - 1992
28 Constructing compact models of concurrent java programs – Corbett - 1998
11 The complexity of type analysis of Object Oriented programs – Gil, Itai - 1998
9 Locality optimization in JavaParty by means of static type analysis – Philippsen, Haumacher - 1998
9 Fast and accurate points-to analysis – Shapiro, Horwitz - 1997
6 Lokalitatsoptimierung durch statische Typanalyse in JavaParty – Haumacher - 1998
6 Automatic Distribution in Pangaea – Spiegel - 2000
3 Analyzing exception in Java programs – Robillard, Murphy - 1999
1 Ecient distribution by static analysis – Spiegel - 2000