DocumentCode :
2993673
Title :
Optimal register assignment to loops for embedded code generation
Author :
Kolson, David J. ; Nicolau, Alexandru ; Dutt, Nikil ; Kennedy, Ken
Author_Institution :
Dept. of Inf. & Comput. Sci., California Univ., Irvine, CA, USA
fYear :
1995
fDate :
13-15 Sep 1995
Firstpage :
42
Lastpage :
47
Abstract :
One of the challenging tasks in code generation for embedded systems is register assignment. When more live variables than registers exist, some variables are necessarily accessed from data memory. Because loops are typically executed many times and are often time-critical, good register assignment in loops is exceedingly important, since accessing data memory can degrade performance. The issue of finding an optimal register assignment to loops, one which minimizes the number of spills between registers and memory, has been open for some time. In this paper, we address this issue and present an optimal, but exponential, algorithm which assigns registers to loop bodies such that the resulting spill code is minimal. We also show that a heuristic modification performs as well as the exponential approach on typical loops from scientific code
Keywords :
optimisation; program control structures; real-time systems; storage allocation; data memory access; embedded code generation; exponential algorithm; heuristic modification; live variables; loops; minimal spill code; optimal register assignment; scientific code; Computer science; Distributed computing; Embedded system; Machinery; Registers; Time factors;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
System Synthesis, 1995., Proceedings of the Eighth International Symposium on
Conference_Location :
Cannes
ISSN :
1080-1820
Print_ISBN :
0-8186-7076-2
Type :
conf
DOI :
10.1109/ISSS.1995.520611
Filename :
520611
Link To Document :
بازگشت