Interference graphs for procedures in static single information form are interval graphs

  • Authors:
  • Philip Brisk;Majid Sarrafzadeh

  • Affiliations:
  • Ecole Polytechnique Federale de Lausanne (EPFL), Lausanne, Switzerland;University of California Los Angeles, Los Angeles, CA

  • Venue:
  • SCOPES '07 Proceedingsof the 10th international workshop on Software & compilers for embedded systems
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Static Single Information (SSI) Form is a compiler intermediate representation that extends the more well-known Static Single Assignment (SSA) Form. In 2005, several research groups independently proved that interference graphs for procedures represented in SSA Form are chordal graphs. This paper performs a similar analysis concerning SSI Form, and proves that interference graphs are interval graphs. The primary consequences of this paper are threefold: (1) Linear scan register allocation for programs in SSI Form can be implemented in such a way that there are no lifetime holes, thereby sidestepping one of the drawbacks that plagued non-SSI implementations; (2) the k-colorable subgraph problem can be solved in polynomial-time for interval graphs, but remains NP-Complete for chordal graphs---to date, no register allocation algorithms have been implemented that solve the k-colorable subgraph problem directly; and (3) liveness analysis converges after a single iteration for programs represented in SSI Form.