[PATCH] D139656: [RISCV] Build single element vector for start of reduction change
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 8 12:15:35 PST 2022
craig.topper added a comment.
Some thoughts
What if we had a a second set of VMV_S_X pseudos with LMUL1 register class, but LMUL=1,2,4,8,etc. in TSFlags for the vsetvli insertion pass to see.
We'd need a second ISD node that takes LMUL as an operand since it can't use the type. Then isel could pick the pseudo with the correct LMUL in TSFlags.
We would match the LMUL to the input type of the reduction instead of using LMUL=1.
For non-VP reductions, the VL would be the fixed width or vlmax VL. For VP, we'd still need to deal with zero vs non-zero VL to have correct behavior.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D139656/new/
https://reviews.llvm.org/D139656
More information about the llvm-commits
mailing list