Abstract. We present a simple algorithmic extension of the classical call-strings approach to mitigate substantial performance degradation caused by spurious interprocedural cycles. Spurious interprocedural cy-cles are, in a realistic setting, key reasons for why approximate call-return semantics in both context-sensitive and-insensitive static analysis can make the analysis much slower than expected. In the traditional call-strings-based context-sensitive static analysis, be-cause the number of distinguished contexts must be finite, multiple call-contexts are inevitably joined at the entry of a procedure and the output at the exit is propagated to multiple return-sites. We found that these multiple returns frequently create a single large ...
Many interprocedural static analyses perform a lossy join for reasons of termination or efficiency. ...
The need to protect computers from malicious software is ongoing. One approach uses static analysis ...
Whether applications or libraries, today’s software heavily reuses existing code to build more gigan...
We present a simple algorithmic extension of the classical call-strings approach to mitigate substan...
The full call strings method is the most general, simplest, and most precise method of performing co...
In this work we follow an intermediate approach that tries to use sound and conservative static code...
Static analysis is used to automatically detect bugs and security breaches, and aids compiler optimi...
Abstract. Safety-critical software in industry is typically subjected to both dy-namic testing as we...
. This paper argues that for many algorithms, and static analysis algorithms in particular, bottom-...
Static analysis has commonly beenknown as a technique for finding violations of superficial stylisti...
Interprocedural data flow analysis extends the scope of analysis across procedure boundaries in sear...
Context sensitive inter-procedural dataflow analysis is a precise approach for static analysis of pr...
International audienceIn the realm of embedded critical systems, it is crucial to guarantee the corr...
Static program analysis is in general more precise if it is sensitive to execution contexts (executi...
The complexity of software grows every year, and while there are many programming techniques and new...
Many interprocedural static analyses perform a lossy join for reasons of termination or efficiency. ...
The need to protect computers from malicious software is ongoing. One approach uses static analysis ...
Whether applications or libraries, today’s software heavily reuses existing code to build more gigan...
We present a simple algorithmic extension of the classical call-strings approach to mitigate substan...
The full call strings method is the most general, simplest, and most precise method of performing co...
In this work we follow an intermediate approach that tries to use sound and conservative static code...
Static analysis is used to automatically detect bugs and security breaches, and aids compiler optimi...
Abstract. Safety-critical software in industry is typically subjected to both dy-namic testing as we...
. This paper argues that for many algorithms, and static analysis algorithms in particular, bottom-...
Static analysis has commonly beenknown as a technique for finding violations of superficial stylisti...
Interprocedural data flow analysis extends the scope of analysis across procedure boundaries in sear...
Context sensitive inter-procedural dataflow analysis is a precise approach for static analysis of pr...
International audienceIn the realm of embedded critical systems, it is crucial to guarantee the corr...
Static program analysis is in general more precise if it is sensitive to execution contexts (executi...
The complexity of software grows every year, and while there are many programming techniques and new...
Many interprocedural static analyses perform a lossy join for reasons of termination or efficiency. ...
The need to protect computers from malicious software is ongoing. One approach uses static analysis ...
Whether applications or libraries, today’s software heavily reuses existing code to build more gigan...