Register allocation


compiler, algorithm
The phase of a compiler that determines which values will be placed in registers. Register allocation may be combined with register assignment.
This problem can be shown to be isomorphic to graph colouring by relating values to nodes in the graph and registers to colours. Values (nodes) which must be valid simultaneously are linked by edges and cannot be stored in the same register (coloured the same).
See also register dancing and register spilling.
[Preston Briggs, PhD thesis, Rice University, April 1992 “Register Allocation via Graph Coloring” (ftp://ftp.cs.rice.edu/public/preston/thesis.ps.gz)].
(2000-12-04)

Read Also:

  • Register assignment

    compiler, algorithm The phase of a compiler that determines which register to use for each program value selected during register allocation. (2000-12-04)

  • Register dancing

    Many older processor architectures suffer from a serious shortage of general-purpose registers. This is especially a problem for compiler-writers, because their generated code needs places to store temporaries for things like intermediate values in expression evaluation. Some designs with this problem, like the Intel 80×86, do have a handful of special-purpose registers that can be […]

  • Registered

    adjective 1. recorded, as in a register or book; enrolled. 2. Commerce. officially listing the owner’s name with the issuing corporation and suitably inscribing the certificate, as with bonds to evidence title. Abbreviation: r. 3. officially or legally certified by a government officer or board: a registered patent. 4. denoting cattle, horses, dogs, etc., having […]

  • Registered-bond

    noun 1. a bond recorded in the name of the owner.

  • Registered-dietitian

    noun 1. a person who has fulfilled all the educational and examination requirements of the American Dietetic Association for recognition as a qualified nutrition specialist.


Disclaimer: Register allocation definition / meaning should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional. All content on this website is for informational purposes only.