z-logo
open-access-imgOpen Access
Transformation to Dynamic Single Assignment Using a Simple Data Flow Analysis
Author(s) -
Karolien Vanbroekhoven,
Gerda Janssens,
Maurice Bruynooghe,
Francky Catthoor
Publication year - 2005
Publication title -
lecture notes in computer science
Language(s) - English
Resource type - Book series
eISSN - 1611-3349
pISSN - 0302-9743
ISBN - 3-540-29735-9
DOI - 10.1007/11575467_22
Subject(s) - computer science , pointer (user interface) , program transformation , transformation (genetics) , data flow analysis , simple (philosophy) , program analysis , algorithm , pointer analysis , set (abstract data type) , data structure , construct (python library) , theoretical computer science , programming language , data flow diagram , static analysis , parallel computing , artificial intelligence , database , biochemistry , chemistry , philosophy , epistemology , gene
This paper presents a novel method to construct a dynamic single assignment (DSA) form of array-intensive, pointer-free C programs (or in any other procedural language). A program in DSA form does not perform any destructive update of scalars and array elements, i.e., each element is written at most once. As DSA makes the dependencies between variable references explicit, it facilitates complex analyses and optimizations of programs. Existing transformations into DSA perform a complex data flow analysis with exponential analysis time and work only for a limited set of input programs. Our method removes irregularities from the data flow by adding copy assignments to the program, and then it can use simple data flow analyses. The DSA transformation presented scales very well with growing program sizes and overcomes a number of important limitations of existing methods. We have implemented the method and it is being used in the context of memory optimization and verification of those optimizations.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom