[all-commits] [llvm/llvm-project] e8b830: [NFC][Regalloc] Split canEvictInterference into hi...

Mircea Trofin via All-commits all-commits at lists.llvm.org
Mon Nov 29 16:04:20 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e8b8304d76ccefa9880bbb352d9f81f330ef1ea1
      https://github.com/llvm/llvm-project/commit/e8b8304d76ccefa9880bbb352d9f81f330ef1ea1
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2021-11-29 (Mon, 29 Nov 2021)

  Changed paths:
    M llvm/lib/CodeGen/RegAllocGreedy.cpp

  Log Message:
  -----------
  [NFC][Regalloc] Split canEvictInterference into hint and general

There are 2 eviction queries. One is made by tryAssign, when it attempts to
free an interference occupying the hint of the candidate. The other is
during 'regular' interference resolution, where we scan over all
physical registers and try to see if we can evict live ranges in favor
of the candidate. We currently use the same logic in both cases, just
that the former never passes the cost to any subsequent query.
Technically, the 2 decisions could be implemented with different
policies.

This patch splits the 2.

RFC: https://lists.llvm.org/pipermail/llvm-dev/2021-November/153639.html

Differential Revision: https://reviews.llvm.org/D114019




More information about the All-commits mailing list