Core Expressions: An Intermediate Representation for Expressions in C

Abstract

The paper presents a simple representation of C expressions and an algorithm that translates C expressions into this form. The representation can be used as a simple model when designing program analyses. At the same time, it can be used as a compiler intermediate representation to build actual analysis implementations. We describe a formulation of a flow-insensitive, but field-sensitive points-to analysis using this representation. We have implemented this intermediate representation and points-to analysis in CRYSTAL, our program analysis infrastructure. We find core expression very useful in providing a convenient model for program analysis and a simple intermediate compiler representation for C expressions.

5 Figures and Tables

Cite this paper

@inproceedings{Orlovich2005CoreEA, title={Core Expressions: An Intermediate Representation for Expressions in C}, author={Maksim Orlovich}, year={2005} }