2006
DOI: 10.1145/1168917.1168908
|View full text |Cite
|
Sign up to set email alerts
|

A probabilistic pointer analysis for speculative optimizations

Abstract: Pointer analysis is a critical compiler analysis used to disambiguate the indirect memory ref-erences that result from the use of pointers and pointer-based data structures. A conventional pointer analysis deduces for every pair of pointers, at any program point, whether a points-to relation between them (i) definitely exists, (ii) definitely does not exist, or (iii) maybe exists.Many compiler optimizations rely on accurate pointer analysis, and to ensure correctness cannot optimize in the maybe case. In contr… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
8
0

Year Published

2006
2006
2020
2020

Publication Types

Select...
4
1

Relationship

1
4

Authors

Journals

citations
Cited by 7 publications
(8 citation statements)
references
References 63 publications
(98 reference statements)
0
8
0
Order By: Relevance
“…Comparing the complexity of PPA in SSA with data-flow PPA, because OðV EÞ is equivalent to OðV df N df Þ, and OðNÞ has less complexity than OðE 3 df Þ, data-flow PPA is more complex than PPA in SSA. Da Silva and Steffan [16] proposed a method of pointer analysis based on sparse transformation matrices. In their algorithm the pointer information was modeled as a points-to matrix, and transformation matrices recorded the influences of pointers within a statement or a set of statements.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Comparing the complexity of PPA in SSA with data-flow PPA, because OðV EÞ is equivalent to OðV df N df Þ, and OðNÞ has less complexity than OðE 3 df Þ, data-flow PPA is more complex than PPA in SSA. Da Silva and Steffan [16] proposed a method of pointer analysis based on sparse transformation matrices. In their algorithm the pointer information was modeled as a points-to matrix, and transformation matrices recorded the influences of pointers within a statement or a set of statements.…”
Section: Related Workmentioning
confidence: 99%
“…The complexity of data-flow PPA is OðV df N df Þ þ OðE 3 df Þ where V df is the number of nodes in CFG, N df is the maximum number of points-to relationship, and E df is the number variables in the equation [6]. Da Silva and Steffan [16] also proposed a method of probabilistic pointer analysis based on sparse transformation matrices. In their algorithm the pointer information was modeled as a points-to matrix, and transformation matrices recorded the influences of points within a statement or a set of statements.…”
Section: Introductionmentioning
confidence: 99%
“…Silva and Steffan [34] proposed a one-level context-sensitive and flow-sensitive probabilistic pointer analysis algorithm that statically predicts the probability of each pointsto relation at every program point. Their algorithm computes points-to probabilities through the use of linear transfer functions that are efficiently encoded as sparse matrices.…”
Section: Analysis Performancementioning
confidence: 99%
“…Chen et al [6] developed an algorithm to estimate the probabilities of loop-carried pointer-induced data-dependence relationships. Silva and Steffan [35] introduced linear transfer functions to model the problem of probabilistic alias analysis, whereby the transfer functions are efficiently encoded as sparse matrices. They demonstrated that the approach provides accurate probabilities at compile time.…”
Section: Probabilistic Alias Analysismentioning
confidence: 99%