Global Register Allocation

Register allocation is the process of mapping the unlimited number of symbolic registers assumed in the intermediate language into the limited real machine registers. Global register allocation deals with the allocation of registers in code containing branches (http://www.cs.ucr.edu/~gupta/research/Publications/Comp/p370-gupta.pdf).

Parameters

  • nn: number of live ranges (the number of candidates to reside in registers)

Filters

Computational Model

Randomization

Approximation

Algorithms Table

Displaying 6 of 6 algorithms

See more
Linear Scan, Poletto & Sarkar1999O(n)O(n)O(r)O(r)
Kong and Wilken Algorithm1998O(n3)O(n^3)Probably dependent on the choice of ILP solver
Optimal Register Allocation (ORA), Goodwin & Wilken Algorithm1996O(n3)O(n^3)Depends on the choice of 0-1 ILP solver
Demand-Driven Register Allocation1996O(n2)O(n^2)O(n2)O(n^2)
Chow's Algorithm1984O(n2)O(n^2)O(n2)O(n^2)
Chaitin's Algorithm1981O(n2)O(n^2)O(n2)O(n^2)

Reductions Table

Insuffient Data to display table

Other relevant algorithms

Insuffient Data to display table