[PATCH] D106536: [LoopVectorize] Fix crash for predicated instruction with scalable VF

Caroline via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 22 03:46:44 PDT 2021


CarolineConcatto created this revision.
Herald added a subscriber: hiraditya.
CarolineConcatto requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

This patch avoids computing discounts for predicated instructions  when the
VF is scalable.
There is no support for vectorization of loops with division because the
vectorizer cannot guarantee that zero divisions will not happen.

This loop now does not use VF scalable

  for (long long i = 0; i < n; i++)
      if (cond[i])
        a[i] /= b[i];


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D106536

Files:
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/test/Transforms/LoopVectorize/AArch64/scalable-predicate-instruction.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106536.360757.patch
Type: text/x-patch
Size: 5049 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210722/eb9c4ed1/attachment.bin>


More information about the llvm-commits mailing list