[all-commits] [llvm/llvm-project] d4b8b7: [CodeGen][MachineLICM] Use RegUnits in HoistRegion...

Pierre van Houtryve via All-commits all-commits at lists.llvm.org
Tue Jun 11 05:27:56 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d4b8b7217f31827f8536c9340b55ecb21e540621
      https://github.com/llvm/llvm-project/commit/d4b8b7217f31827f8536c9340b55ecb21e540621
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-06-11 (Tue, 11 Jun 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll

  Log Message:
  -----------
  [CodeGen][MachineLICM] Use RegUnits in HoistRegionPostRA (#94608)

Those BitVectors get expensive on targets like AMDGPU with thousands of
registers, and RegAliasIterator is also expensive.

We can move all liveness calculations to use RegUnits instead to speed
it up for targets where RegAliasIterator is expensive, like AMDGPU.
On targets where RegAliasIterator is cheap, this alternative can be a little more expensive, but I believe the tradeoff is worth it.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list