Register allocation and instruction scheduling in Unison

Published: 01 Jan 2016, Last Modified: 10 Dec 2024CC 2016EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: This paper describes Unison, a simple, flexible, and potentially optimal software tool that performs register allocation and instruction scheduling in integration using combinatorial optimization. The tool can be used as an alternative or as a complement to traditional approaches, which are fast but complex and suboptimal. Unison is most suitable whenever high-quality code is required and longer compilation times can be tolerated (such as in embedded systems or library releases), or the targeted processors are so irregular that traditional compilers fail to generate satisfactory code.
Loading