Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Rakesh Ghiya

dblp:04/3434 · DBLP profile ↗
← Back
5ranked-venue papers
4as first author
0since 2021 · last 2001
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 5 · 4 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
4 papers
Program analysis · 50% Compilers and program optimization · 48% Programming languages and type systems · 2%

Topics — the 8 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis › static analysis
pointer analysis
0.132001
On the Importance of Points-to Analysis and Other Memory Disambiguation Methods for C Programs · PLDI 2001
Putting Pointer Analysis to Work · POPL 1998
Context-Sensitive Interprocedural Points-to Analysis in the Presence of Function Pointers · PLDI 1994
Compilers and program optimization
compiler analysis
0.012001
On the Importance of Points-to Analysis and Other Memory Disambiguation Methods for C Programs · PLDI 2001
Compilers and program optimization › dependence analysis
memory disambiguation
0.012001
On the Importance of Points-to Analysis and Other Memory Disambiguation Methods for C Programs · PLDI 2001
Compilers and program optimization › compiler optimization › redundancy elimination
common subexpression elimination
0.011998
Putting Pointer Analysis to Work · POPL 1998
Program analysis › static analysis › pointer analysis
shape analysis
0.011996
Is it a Tree, a DAG, or a Cyclic Graph? A Shape Analysis for Heap-Directed Pointers in C · POPL 1996
Program analysis
static analysis
0.011994
Context-Sensitive Interprocedural Points-to Analysis in the Presence of Function Pointers · PLDI 1994
Compilers and program optimization › dependence analysis
dependence testing
0.011996
Is it a Tree, a DAG, or a Cyclic Graph? A Shape Analysis for Heap-Directed Pointers in C · POPL 1996
Programming languages and type systems › programming paradigms › imperative languages
c
0.011994
Context-Sensitive Interprocedural Points-to Analysis in the Presence of Function Pointers · PLDI 1994

Methods — techniques the papers use, named apart from their topics

points-to analysis · 0.0stack location approximation · 0.0context-sensitive interprocedural analysis · 0.0
YearPublicationVenuePosition
2001 On the Importance of Points-to Analysis and Other Memory Disambiguation Methods for C Programs
abstract
In this paper, we evaluate the benefits achievable from pointer analysis and other memory disambiguation techniques for C/C++ programs, using the framework of the production compiler for the Intel ® Itanium TM processor. Most of the prior work on memory disambiguation has primarily focused on pointer analysis, and either presents only static estimates of the accuracy of the analysis (such as average points-to set size), or provides performance data in the context of certain individual optiraizations. In contrast, our study is based on a complete memory disambiguation framework that uses a whole set of techniques including pointer analysis. Further, it presents how various compiler analyses and optimizations interact with the memory disambiguator, evaluates how much they benefit from disambiguation, and measures the eventual impact on the performance of the program. The paper also analyzes the types of disambiguation queries that are typically received by the disambiguator, which disambiguation techniques prove most effective in resolving them, and what type of queries prove difficult to be resolved. The study is based on empirical data collected for the SPEC CINT2000 C/C++ programs, running on the Itanium processor. 1.
Rakesh Ghiya, Daniel M. Lavery, David C. Sehr
PLDI1
1998 Detecting Parallelism in C Programs with Recursive Darta Structures
Rakesh Ghiya, Laurie J. Hendren, Yingchun Zhu
CC1
1998 Putting Pointer Analysis to Work
abstract
This paper addresses the problem of how to apply pointer analysis to a wide variety of compiler applications. We are not presenting a new pointer analysis. Rather, we focus on putting two existing pointer analyses, points-to analysis and connection analysis, to work.We demonstrate that the fundamental problem is that one must be able to compare the memory locations read/written via pointer indirections, at different program points, and one must also be able to summarize the effect of pointer references over regions in the program. It is straightforward to compute read/write sets for indirections involving stack-directed pointers using points-to information. However, for heap-directed pointers we show that one needs to introduce the notion of anchor handles into the connection analysis and then express read/write sets to the heap with respect to these anchor handles.Based on the read/write sets we show how to extend traditional analyses like common subexpression elimination, loop-invariant removal and location-invariant removal to include pointer references. We also demonstrate the use of our information on more advanced techniques such as array dependence testing and program understanding. We have implemented our techniques in our McCAT C compiler, and we demonstrate examples of applying our methods on a set of pointer-intensive C benchmarks, as well as present concrete empirical data on the improvements achieved.
Rakesh Ghiya, Laurie J. Hendren
POPL1
1996 Is it a Tree, a DAG, or a Cyclic Graph? A Shape Analysis for Heap-Directed Pointers in C
abstract
This paper reports on the design and implementation of a practical shape analysis for C. The purpose of the analysis is to aid in the disambiguation of heap-allocated data structures by estimating the shape (Tree, DAG, or Cyclic Graph) of the data structure accessible from each heap-directed pointer. This shape information can be used to improve dependence testing and in parallelization, and to guide the choice of more complex heap analyses.The method has been implemented as a context-sensitive interprocedural analysis in the McCAT conlpiler. Experimental results and observations are given for 16 benchmark programs. These results show that the analysis gives accurate and useful results for an important group of applications.
Rakesh Ghiya, Laurie J. Hendren
POPL1
1994 Context-Sensitive Interprocedural Points-to Analysis in the Presence of Function Pointers
abstract
This paper reports on the design, implementation, and empirical results of a new method for dealing with the aliasing problem in C. The method is based on approximating the points-to relationships between accessible stack locations, and can be used to generate alias pairs, or used directly for other analyses and transformations.
Maryam Emami, Rakesh Ghiya, Laurie J. Hendren
PLDI2