[llvm] [SLP] Initial vectorization of non-power-of-2 ops. (PR #77790)

Alexey Bataev via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 30 13:26:49 PST 2024


================
@@ -6376,6 +6409,10 @@ unsigned BoUpSLP::canMapToVector(Type *T) const {
 bool BoUpSLP::canReuseExtract(ArrayRef<Value *> VL, Value *OpValue,
                               SmallVectorImpl<unsigned> &CurrentOrder,
                               bool ResizeAllowed) const {
+  // TODO: Reusing extracts is not supported yet for non-power-of-2 ops.
+  if (!isPowerOf2_32(VL.size()))
+    return false;
+
----------------
alexey-bataev wrote:

Can it be moved out of the function?

https://github.com/llvm/llvm-project/pull/77790


More information about the llvm-commits mailing list