[all-commits] [llvm/llvm-project] f4cf15: [RegAllocFast] Replace UsedInInstr with vector (#9...

Alexis Engelke via All-commits all-commits at lists.llvm.org
Fri Jun 21 10:35:51 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f4cf15d225fdaf98c106a4adfae57dae509607ff
      https://github.com/llvm/llvm-project/commit/f4cf15d225fdaf98c106a4adfae57dae509607ff
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-06-21 (Fri, 21 Jun 2024)

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

  Log Message:
  -----------
  [RegAllocFast] Replace UsedInInstr with vector (#96323)

A SparseSet adds an avoidable layer of indirection and possibly looping
control flow. Avoid this overhead by using a vector to store
UsedInInstrs and PhysRegUses.

To avoid clearing the vector after every instruction, use a
monotonically increasing counter. The two maps are now merged and the
lowest bit indicates whether the use is relevant for the livethrough
handling code only.



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