[DAG] visitVECTOR_SHUFFLE - attempt to match commuted shuffles with MergeInnerShuffle.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Mon, 1 Mar 2021 10:41:57 +0000 (10:41 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Mon, 1 Mar 2021 10:42:11 +0000 (10:42 +0000)
commit9dd83f5ee8697fdb41ba73bc70d845085715b01d
tree7eedb0de9c52423c5604b003fce28467f74b54fc
parent00e6513374eb961065d6830b30205fb0f3001c43
[DAG] visitVECTOR_SHUFFLE - attempt to match commuted shuffles with MergeInnerShuffle.

Try to match "shuffle(C, shuffle(A, B, M0), M1) -> shuffle(A, B, M2)" etc. by using MergeInnerShuffle's commuted inner shuffle mode.
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/Thumb2/mve-shuffle.ll
llvm/test/CodeGen/Thumb2/mve-vld3.ll
llvm/test/CodeGen/X86/oddshuffles.ll
llvm/test/CodeGen/X86/pr34592.ll