Skip to content

Improve data dependencies handling

Created by: cargaji

JavaParser includes a symbol solver, which helps find the declaration (which includes typing). Coupled with the data-flow analysis, it should become a better generator for data dependencies than the current implementation, specially when the CFG becomes an ACFG and includes unconditional jumps or exceptions.

Resources to learn about data-flow analysis:

  • Course on compiler design from the ETHz. In slides there are a couple classes on data flow analysis. Code from the lab assignments of that course, implementing a visitor for an AST structure that computed the CFG and performed data flow analysis (HWB is the one that implemented it).
  • Another course from a different semester also has some slides that may be useful.
  • LPPL.zip (lenguajes de programación y procesadores de lenguajes), a course on compilers from the UPV. Not much is included on data-flow, but Apuntes/t10*.pdf includes a couple of pages (9-11) on it. Both sets of slides also include a passing mention (tema 10).
Edited by Carlos Galindo