LoopVectorize: Don't store a reversed value in the vectorized value map
authorArnold Schwaighofer <aschwaighofer@apple.com>
Thu, 27 Jun 2013 00:45:41 +0000 (00:45 +0000)
committerArnold Schwaighofer <aschwaighofer@apple.com>
Thu, 27 Jun 2013 00:45:41 +0000 (00:45 +0000)
commitccd6c9929b6eb49bca923abd15c9eb8eb36df642
treea23b00181ffc31d211b4368d81bc34d283d5b855
parent3eacb58dc0791e38f1b87b891faf7e255a5988c2
LoopVectorize: Don't store a reversed value in the vectorized value map

When we store values for reversed induction stores we must not store the
reversed value in the vectorized value map. Another instruction might use this
value.

This fixes 3 test cases of PR16455.

llvm-svn: 185051
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
llvm/test/Transforms/LoopVectorize/store-shuffle-bug.ll [new file with mode: 0644]