[PATCH] D94056: [CodeGen] Update transformations to use poison for shufflevector/insertelem's initial vector elem

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 5 11:32:07 PST 2021


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

LGTM - other reviewers are probably more familiar with InterleavedAccess than me, so might want to wait for a 2nd opinion. 
I made another assert suggestion for that code. Similar to the assert that you have proposed in this patch, we could add the asserts before this patch just to make the shuffle assumptions clearer (assuming those are correct assertions).



================
Comment at: llvm/lib/CodeGen/InterleavedAccessPass.cpp:362
       return false;
 
     if (cast<Instruction>(Shuffle->getOperand(0))->getOperand(0) == LI)
----------------
Could we also assert here (and/or in the loop above this one) that:
  VecTy->getNumElements() < Shuffle->getShuffleMask().size() 
?

Ie, the shuffle is always reducing the number of elements from the input vector operands?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D94056



More information about the llvm-commits mailing list