Venugopal, R and Srikant, YN (1995) Scheduling expression trees with reusable registers on delayed-load architectures. In: Computer Languages, 21 (1). pp. 49-65.
SCHEDULING_EXPRESSION.pdf - Published Version
Restricted to Registered users only
Download (1510Kb) | Request a copy
In this paper, we look at the problem of scheduling expression trees with reusable registers on delayed load architectures. Reusable registers come into the picture when the compiler has a data-flow analyzer which is able to estimate the extent of use of the registers. Earlier work considered the same problem without allowing for register variables. Subsequently, Venugopal considered non-reusable registers in the tree. We further extend these efforts to consider a much more general form of the tree. We describe an approximate algorithm for the problem. We formally prove that the code schedule produced by this algorithm will, in the worst case, generate one interlock and use just one more register than that used by the optimal schedule. Spilling is minimized. The approximate algorithm is simple and has linear complexity.
|Item Type:||Journal Article|
|Additional Information:||Copyright of this article belongs to Elsevier Science.|
|Keywords:||Delayed-load architectures;RISCs;expression trees; instruction scheduling|
|Department/Centre:||Division of Electrical Sciences > Computer Science & Automation (Formerly, School of Automation)|
|Date Deposited:||27 May 2011 06:07|
|Last Modified:||08 Jul 2011 08:06|
Actions (login required)