[PATCH] D67006: [MachinePipeliner] Separate schedule emission, NFC

James Molloy via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 30 07:24:46 PDT 2019


jmolloy created this revision.
jmolloy added reviewers: ThomasRaoux, majnemer, bcahoon.
Herald added subscribers: llvm-commits, jsji, jfb.
Herald added a project: LLVM.

This is the first stage in refactoring the pipeliner and making it more
accessible for backends to override and control. This separates the logic and
state required to *emit* a scheudule from the logic that *computes* and
validates a schedule.

This will enable (a) new schedule emitters and (b) new modulo scheduling
implementations to coexist.

NFC. Most of the code in ModuloSchedule.cpp is moved over from MachinePipeliner.cpp. This code is very complex and so I will not be touching this code in this review any more than necessary to keep this review NFC.


Repository:
  rL LLVM

https://reviews.llvm.org/D67006

Files:
  include/llvm/CodeGen/MachinePipeliner.h
  include/llvm/CodeGen/ModuloSchedule.h
  lib/CodeGen/MachinePipeliner.cpp
  lib/CodeGen/ModuloSchedule.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67006.218099.patch
Type: text/x-patch
Size: 120810 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190830/35706cc6/attachment-0001.bin>


More information about the llvm-commits mailing list