Pointer Analysis for C Programs Using a Deductive System
| Accession number;06A0123131 |
| Title;Pointer Analysis for C Programs Using a Deductive System |
| Author;CHISHIRO EIICHIRO(Systems Dev. Lab., Hitachi Ltd., JPN) |
Journal Title;Transactions of Information Processing Society of Japan
|
Journal Code:Z0778A
|
ISSN:0387-5806
|
|
VOL.47;NO.SIG2(PRO28);PAGE.1-17(2006)
|
| Figure&Table&Reference;FIG.13, TBL.10, REF.33 |
| Pub. Country;Japan |
| Language;Japanese |
| Abstract;We present a new formalization and implementation of flow/context-insensitive, inclusion-based, field-sensitive pointer analysis for C programs. Although inclusion-based, field-sensitive pointer analysis has high analysis precision which enables many compiler optimizations, whether its practically-efficient implementation is possible or not is still an open question. There exist many optimizations of pointer analysis for C, but most of them are designed for field-independent analysis on a simple language, namely, without struct member expression. It is not trivial to apply these optimizations to field-sensitive analysis on a complex language like full C. Typical implementations become complicated to get high efficiency and this makes it difficult to confirm their correctness. In this paper, we show a formalization of analysis using a deductive system based on a structure of expressions, and its implementation which is simple and highly efficient, both are desirable property for a practical analyzer. The point of our implementation method is the step of rewriting analysis rules to relational algebraic operations, which enables us to use basic optimizations in a relational database. (author abst.) |
|