[PATCH] D101076: [SVE][LoopVectorize] Add support for scalable vectorization of first-order recurrences

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 28 06:47:00 PDT 2021


fhahn added inline comments.


================
Comment at: llvm/lib/IR/IRBuilder.cpp:1047
+  if ((-Imm > NumElts) || (Imm >= NumElts)) {
+    return UndefValue::get(V1->getType());
+  }
----------------
Is this case actually used? Do we need to support this case, or can we assert that `Imm` always is valid? (might also be good to mention in the comment what values of `Imm` are supported).


================
Comment at: llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence.ll:1
+; RUN: opt -loop-vectorize -mtriple aarch64-unknown-linux-gnu -mattr=+sve -S < %s | FileCheck %s
+
----------------
Is there anything `AArch64` specific about the test? The VFs are all forced, so no cost-modeling should be needed, could this just use `-force-target-supports-scalable-vectors`?


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

https://reviews.llvm.org/D101076



More information about the llvm-commits mailing list