Skip to content
  • Jakob Stoklund Olesen's avatar
    Simplify the eviction policy by making the failsafe explicit. · 73e18b7a
    Jakob Stoklund Olesen authored
    When assigned ranges are evicted, they are put in the RS_Evicted stage and are
    not allowed to evict anything else. That prevents looping automatically.
    
    When evicting ranges just to get a cheaper register, use only spill weights to
    find the possible candidates. Avoid breaking hints for this purpose, it is not
    worth it.
    
    Start implementing more complex eviction heuristics, guarded by the temporary
    -complex-eviction flag. The initial version permits a heavier range to be
    evicted if it doesn't have any uses where the evicting range is live. This makes
    it a good candidate for live ranfge splitting.
    
    llvm-svn: 132358
    73e18b7a
Loading