[PATCH] D136251: [LoopVectorize] Use available masked vector functions when required

Graham Hunter via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 19 05:34:09 PDT 2022


huntergr created this revision.
huntergr added reviewers: reames, fhahn, david-arm.
Herald added subscribers: shiva0217, rogfer01, hiraditya.
Herald added a project: All.
huntergr requested review of this revision.
Herald added subscribers: llvm-commits, pcwang-thead, vkmr.
Herald added a project: LLVM.

This patch builds on D132458 <https://reviews.llvm.org/D132458> (use masked vector functions with a dummy mask when no unmasked variant is available) and D134422 <https://reviews.llvm.org/D134422> (scalarize function calls when masking is required), adding support for actually using the masked functions when masking is required, either due to the control flow in the scalar loop or because we're performing tail folding.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D136251

Files:
  llvm/include/llvm/Analysis/VectorUtils.h
  llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
  llvm/lib/Transforms/Vectorize/VPlan.h
  llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
  llvm/lib/Transforms/Vectorize/VPlanValue.h
  llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D136251.468880.patch
Type: text/x-patch
Size: 89476 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221019/481be429/attachment-0001.bin>


More information about the llvm-commits mailing list