[PATCH] D127966: [LV] Move LoopVersioning creation to LVP::execute.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 27 03:15:28 PDT 2022


fhahn updated this revision to Diff 440147.
fhahn added a comment.

Add extra check if there are any runtime checks before creating LoopVersioning, move code up.

In D127966#3611068 <https://reviews.llvm.org/D127966#3611068>, @Ayal wrote:

> Curious if current lack of proper noalias metadata of an epilogue vector loop may result in missed optimization or potentially wrong code?

The lack of noalias metadata currently leads to potentially missing optimizations later on. The noalias properties must hold for the epilogue loop, otherwise the vectorization decisions may be incorrect. Missing metadata should never impact correctness, as LLVM optimizations are free to drop it.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D127966

Files:
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D127966.440147.patch
Type: text/x-patch
Size: 13537 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220627/30ab178c/attachment.bin>


More information about the llvm-commits mailing list