[PATCH] D106601: [RISCV] Teach vsetvli insertion pass that it doesn't need to insert vsetvli for unit-stride or strided loads/stores in some cases.

Roger Ferrer Ibanez via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 11 23:18:20 PDT 2021


rogfer01 added inline comments.


================
Comment at: llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp:752
         // we need to insert a VSETVLI.
-        if (needVSETVLI(NewInfo, BBInfo.Change))
+        // If this is a unit-stride store, we may be able to use the
+        // EMUL=(EEW/SEW)*LMUL relationship to avoid changing vtype.
----------------
I think this comment block may need updating `store` → `load/store`.


================
Comment at: llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp:908
         // we need to insert a VSETVLI.
-        if (needVSETVLI(NewInfo, CurInfo)) {
+        // If this is a unit-stride store, we may be able to use the
+        // EMUL=(EEW/SEW)*LMUL relationship to avoid changing vtype.
----------------
Ditto.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D106601



More information about the llvm-commits mailing list