2011
DOI: 10.1007/978-3-642-19718-5_24
|View full text |Cite
|
Sign up to set email alerts
|

Precise Interprocedural Analysis in the Presence of Pointers to the Stack

Abstract: Abstract. In a language with procedures calls and pointers as parameters, an instruction can modify memory locations anywhere in the call-stack. The presence of such side effects breaks most generic interprocedural analysis methods, which assume that only the top of the stack may be modified. We present a method that addresses this issue, based on the definition of an equivalent local semantics in which writing through pointers has a local effect on the stack. Our second contribution in this context is an adeq… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3

Citation Types

0
3
0

Year Published

2011
2011
2024
2024

Publication Types

Select...
4
1

Relationship

1
4

Authors

Journals

citations
Cited by 7 publications
(3 citation statements)
references
References 32 publications
0
3
0
Order By: Relevance
“…Several relational analyses were developed for the inter-procedural analysis of numeric programs [5,23,36,42], and in the context of inter-procedural shape analysis [20,22,43]. They all feature a form of function summary, that helps reduce the analysis cost of large programs, by enabling modular analyses.…”
Section: Related Workmentioning
confidence: 99%
“…Several relational analyses were developed for the inter-procedural analysis of numeric programs [5,23,36,42], and in the context of inter-procedural shape analysis [20,22,43]. They all feature a form of function summary, that helps reduce the analysis cost of large programs, by enabling modular analyses.…”
Section: Related Workmentioning
confidence: 99%
“…Reps et al [46] proposed an algorithm belonging to the family of functional approaches to solve data flow problems with finite semilattices and distributive propagation functions in polynomial time, by recasting these data flow problems into graph reachability problems. Jeannet et al [30,50] proposed a method reminiscent of the call strings approach, for the relational numerical analysis of programs with recursive procedures and pointers to the stack. It is a top-down approach based on an abstraction of the stack.…”
Section: Related Workmentioning
confidence: 99%
“…In [11], numerical relations are used to represent the semantic of a set of statements, however this is limited to numerical programs whereas we extend the method to consider both numbers and pointers, including pointer arithmetic. The analyzer proposed by Sotin and Jeannet in [23] is able to infer input/output relations of the form proposed in Section 5. Nevertheless they consider a subset of C that does not contain pointer arithmetic, union types nor pointer casts.…”
Section: Related Workmentioning
confidence: 99%