When determining the new index for an insertelement, we may not assume that an
authorNick Lewycky <nicholas@mxc.ca>
Sat, 1 Jun 2013 20:51:31 +0000 (20:51 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Sat, 1 Jun 2013 20:51:31 +0000 (20:51 +0000)
commite4546cb71e14baa0cde8f85a12cfa8b2d44fe708
tree16c65db3f1487fe99a4fb6f91ad8b4880e231fec
parenta0b34d6c4ab05d0c04905e2aff0c9e6b879908ff
When determining the new index for an insertelement, we may not assume that an
index greater than the size of the vector is invalid. The shuffle may be
shrinking the size of the vector. Fixes a crash!

Also drop the maximum recursion depth of the safety check for this
optimization to five.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183080 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineVectorOps.cpp
test/Transforms/InstCombine/vec_shuffle.ll