Optimal bitwise register allocation using integer linear programming

  • Authors:
  • Rajkishore Barik;Christian Grothoff;Rahul Gupta;Vinayaka Pandit;Raghavendra Udupa

  • Affiliations:
  • IBM India Research Lab, Delhi;University of Denver, Colorado;IBM India Research Lab, Delhi;IBM India Research Lab, Delhi;IBM India Research Lab, Delhi

  • Venue:
  • LCPC'06 Proceedings of the 19th international conference on Languages and compilers for parallel computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper addresses the problem of optimal global register allocation. The register allocation problem is expressed as an integer linear programming problem and solved optimally. The model is more flexible than previous graph-coloring based methods and thus allows for register allocations with significantly fewer moves and spills. The formulation can also model complex architectural features, such as bit-wise access to registers. With bit-wise access to registers, multiple subword temporaries can be stored in a single register and accessed efficiently, resulting in a register allocation problem that cannot be addressed effectively with simple graph coloring. The paper describes techniques that can help reduce the problem size of the ILP formulation, making the algorithm feasible in practice. Preliminary empirical results from an implementation prototype are reported.