[PATCH] D120492: [SLP]Improve bottom-to-top reordering.

Alexey Bataev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 24 08:31:27 PST 2022


ABataev created this revision.
ABataev added reviewers: RKSimon, anton-afanasyev, dtemirbulatov, vporpo.
Herald added a subscriber: hiraditya.
ABataev requested review of this revision.
Herald added a project: LLVM.

Currently bottom-to-top reordering analysis counts orders of the
operands and then adds natural order counts for the operand users. It is
very conservative, this the user nodes themselves may require
reordering. Patch improves bottom-to-top analysis by checking for the
user nodes if they require/allows the reordring. If the user node must
be reordered, has reused scalars, is an alternate op vectorization node,
is a non-ordered gather node or may allow reordering because of the
reordered operands, such node is considered as the node that allows
reodring and is not counted as a node with the natural order.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D120492

Files:
  llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
  llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
  llvm/test/Transforms/SLPVectorizer/X86/reordered-top-scalars.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D120492.411143.patch
Type: text/x-patch
Size: 10676 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220224/a18f40a3/attachment.bin>


More information about the llvm-commits mailing list