Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Extensible intraprocedural flow analysis at the abstract syntax tree level

Söderberg, Emma LU orcid ; Ekman, Torbjörn LU ; Hedin, Görel LU orcid and Magnusson, Eva LU (2013) In Science of Computer Programming 78(10). p.1809-1827
Abstract
We have developed a new approach for implementing precise intraprocedural control-flow and dataflow analyses at the abstract syntax tree level. Our approach is declarative, making use of reference attribute grammars augmented with circular attributes and collection attributes. This results in concise executable specifications of the analyses, allowing extensions both to the language and with further source code analyses.



To evaluate the new approach, we have implemented control flow, dataflow and dead assignment analyses for Java, by extending the JastAdd Extensible Java Compiler. We have compared our results to several well-known analysis frameworks and tools, using a set of Java programs as benchmarks. These results... (More)
We have developed a new approach for implementing precise intraprocedural control-flow and dataflow analyses at the abstract syntax tree level. Our approach is declarative, making use of reference attribute grammars augmented with circular attributes and collection attributes. This results in concise executable specifications of the analyses, allowing extensions both to the language and with further source code analyses.



To evaluate the new approach, we have implemented control flow, dataflow and dead assignment analyses for Java, by extending the JastAdd Extensible Java Compiler. We have compared our results to several well-known analysis frameworks and tools, using a set of Java programs as benchmarks. These results show that our approach performs well concerning both efficiency and preciseness. (Less)
Please use this url to cite or link to this publication:
author
; ; and
organization
publishing date
type
Contribution to journal
publication status
published
subject
in
Science of Computer Programming
volume
78
issue
10
pages
1809 - 1827
publisher
Elsevier
external identifiers
  • wos:000323086300004
  • scopus:84880259206
ISSN
0167-6423
DOI
10.1016/j.scico.2012.02.002
project
ELLIIT LU P05: Scalable Language Tools for Cyber-Physical Systems
language
English
LU publication?
yes
id
5e28953f-aebc-4903-879a-cd62635f918a (old id 3882568)
date added to LUP
2016-04-01 13:19:55
date last changed
2022-05-07 08:40:02
@article{5e28953f-aebc-4903-879a-cd62635f918a,
  abstract     = {{We have developed a new approach for implementing precise intraprocedural control-flow and dataflow analyses at the abstract syntax tree level. Our approach is declarative, making use of reference attribute grammars augmented with circular attributes and collection attributes. This results in concise executable specifications of the analyses, allowing extensions both to the language and with further source code analyses.<br/><br>
<br/><br>
To evaluate the new approach, we have implemented control flow, dataflow and dead assignment analyses for Java, by extending the JastAdd Extensible Java Compiler. We have compared our results to several well-known analysis frameworks and tools, using a set of Java programs as benchmarks. These results show that our approach performs well concerning both efficiency and preciseness.}},
  author       = {{Söderberg, Emma and Ekman, Torbjörn and Hedin, Görel and Magnusson, Eva}},
  issn         = {{0167-6423}},
  language     = {{eng}},
  number       = {{10}},
  pages        = {{1809--1827}},
  publisher    = {{Elsevier}},
  series       = {{Science of Computer Programming}},
  title        = {{Extensible intraprocedural flow analysis at the abstract syntax tree level}},
  url          = {{http://dx.doi.org/10.1016/j.scico.2012.02.002}},
  doi          = {{10.1016/j.scico.2012.02.002}},
  volume       = {{78}},
  year         = {{2013}},
}