[PATCH] D125337: [riscv] Prefer to use previous VL for scalar move instructions

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 10 16:49:38 PDT 2022


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

I think the "Not simplify due to precision" was supposed to say "simply"?

LGTM. I like this a lot better.

Can this replace the scalar move handling that's still in VSETVLIInfo::isCompatible?



================
Comment at: llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp:1230
+
+      // For vmv.s.x and vfmv.s.f, there is only two behaviors, VL = 0 and
+      // VL > 0. We can discard the user requested AVL and just use the last
----------------
"there is" -> "there are"


================
Comment at: llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp:1232
+      // VL > 0. We can discard the user requested AVL and just use the last
+      // one if we can prove it equally zero.  This remove a setvli entirely
+      // if the types match or allows use of cheaper avl preserving variant
----------------
"remove" -> "removes"


================
Comment at: llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp:1256
+
+    // If this is something updates VL/VTYPE that we don't know about, set
+    // the state to unknown.
----------------
"something updates" -> "something that updates". I think that's a mistake where you copied this from too.


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

https://reviews.llvm.org/D125337



More information about the llvm-commits mailing list