[PATCH] D66688: [LoopVectorize] Leverage speculation safety to avoid masked.loads

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 30 16:51:25 PDT 2019


reames updated this revision to Diff 218190.
reames added a comment.

Actually ready for review now. I think I've covered all the cornercases and the structure of the code should be more reasonable.

I left in two todos about moving code.  As a matter of practicality, I'd prefer to land as is, then do NFC moves in a follow up.  Keeps the rebuild times much more manageable.

p.s. There was one comment in previous review about needing to handle the interleave case.  I'm interpreting that as a request for further optimization (i.e. broadened scope) and have left it for future work.  If it was actually a correctness concern, then please explain more.


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

https://reviews.llvm.org/D66688

Files:
  lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
  test/Transforms/LoopVectorize/X86/load-deref-pred.ll
  test/Transforms/LoopVectorize/hoist-loads.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66688.218190.patch
Type: text/x-patch
Size: 12344 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190830/e6399aea/attachment-0001.bin>


More information about the llvm-commits mailing list