• Media type: Report; Text; E-Book
  • Title: FIRM - A Graph-Based Intermediate Representation
  • Contributor: Braun, Matthias [Author]; Buchwald, Sebastian [Author]; Zwinkau, Andreas [Author]
  • imprint: Karlsruher Institut für Technologie, 2011-01-01
  • Language: English
  • DOI: https://doi.org/10.5445/IR/1000025470
  • ISSN: 2190-4782
  • Keywords: DATA processing & computer science
  • Origination:
  • Footnote: Diese Datenquelle enthält auch Bestandsnachweise, die nicht zu einem Volltext führen.
  • Description: We present our compiler intermediate representation Firm. Programs are always in SSA-form enabling a representation as graphs. We argue that this naturally encodes context information simplifying many analyses and optimizations. Instructions are connected by dependency edges relaxing the total to a partial order inside a basic block. For example alias analysis results can be directly encoded in the graph structure. The paper gives an overview of the representation and focuses on its construction. We present a simple construction algorithm which does not depend on dominance frontiers or a dominance tree. We prove that for reducible programs it produces a program in pruned and minimal SSA-form. The algorithm works incrementally so optimizations like copy propagation and constant folding can be performed on-the-fly during the construction.
  • Access State: Open Access