Efficient register allocation for large basic blocks

  • C. W. Keßler
  • T. Rauber
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 714)


We consider the NP-complete problem of generating evaluations for expression DAGs with a minimal number of registers. We restrict our attention to contiguous evaluations, because for nearly all of the DAGs derived from real application programs there exists a contiguous evaluation that is optimal w.r. to the register need. We present an algorithm that generates an optimal contiguous evaluation for a given DAG. The algorithm is very fast on the average. It generates the evaluation by splitting the DAG in trees with import and export nodes and applying a labeling scheme to the trees.


  1. [1]
    Keßler, C.W., Paul, W.J., Rauber, T.: A Randomized Heuristic Approach to Register Allocation. Proceedings of PLILP'91, Springer LNCS Vol. 528, 195–206.Google Scholar
  2. [2]
    Keßler, C.W., Paul, W.J., Rauber, T.: Scheduling Vector Straight Line Code on Vector Processors. in: R. Giegerich, S.L. Graham (Ed.): Code Generation-Concepts, Tools, Techniques. Springer Workshops in Computing Series (WICS), 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • C. W. Keßler
    • 1
  • T. Rauber
    • 1
  1. 1.Computer Science DepartmentUniversity of SaarbrückenSaarbrückenGermany

Personalised recommendations