[PATCH] D20507: CodeGen: Refactor renameDisconnectedComponents() as a pass

Matthias Braun via llvm-commits llvm-commits at lists.llvm.org
Fri May 20 20:08:48 PDT 2016


MatzeB created this revision.
MatzeB added a reviewer: qcolombet.
MatzeB added a subscriber: llvm-commits.
MatzeB set the repository for this revision to rL LLVM.
Herald added subscribers: mcrosier, MatzeB.

Refactor LiveIntervals::renameDisconnectedComponents() to be a pass.
Also change the name to "RenameIndependentSubregs":

- renameDisconnectedComponents() worked on a MachineFunction at a time
  so it is a natural candidate for an machine function pass.

- The algorithm is testable with a .mir test now.

- This also fixes a problem where the lazy renaming as part of the
  MachineScheduler introduced IMPLICIT_DEF instructions after the number
  of a nodes in a region were counted leading to a mismatch.

Repository:
  rL LLVM

http://reviews.llvm.org/D20507

Files:
  include/llvm/CodeGen/LiveInterval.h
  include/llvm/CodeGen/LiveIntervalAnalysis.h
  include/llvm/CodeGen/Passes.h
  include/llvm/InitializePasses.h
  lib/CodeGen/CMakeLists.txt
  lib/CodeGen/CodeGen.cpp
  lib/CodeGen/LiveInterval.cpp
  lib/CodeGen/LiveIntervalAnalysis.cpp
  lib/CodeGen/LiveRangeUtils.h
  lib/CodeGen/MachineScheduler.cpp
  lib/CodeGen/TargetPassConfig.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20507.58029.patch
Type: text/x-patch
Size: 21863 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160521/e82adad9/attachment.bin>


More information about the llvm-commits mailing list