[PATCH] D106569: [ARM] Distribute reductions based on ascending load offset

Sam Tebbs via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 27 09:19:19 PDT 2021


samtebbs accepted this revision.
samtebbs added a comment.
This revision is now accepted and ready to land.

Very nice idea and looks good to me other than an possible change I thought of.



================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:13159
+      if (IsVecReduce(N0.getOperand(0)) && IsVecReduce(N0.getOperand(1))) {
+        if (IsKnownLoadBefore(N0.getOperand(0).getOperand(0),
+                              N0.getOperand(1).getOperand(0))) {
----------------
Do you think there's a way to combine the checking if each operand is before the other one into a single call? Perhaps IsKnownLoadBefore could be renamed to something like GetFirstLoad, return true if one is before the other and take X and N0 as reference arguments? It might have a performance benefit over running the check twice but may be unnecessary. Your call.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D106569/new/

https://reviews.llvm.org/D106569



More information about the llvm-commits mailing list