[LSV] Vectorize up to side-effecting instructions.
authorJustin Lebar <jlebar@google.com>
Wed, 20 Jul 2016 20:07:34 +0000 (20:07 +0000)
committerJustin Lebar <jlebar@google.com>
Wed, 20 Jul 2016 20:07:34 +0000 (20:07 +0000)
commit62b03e344eeb168d0ac87a442275b28d3e95016a
tree9942e7ce6f56e61a8078f2d7f81ae5d94566f264
parent400ae40348096d6f3fb22a4c9df38be0de7d2af2
[LSV] Vectorize up to side-effecting instructions.

Summary:
Previously if we had a chain that contained a side-effecting
instruction, we wouldn't vectorize it at all.  Now we'll vectorize
everything that comes before the side-effecting instruction.

Reviewers: asbirlea

Subscribers: arsenm, jholewinski, llvm-commits, mzolotukhin

Differential Revision: https://reviews.llvm.org/D22536

llvm-svn: 276170
llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
llvm/test/Transforms/LoadStoreVectorizer/NVPTX/lit.local.cfg [new file with mode: 0644]
llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll [new file with mode: 0644]