DocumentCode
2533312
Title
Register allocation for predicated code
Author
Eichenberger, Alexandre E. ; Davidson, Edward S.
Author_Institution
Dept. of Electr. Eng. & Comput. Sci., Michigan Univ., Ann Arbor, MI, USA
fYear
1995
fDate
29 Nov-1 Dec 1995
Firstpage
180
Lastpage
191
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 biased 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
Keywords
instruction sets; merging; parallel architectures; program compilers; resource allocation; Livermore Fortran Kernels; Perfect Club; SPEC-89; VLIW machines; compilers; graph-coloring biased register allocators; instruction level parallelism; predicated block; predicated code; register allocation; register requirements; superscalar machines; virtual registers; Application software; Computer architecture; Interference; Kernel; Laboratories; Merging; Parallel processing; Pipeline processing; Registers; VLIW;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 1995., Proceedings of the 28th Annual International Symposium on
Conference_Location
Ann Arbor, MI
ISSN
1072-4451
Print_ISBN
0-8186-7349-4
Type
conf
DOI
10.1109/MICRO.1995.476825
Filename
476825
Link To Document