DocumentCode
2806855
Title
Executable Analysis using Abstract Interpretation with Circular Linear Progressions
Author
Sen, Rathijit ; Srikant, Y.N.
Author_Institution
Dept. of Comput. Sci. & Autom., Indian Inst. of Sci., Bangalore
fYear
2007
fDate
May 30 2007-June 2 2007
Firstpage
39
Lastpage
48
Abstract
We propose a new abstract domain for static analysis of executable code. Concrete states are abstracted using circular linear progressions (CLPs). CLPs model computations using a finite word length as is seen in any real life processor. The finite abstraction allows handling overflow scenarios in a natural and straight-forward manner. Abstract transfer functions have been defined for a wide range of operations which makes this domain easily applicable for analyzing code for a wide range of ISAs. CLPs combine the scalability of interval domains with the discreteness of linear congruence domains. We also present a novel, lightweight method to track linear equality relations between static objects that is used by the analysis to improve precision. The analysis is efficient, the total space and time overhead being quadratic in the number of static objects being tracked.
Keywords
program compilers; program diagnostics; abstract interpretation; abstract transfer functions; circular linear progressions; executable analysis; executable code; finite word length; linear congruence domains; static analysis; Automation; Computational modeling; Computer science; Concrete; Instruction sets; Partitioning algorithms; Registers; Safety; Scalability; Transfer functions;
fLanguage
English
Publisher
ieee
Conference_Titel
Formal Methods and Models for Codesign, 2007. MEMOCODE 2007. 5th IEEE/ACM International Conference on
Conference_Location
Nice
Print_ISBN
1-4244-1050-9
Type
conf
DOI
10.1109/MEMCOD.2007.371251
Filename
4231770
Link To Document