[X86][SSE] Simplified blend-with-zero combining
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 17 Mar 2016 15:59:36 +0000 (15:59 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 17 Mar 2016 15:59:36 +0000 (15:59 +0000)
commit0f37fbac51743051a5bc739778fc92da05efdc70
tree7ec2d4bb63f016e8f052cd12ce81a0781e542e18
parent9e23fedaf0f84d4a020514df4beefe65fe6da50b
[X86][SSE] Simplified blend-with-zero combining

We were being too aggressive in trying to combine a shuffle into a blend-with-zero pattern, often resulting in a endless loop of contrasting combines

This patch stops the combine if we already have a blend in place (means we miss some domain corrections)

llvm-svn: 263717
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/merge-consecutive-loads-256.ll
llvm/test/CodeGen/X86/vector-shuffle-combining.ll
llvm/test/CodeGen/X86/vector-zext.ll