• 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

Symbolic Bounds Analysis of Pointers, Array Indices, and Accessed Memory Regions (2000)

Cached

  • Download as a PDF

Download Links

  • [www.eecs.umich.edu]
  • [www.cs.cornell.edu]
  • [www.cag.lcs.mit.edu]
  • [www.cag.csail.mit.edu]
  • [www.cag.lcs.mit.edu]
  • [www.cag.lcs.mit.edu]
  • [www.cag.lcs.mit.edu]
  • [www.cag.lcs.mit.edu]
  • [www.cag.csail.mit.edu]
  • [www.cs.cornell.edu]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Radu Rugina , Martin Rinard
Venue:PLDI 2000
Citations:100 - 14 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Rugina00symbolicbounds,
    author = {Radu Rugina and Martin Rinard},
    title = { Symbolic Bounds Analysis of Pointers, Array Indices, and Accessed Memory Regions},
    year = {2000}
}

Years of Citing Articles

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

This paper presents a novel framework for the symbolic bounds analysis of pointers, array indices, and accessed memory regions. Our framework formulates each analysis problem as a system of inequality constraints between symbolic bound polynomials. It then reduces the constraint system to a linear program. The solution to the linear program provides symbolic lower and upper bounds for the values of pointer and array index variables and for the regions of memory that each statement and procedure accesses. This approach eliminates fundamental problems associated with applying standard xed-point approaches to symbolic analysis problems. Experimental results from our implemented compiler show that the analysis can solve several important problems, including static race detection, automatic parallelization, static detection of array bounds violations, elimination of array bounds checks, and reduction of the number of bits used to store computed values.

Citations

749 Efficiently computing static single assignment form and the control dependence graph - Cytron, Ferrante, et al. - 1991
706 Eiffel: The Language - Meyer - 1992
477 Points-to analysis in almost linear time - Steensgaard - 1996
465 Parametric Shape Analysis via 3-Valued Logic - Sagiv, Reps, et al. - 1999
458 Principles of program analysis - Nielson, Nielson, et al. - 1999
455 Extended static checking for Java - Flanagan, Leino, et al.
431 Cilk: an efficient multithreaded runtime system - Blumofe, Joerg, et al. - 1991
427 Optimizing Supercompilers for Supercomputers - Wolfe - 1989
406 The omega test: a fast and practical integer programming algorithm for dependence analysis - Pugh - 1991
375 Efficient ContextSensitive Pointer Analysis for C Programs - Wilson, Lam - 1995
360 Analysis of pointers and structures - Chase, Wegman, et al. - 1990
347 Enforcing high-level protocols in low-level software - DeLine, Fähndrich - 2001
334 Dependence Analysis for Supercomputing - Banerjee - 1988
314 A first step towards automated detection of buffer overrun vulnerabilities - Wagner, Foster, et al. - 2000
300 Compiling Fortran D for MIMD distributed-memory machines - Hiranandani, Kennedy, et al. - 1992
281 Solving shape-analysis problems in languages with destructive updating - Sagiv, Reps, et al. - 1998
273 Extended static checking - Detlefs, Leino, et al. - 1998
248 The implementation of the Cilk-5 multithreaded language - Frigo, Leiserson, et al. - 1998
245 The Design and Implementation of a Certifying Compiler - Necula, Lee - 2004
221 Type-based race detection for java - Flanagan, Freund - 2000
196 An implementation of interprocedural bounded regular section analysis - Havlak, Kennedy - 1991
195 Efficient detection of all pointer and array access errors - Austin, Breach, et al. - 1994
188 A type and effect system for atomicity - Flanagan, Qadeer - 2003
178 Is it a tree, a dag, or a cyclic graph? a shape analysis for heap-directed pointers in c - Ghiya, Hendren - 1996
170 A parameterized type system for race-free Java programs - Boyapati, Rinard - 2001
164 Region-based memory management in Cyclone - Grossman, Morrisett, et al. - 2002
162 Eliminating Array Bound Checking Through Dependent Types - Xi, Pfenning - 1998
158 Statically detecting likely buffer overflow vulnerabilities - Larochelle, Evans - 2001
155 Efficient and Precise Datarace Detection for Multithreaded Object-Oriented Programs - Choi, Lee, et al. - 2002
154 Parallelizing programs with recursive data structures - Hendren, Nicolau - 1990
152 Detecting conflicts between structure accesses - Larus, Hilfinger - 1988
131 Practical dependence testing - Goff, Kennedy, et al. - 1991
125 Pointer Analysis for Multithreaded Programs - Rugina, Rinard - 1999
113 V.: ABCD: Eliminating array bounds checks on demand - Bodik, Gupta, et al. - 2000
113 M.S.: Efficient and exact data dependence analysis - Maydan, Hennessy, et al. - 1991
105 Recursion leads to automatic variable blocking for dense linear-algebra algorithms - GUSTAVSON - 1997
104 Types for safe locking - Flanagan, Abadi - 1999
103 The SUIF Compiler for Scalable Parallel Machines - Amarasinghe, Anderson, et al. - 1995
101 Direct Parallelization of Call Statements - Triolet, Feautrier, et al. - 1986
100 Hybrid dynamic data race detection - O’Callahan, Choi - 2003
91 Abstract debugging of higher-order imperative languages - Bourdoncle - 1993
85 Detecting coarse-grain parallelism using an interprocedural parallelizing compiler - Hall, Amarasinghe, et al. - 1995
80 Bidwidth analysis with application to silicon compilation - Stephenson, Babb, et al. - 2000
79 Detecting access anomalies in programs with critical sections - Dinning, Schonberg - 1991
76 A technique for summarizing data access and its use in parallelism enhancing transformations - Balasundaram, Kennedy - 1989
76 Compiler analysis of the value ranges for variables - Harrison - 1977
75 Detecting data races in cilk programs that use locks - Cheng, Feng, et al. - 1998
70 Optimizing array bound checks using flow analysis - Gupta - 1993
70 On-the-fly detection of data races for programs with nested fork-join parallelism - Mellor-Crummey - 1991
69 Auto-Blocking matrix-multiplication or tracking BLAS3 performance from source code - FRENS, WISE - 1997
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