Allocating register halves independently
AssigneeInternational Business Machines Corporation
InventorsDavid P. Bélanger, Christopher A. Lapkowski, Chwan-Hang Lee
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsDavid P. Bélanger, Christopher A. Lapkowski, Chwan-Hang Lee
Estimating the term…
Register halves are allocated independently when performing register allocation during program compilation, thereby effectively doubling the number of registers which are available for allocation, which in turn may reduce spill code and improve run-time performance. When hardware registers are 64 bits wide, for example, an architecture supporting the present invention provides some number of separate hardware instructions that operate on the 32-bit high-word and/or the 32-bit low word of the hardware registers as if those 32-bit words are separate registers. Such hardware instructions are able to manipulate the register halves independently, leaving the other register half untouched. A register coloring algorithm using in the compilation process is invoked using the number of register halves, instead of the number of hardware registers.
A computer-implemented method of allocating registers in a computing system during compilation, comprising:
A system for allocating registers in a computing system during compilation, comprising:
A computer program product for allocating registers in a computing system during compilation, the computer program product comprising:
Dependencies are inferred from the claim text.