diff options
author | Sergei Larin <slarin@codeaurora.org> | 2012-09-14 15:07:59 +0000 |
---|---|---|
committer | Sergei Larin <slarin@codeaurora.org> | 2012-09-14 15:07:59 +0000 |
commit | c6a6660c6271d3309379ff439f66eb0e6ad48e3a (patch) | |
tree | d267f801d562c3d7b344e011759f5b912b4a3df8 /lib/Target/Hexagon/HexagonMachineScheduler.h | |
parent | c5252da873d547a19069eaf9030fec203f128f66 (diff) | |
download | external_llvm-c6a6660c6271d3309379ff439f66eb0e6ad48e3a.tar.gz external_llvm-c6a6660c6271d3309379ff439f66eb0e6ad48e3a.tar.bz2 external_llvm-c6a6660c6271d3309379ff439f66eb0e6ad48e3a.zip |
DAG post-process for Hexagon MI scheduler
This patch introduces a possibility for Hexagon MI scheduler
to perform some target specific post- processing on the scheduling
DAG prior to scheduling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163903 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Hexagon/HexagonMachineScheduler.h')
-rw-r--r-- | lib/Target/Hexagon/HexagonMachineScheduler.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Target/Hexagon/HexagonMachineScheduler.h b/lib/Target/Hexagon/HexagonMachineScheduler.h index 51829742ff..5b6f226a00 100644 --- a/lib/Target/Hexagon/HexagonMachineScheduler.h +++ b/lib/Target/Hexagon/HexagonMachineScheduler.h @@ -114,6 +114,8 @@ public: /// Schedule - This is called back from ScheduleDAGInstrs::Run() when it's /// time to do some work. virtual void schedule(); + /// Perform platform specific DAG postprocessing. + void postprocessDAG(); }; /// ConvergingVLIWScheduler shrinks the unscheduled zone using heuristics @@ -222,6 +224,11 @@ public: virtual void releaseBottomNode(SUnit *SU); + unsigned ReportPackets() { + return Top.ResourceModel->getTotalPackets() + + Bot.ResourceModel->getTotalPackets(); + } + protected: SUnit *pickNodeBidrectional(bool &IsTopNode); |