[llvm] [LV] Support binary and unary operations with EVL-vectorization (PR #93854)
Kolya Panchenko via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 29 11:23:13 PDT 2024
================
@@ -1140,6 +1144,53 @@ void VPWidenRecipe::execute(VPTransformState &State) {
#endif
}
+void VPWidenEVLRecipe::execute(VPTransformState &State) {
+ assert(State.UF == 1 && "Expected only UF == 1 when vectorizing with "
----------------
nikolaypanchenko wrote:
It's only for EVL-vectorization, as for now it's easier not to handle multiple `get.vector.length`, where one or many could return `0`, thus following instructions will process 0 elements. Another worry I have is we will have to emit extra checks for zero EVL if instruction does ignore it, like RISC-V's `vmv.x.s` if it's generated within a loop
https://github.com/llvm/llvm-project/pull/93854
More information about the llvm-commits
mailing list