[PATCH] D22194: Power9 - Add exploitation of oris/ori fusion
Ehsan Amiri via llvm-commits
llvm-commits at lists.llvm.org
Sat Jul 16 18:09:22 PDT 2016
amehsan added inline comments.
================
Comment at: lib/CodeGen/PostRASchedulerList.cpp:606-612
@@ +605,9 @@
+
+ while (!AvailableQueue.empty()) {
+ SUnit *CurSUnit = AvailableQueue.pop();
+
+ ScheduleHazardRecognizer::HazardType HT =
+ HazardRec->getHazardType(CurSUnit, 0/*no stalls*/);
+ if (HT == ScheduleHazardRecognizer::NoHazard) {
+ if (HazardRec->ShouldPreferAnother(CurSUnit)) {
+ if (!NotPreferredSUnit) {
----------------
Somewhere in this loop, you have to find a way to prioritize the cluster node. One potential way to do it (and there might be better ways) is to check if the last scheduled node has a cluster outgoing edge. If yes, continue your search in the queue until you reach that node.
https://reviews.llvm.org/D22194
More information about the llvm-commits
mailing list