this article, we present a technique for optimal (i.e., spill minimizing) register assignment to loops. First we present a technique for register assignment to architecture styles that are characterized by a consolidated register file. Then we extend the technique to include architecture styles that are characterized by distributed memories and/or a combination of general- and special-purpose registers. Experimental results demonstrate that although the optimal algorithm may be computationally prohibitive, heuristic versions obtain results with performance better than that of an existing graph coloring approach. Categories and Subject Descriptors: D.3.4 [Programming Languages]: Processors---compilers
In conventional compilation, register allocation—the mapping of program variables to the registers o...
Two of the most important phases of code generation for instruction level parallel processors are re...
International audienceIntegrating register allocation and software pipelining of loops is an active ...
This paper presents a new technique for the problem of allocating and assigning registers to variabl...
Loops are the main source of parallelism in applications. The issue of finding an optimal register a...
Loops are the main source of parallelism in applications. The issue of finding an optimal register a...
Multiple instruction issue processors place high demands on register file bandwidth. One solution to...
In conventional compilation, register allocation—the mapping of program variables to the registers o...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
International audienceWe presented during the last CPC workshop (2001) a new framework for doing an ...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
One of the major challenges in designing optimizing compilers, especially for scientific computation...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
International audienceWe presented during the last CPC workshop (2001) a new framework for doing an ...
In conventional compilation, register allocation—the mapping of program variables to the registers o...
Two of the most important phases of code generation for instruction level parallel processors are re...
International audienceIntegrating register allocation and software pipelining of loops is an active ...
This paper presents a new technique for the problem of allocating and assigning registers to variabl...
Loops are the main source of parallelism in applications. The issue of finding an optimal register a...
Loops are the main source of parallelism in applications. The issue of finding an optimal register a...
Multiple instruction issue processors place high demands on register file bandwidth. One solution to...
In conventional compilation, register allocation—the mapping of program variables to the registers o...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
International audienceWe presented during the last CPC workshop (2001) a new framework for doing an ...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
One of the major challenges in designing optimizing compilers, especially for scientific computation...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
International audienceThis paper solves an open problem regarding loop unrolling after periodic regi...
International audienceWe presented during the last CPC workshop (2001) a new framework for doing an ...
In conventional compilation, register allocation—the mapping of program variables to the registers o...
Two of the most important phases of code generation for instruction level parallel processors are re...
International audienceIntegrating register allocation and software pipelining of loops is an active ...