Post-compaction register assignment in a retargetable compiler

Philip H. Sweany, Steven J. Beaty · 1990

We discuss graph-coloring register assignment in a retargetable compiler for Long-Instruction-Word architectures. Of specific concern is when, during the compilation process, should register assignment be performed. We conclude that, for best results, register assignment should follow compaction. We discuss methods of circumventing the implementation problems inherent in such late register assignment. 1 Introduction Higher-level languages permitting abstraction from lowlevel timing and concurrency details are a major step toward alleviating the problem of mapping complex applications onto complex architectures. However, this approach is useful only if compilers for these languages can produce high-quality code and can be reliably targeted to new machines with modest effort. The ROCKET compiler, a retargetable C compiler for Long-Instruction-Word (LIW) and pipelined architectures, strives to meet these criteria. A high-level language compiler must include mappings from programmer-defin...

Read the paper · More papers on PaperTik