Parallel Performance Project Research Paper

Research Paper

Register Allocation for Predicated Code
A. E. Eichenberger and E. S. Davidson
Proceedings of the 28th Annual International Symposium on Microarchitecture, pp 180-191, November 95.

Abstract

Current compilers for VLIW and superscalar machines increase the instruction level parallelism of an application by merging several basic blocks into an enlarged predicated block, resulting in higher performance code but increased register requirements. We present a framework that computes precisely the interferences among virtual registers in the presence of predicated operations. Graph-coloring based register allocators can directly use the resulting interference graph. For interval-graph based register allocators, and others, we propose a technique that reduces the register requirements by allowing non-interfering virtual registers that overlap in time to share a common virtual register. Preliminary measurements on a benchmark of loops from the Perfect Club, SPEC-89, and the Livermore Fortran Kernels indicate the effectiveness of this technique.
Back to Publication List, or Parallel Performance Project Home Page