Register Allocation via Hierarchical Graph Coloring

86Citations
Citations of this article
21Readers
Mendeley users who have this article in their library.

Abstract

We present a graph coloring register allocator designed to minimize the number of dynamic memory references. We cover the program with sets of blockscalled tiles and group these tiles into a tree reflecting the program's hierarchical control structure. Registers are allocated for each tile using standard graph coloring techniques and the local allocation and conflict information is passed around the tree in a two phase algorithm. This results in an allocation of registers that is sensitive to local usage patterns while retaining a global perspective. Spill code is placed in less frequently executed portions of the program and the choice of variables to spill is based on usage patterns between the spills and the reloads rather than usage patterns over the entire program. © 1991, ACM. All rights reserved.

Cite

CITATION STYLE

APA

Callahan, D., & Koblenz, B. (1991). Register Allocation via Hierarchical Graph Coloring. ACM SIGPLAN Notices, 26(6), 192–203. https://doi.org/10.1145/113446.113462

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free