OSDN Git Service

[InstCombine] shrink truncated splat shuffle
authorSanjay Patel <spatel@rotateright.com>
Tue, 7 Mar 2017 16:10:36 +0000 (16:10 +0000)
committerSanjay Patel <spatel@rotateright.com>
Tue, 7 Mar 2017 16:10:36 +0000 (16:10 +0000)
commit8b2302f3d11be5cf951261612f3c74ef8d5c9cd1
tree3a1b8bff7d3c6ecf765199b0239725fb8608ec0d
parent6a2cb8131e5213224b2ecfc0dc6649a945319e4c
[InstCombine] shrink truncated splat shuffle

This is one part of solving a recent bug report:
http://lists.llvm.org/pipermail/llvm-dev/2017-February/110293.html

This keeps with our general approach: changing arbitrary shuffles is off-limts,
but changing splat is ok. The transform is very similar to the existing
shrinkBitwiseLogic() canonicalization.

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

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