[PATCH] D29125: [PPC] override the base implementatiosn of areLoadsFromSameBasePtr and shouldScheduleLoadsNear for PowerPC

Hal Finkel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 26 17:06:00 PST 2017


hfinkel added a comment.

Interesting; I didn't realize that our SDAG-based scheduling actually did anything at this point (i.e. we're just using source-order scheduling) - The MI scheduler is where the real action happens, and that has a different clustering API. You should look at TII->shouldClusterMemOps and the other things used by BaseMemOpClusterMutation in MachineScheduler.cpp. I think we should only implement these older interfaces if there's some fundamental advantage to doing so. Otherwise, I'd focus on what the MI scheduler uses.



================
Comment at: lib/Target/PowerPC/PPCInstrInfo.cpp:1941
+
+  if(IMemOp) {
+    MMO = *IMemOp;
----------------
Space after 'if' (and so on for other 'if', 'while', etc. below).


================
Comment at: lib/Target/PowerPC/PPCInstrInfo.cpp:2026
+  // Check that the loads are whithin a cacheline of each other.
+  if(Offset2 - Offset1 > 128)
+     return false;
----------------
We should synchronize this with PPCTTIImpl::getCacheLineSize().


Repository:
  rL LLVM

https://reviews.llvm.org/D29125





More information about the llvm-commits mailing list