• DocumentCode
    2235544
  • Title

    On the Complexity of Register Coalescing

  • Author

    Bouchez, Florent ; Darte, Alain ; Rastello, Fabrice

  • Author_Institution
    LIP, UMR CNRS, Lyon
  • fYear
    2007
  • fDate
    11-14 March 2007
  • Firstpage
    102
  • Lastpage
    114
  • Abstract
    Memory transfers are becoming more important to optimize, for both performance and power consumption. With this goal in mind, new register allocation schemes are developed, which revisit not only the spilling problem but also the coalescing problem. Indeed, a more aggressive strategy to avoid load/store instructions may increase the constraints to suppress (coalesce) move instructions. This paper is devoted to the complexity of the coalescing phase, in particular in the light of recent developments on the SSA form. We distinguish several optimizations that occur in coalescing heuristics: a) aggressive coalescing removes as many moves as possible, regardless of the colorability of the resulting interference graph; b) conservative coalescing removes as many moves as possible while keeping the colorability of the graph; c) incremental conservative coalescing removes one particular move while keeping the colorability of the graph; d) optimistic coalescing coalesces moves aggressively, then gives up about as few moves as possible so that the graph becomes colorable again. We almost completely classify the NP-completeness of these problems, discussing also on the structure of the interference graph: arbitrary, chordal, or k-colorable in a greedy fashion. We believe that such a study is a necessary step for designing new coalescing strategies
  • Keywords
    computational complexity; graph colouring; greedy algorithms; resource allocation; NP-completeness problems; aggressive coalescing; arbitrary; chordal; coalesce move instructions; coalescing problem; graph coloring; greedy fashion; incremental conservative coalescing; interference graph; k-colorable; load-store instructions; memory transfers; optimistic coalescing coalesces; power consumption; register allocation; register coalescing; Costs; Energy consumption; Frequency; Interference; Merging; Registers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Code Generation and Optimization, 2007. CGO '07. International Symposium on
  • Conference_Location
    San Jose, CA
  • Print_ISBN
    0-7695-2764-7
  • Type

    conf

  • DOI
    10.1109/CGO.2007.26
  • Filename
    4145108