[TargetLowering] Add SimplifyDemandedVectorElts support to EXTEND opcodes
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 4 Dec 2018 10:41:06 +0000 (10:41 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Tue, 4 Dec 2018 10:41:06 +0000 (10:41 +0000)
commit666261cdc86612eef811a92802be476697a9b17b
tree98aea49c515b0375f848391fc52d1926b7ac45a1
parentd5bd3f6354294605ccdf868d1f3d0ff6913fdab6
[TargetLowering] Add SimplifyDemandedVectorElts support to EXTEND opcodes

Add support for ISD::*_EXTEND and ISD::*_EXTEND_VECTOR_INREG opcodes.

The extra broadcast in trunc-subvector.ll will be fixed in an upcoming patch.

llvm-svn: 348246
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
llvm/test/CodeGen/X86/trunc-subvector.ll
llvm/test/CodeGen/X86/vector-rotate-128.ll
llvm/test/CodeGen/X86/vector-rotate-256.ll
llvm/test/CodeGen/X86/vector-rotate-512.ll