[PATCH] D47246: [llvm-mca] Introduce the ExecuteStage (was originally the Scheduler class).
Matt Davis via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 8 14:50:38 PDT 2018
mattd updated this revision to Diff 150568.
mattd edited the summary of this revision.
mattd added a comment.
This is an updated patch that maintains the logic of the Scheduler, but decoupling the hardware component from the execution component.
The ExecuteStage drives the Scheduler and provides the notification functionality.
- Scheduler::cycleEvent is now ExecuteStage::preExecute
- Scheduler::scheduleInstruction is now ExecuteStage::execute
- Scheduler::canBeDispatched now returns a HWStallEvent (or NoStall) instead of a bool. We might want to rename this routine to something more appropriate, it makes more sense to name the routine something that does not imply a boolean return value. I left the name the same for this patch.
- The Backend pointer (Owner) in ExecuteStage will eventually go away once we register the listeners to the stages.
https://reviews.llvm.org/D47246
Files:
tools/llvm-mca/Backend.cpp
tools/llvm-mca/Backend.h
tools/llvm-mca/CMakeLists.txt
tools/llvm-mca/DispatchStage.cpp
tools/llvm-mca/DispatchStage.h
tools/llvm-mca/ExecuteStage.cpp
tools/llvm-mca/ExecuteStage.h
tools/llvm-mca/HWEventListener.h
tools/llvm-mca/Scheduler.cpp
tools/llvm-mca/Scheduler.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47246.150568.patch
Type: text/x-patch
Size: 29929 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180608/0d4f7670/attachment.bin>
More information about the llvm-commits
mailing list