Skip to content
  • Jakob Stoklund Olesen's avatar
    Prefer cheap registers for busy live ranges. · 0e34c1df
    Jakob Stoklund Olesen authored
    On the x86-64 and thumb2 targets, some registers are more expensive to encode
    than others in the same register class.
    
    Add a CostPerUse field to the TableGen register description, and make it
    available from TRI->getCostPerUse. This represents the cost of a REX prefix or a
    32-bit instruction encoding required by choosing a high register.
    
    Teach the greedy register allocator to prefer cheap registers for busy live
    ranges (as indicated by spill weight).
    
    llvm-svn: 129864
    0e34c1df
Loading