[PATCH] D62938: [SLP] Forbid to vectorize bundles with same opcode but different IR flags

Dinar Temirbulatov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 5 18:57:36 PDT 2019


dtemirbulatov created this revision.
dtemirbulatov added reviewers: ABataev, RKSimon, Vasilis, spatel, anton-afanasyev.
Herald added a subscriber: javed.absar.

In D57779 <https://reviews.llvm.org/D57779>, We found that currently that SLP allows assembling bundles with the same operation but different IR flags, for example: "add nsw + add nuw nsw", which is not correct. This change fixes the issue. Also, we might want to use an alternative operation for such operations to unite, I plan to implement this ability in the following change.


https://reviews.llvm.org/D62938

Files:
  lib/Transforms/Vectorize/SLPVectorizer.cpp
  test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
  test/Transforms/SLPVectorizer/X86/pr35497.ll
  test/Transforms/SLPVectorizer/X86/propagate_ir_flags.ll
  test/Transforms/SLPVectorizer/X86/reorder_repeated_ops.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D62938.203274.patch
Type: text/x-patch
Size: 30485 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190606/ce732aaf/attachment.bin>


More information about the llvm-commits mailing list