Optimal spilling for CISC machines with few registers

  title={Optimal spilling for CISC machines with few registers},
  author={Andrew W. Appel and L. George},
  booktitle={PLDI '01},
Many graph-coloring register-allocation algorithms don't work well for machines with few registers. Heuristics for live-range splitting are complex or suboptimal; heuristics for register assignment rarely factor the presence of fancy addressing modes; these problems are more severe the fewer registers there are to work with. We show how to optimally split live ranges and optimally use addressing modes, where the optimality condition measures dynamically weighted loads and stores but not… Expand
153 Citations
Register allocation for programs in SSA form
  • S. Hack
  • Mathematics, Computer Science
  • CC
  • 2006
  • 126
  • PDF
A faster optimal register allocator
  • Changqing Fu, K. Wilken
  • Computer Science
  • 35th Annual IEEE/ACM International Symposium on Microarchitecture, 2002. (MICRO-35). Proceedings.
  • 2002
  • 14
Graph-coloring and treescan register allocation using repairing
  • 10
  • PDF
Register Allocation Algorithms
  • 1
A progressive register allocator for irregular architectures
  • D. Koes, S. Goldstein
  • Computer Science
  • International Symposium on Code Generation and Optimization
  • 2005
  • 30
  • PDF
Copy elimination on data dependence graphs
  • Highly Influenced
Parallel copy motion
  • 8


Optimal and near-optimal global register allocations using 0–1 integer programming
  • 103
  • Highly Influential