[PATCH] D76584: Split LiveRangeCalc in LiveRangeCalc/LiveIntervalCalc. NFC

Marcello Maggioni via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 22 20:56:56 PDT 2020


kariddi created this revision.
Herald added subscribers: llvm-commits, hiraditya, mgorny, qcolombet, MatzeB.
Herald added a project: LLVM.
kariddi added reviewers: qcolombet, MatzeB, arsenm, rtereshin.
Herald added a subscriber: wdng.

Refactor LiveRangeCalc such that it is now split into two classes

The objective is to split all the "register specific" logic away
from LiveRangeCalc.
The two new classes created are:

- LiveRangeCalc - is meant as a generic class to compute and modify live ranges in a generic way. This class should deal only with SlotIndices and VNInfo objects.

- LiveIntervalCals - is meant to be equivalent to the old LiveRangeCalc. It computes the liveness virtual registers tracked by a LiveInterval object.

With this refactoring LiveRangeCalc can be used to implement tracking of
liveness of LiveRanges that represent other things than just registers.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D76584

Files:
  llvm/include/llvm/CodeGen/LiveIntervalCalc.h
  llvm/include/llvm/CodeGen/LiveIntervals.h
  llvm/include/llvm/CodeGen/LiveRangeCalc.h
  llvm/lib/CodeGen/CMakeLists.txt
  llvm/lib/CodeGen/InlineSpiller.cpp
  llvm/lib/CodeGen/LiveIntervalCalc.cpp
  llvm/lib/CodeGen/LiveIntervals.cpp
  llvm/lib/CodeGen/LiveRangeCalc.cpp
  llvm/lib/CodeGen/MachineVerifier.cpp
  llvm/lib/CodeGen/SplitKit.cpp
  llvm/lib/CodeGen/SplitKit.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76584.251940.patch
Type: text/x-patch
Size: 39059 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200323/700c3901/attachment.bin>


More information about the llvm-commits mailing list