[PATCH] D135174: [SLP]Redesign vectorization of the gather nodes.

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 4 08:22:03 PDT 2022


RKSimon accepted this revision.
RKSimon added a comment.
This revision is now accepted and ready to land.

LGTM with one minor - cheers



================
Comment at: llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp:8273
+          if (I != Pos)
+            Gathered[I] = PoisonValue::get(Gathered[I]->getType());
+        });
----------------
ABataev wrote:
> RKSimon wrote:
> > Please can you explain what this poisonvalue is for and why we don't need freeze for it.
> It is to build the the shuffle with the poison only. On line 8271 the corresponding shuffle position is set to the non-poisoned element from the buildvector. The freeze is not required because we already checked that the scalar in Pos position is non-poisoned.
OK - please add a comment explaining that.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D135174



More information about the llvm-commits mailing list