International Symposium on Code Generation and Optimization
DOI: 10.1109/cgo.2005.27
|View full text |Cite
|
Sign up to set email alerts
|

Practical and Accurate Low-Level Pointer Analysis

Abstract: Pointer analysis is traditionally performed once, early in the compilation process, upon an intermediate representation (IR) with source-code semantics. However, performing pointer analysis only once at this level imposes a phase-ordering constraint, causing alias information to become stale after subsequent code transformations. Moreover, high-level pointer analysis cannot be used at link time or run time, where the source code is unavailable. This paper advocates performing pointer analysis on a low-level in… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
6
0

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 24 publications
(6 citation statements)
references
References 18 publications
0
6
0
Order By: Relevance
“…Alaska's overheads could be further improved with memory analysis [29,37,44,47], which can say when a value is definitely a handle or not. This would allow the compiler to completely eliminate the conditional check and branch before translation.…”
Section: Overhead Varies But Is Overall Lowmentioning
confidence: 99%
“…Alaska's overheads could be further improved with memory analysis [29,37,44,47], which can say when a value is definitely a handle or not. This would allow the compiler to completely eliminate the conditional check and branch before translation.…”
Section: Overhead Varies But Is Overall Lowmentioning
confidence: 99%
“…Binary Memory Dependence Analysis. There has been a long history of efforts to approach the problem of analyzing memory dependencies in executables [5,6,11,16,22,34,35,71,96]. Debray et al [22] and Cifuentes et al [16] pioneered this field by using abstract interpretation to propagate the abstract domain along the registers of each instruction.…”
Section: Related Workmentioning
confidence: 99%
“…Over the last two decades, researchers have made numerous attempts to improve the accuracy and performance of binary memory dependence analysis [5,6,11,16,22,34,71]. The most common approach often involves statically computing and propagating an over-approximated set of values that each register and memory address can contain at each program point using abstract interpretation.…”
Section: Introductionmentioning
confidence: 99%
“…The static single assignment-assignment (SSA) form [18] has been used in many studies to overcome such difficulties. Therefore, similar to vllpa [19], we converted the binary to an SSA form, as shown in Fig. 2(c).…”
Section: B Null Pinter Dereference In Binarymentioning
confidence: 99%
“…Pointer aliasing is a key challenge in binary NPD detection. VLLPA [19] proposed an IR-level alias analysis. They first presented context-sensitive and partially flow-sensitive points for a lowlevel analysis.…”
Section: B Alias Analysis In Binarymentioning
confidence: 99%