THE DESIGN AND IMPLEMENTATION OF RAP - A PDG-BASED REGISTER ALLOCATOR

Citation
C. Norris et Ll. Pollock, THE DESIGN AND IMPLEMENTATION OF RAP - A PDG-BASED REGISTER ALLOCATOR, Software, practice & experience, 28(4), 1998, pp. 401-424
Citations number
34
Categorie Soggetti
Computer Science Software Graphycs Programming","Computer Science Software Graphycs Programming
ISSN journal
00380644
Volume
28
Issue
4
Year of publication
1998
Pages
401 - 424
Database
ISI
SICI code
0038-0644(1998)28:4<401:TDAIOR>2.0.ZU;2-S
Abstract
This paper describes the design and implementation of a register alloc ator that performs the allocation over the Program Dependence Graph (P DG) representation of a routine. The PDG representation has been used successfully as the basis for various scalar optimizations, as well as for detecting and improving parallelization for vector machines, mult iple processor machines, and architectures that exhibit instruction le vel parallelism. Variations of the PDG have also been used for debuggi ng and integrating different versions of a program via program-slicing , and to enable translation of imperative programs for data-flow machi nes and demand-driven graph reducers. By basing register allocation on the PDG, the register allocation phase may be more easily integrated and intertwined with other optimization analyses and transformations. In addition, the advantages of a hierarchical approach to global regis ter allocation can be attained without constructing an additional stru cture used solely for register allocation. (C) 1998 John Whey & Sons, Ltd.