[DAGCombiner] Remove extra bitcasts surrounding vector shuffles
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 23 Apr 2015 08:43:13 +0000 (08:43 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 23 Apr 2015 08:43:13 +0000 (08:43 +0000)
commit86b034bae920c179ad184ca39145ce33d445f739
treeaab0e8c11bf888ce966c416024e708db67c3c8ca
parent24e6cc2de4603bda679868d2baa2c472c1540719
[DAGCombiner] Remove extra bitcasts surrounding vector shuffles

Patch to remove extra bitcasts from shuffles, this is often a legacy of XformToShuffleWithZero being used to combine bitmaskings (of float vectors bitcast to integer vectors) into shuffles: bitcast(shuffle(bitcast(s0),bitcast(s1))) -> shuffle(s0,s1)

Differential Revision: http://reviews.llvm.org/D9097

llvm-svn: 235578
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/X86/combine-or.ll