• DocumentCode
    2705302
  • Title

    A register allocation algorithm

  • Author

    Subha, S.

  • Author_Institution
    Sch. of Inf. Technol. & Eng., Vellore Inst. of Technol., Vellore, India
  • fYear
    2010
  • fDate
    20-22 May 2010
  • Firstpage
    1
  • Lastpage
    3
  • Abstract
    This paper proposes a global register allocation algorithm that makes decisions on register allocation based on the cost of spilling variables in linear scan allocation. The algorithm assumes registers are initially allocated based on linear scan algorithm. When there is a need to spill variables, either the allocated or the new variable is spilled based on the cost incurred in allocation. The cost is calculated as a function of number of definitions and uses of a variable for the rest of its live range. The variable with minimum number of uses that gives optimal cost is replaced. A mathematical model for determining the cost is proposed which decides register allocation. Given the live ranges of the variables the time complexity of the algorithm is derived. Simulations on an arbitrary program showed an improvement when compared to linear scan algorithm.
  • Keywords
    decision making; optimising compilers; programming languages; linear scan allocation; mathematical model; optimal cost; register allocation algorithm; spilling variables; Complexity theory; Computer languages; Information technology; Inspection; Mathematical model; Registers; Resource management; linear scan; live range determination;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Electro/Information Technology (EIT), 2010 IEEE International Conference on
  • Conference_Location
    Normal, IL
  • ISSN
    2154-0357
  • Print_ISBN
    978-1-4244-6873-7
  • Type

    conf

  • DOI
    10.1109/EIT.2010.5612127
  • Filename
    5612127