[X86][SSE] Add SimplifyDemandedBitsForTargetNode PMULDQ/PMULUDQ handling
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Wed, 24 Oct 2018 19:11:28 +0000 (19:11 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Wed, 24 Oct 2018 19:11:28 +0000 (19:11 +0000)
commitc5bb362b1328dbce6cba55452bce12eed8f72663
tree07981dae1d753db03f2ab5a133251b9458f21735
parent06570954e2cd955f3c7c246131ca350ade78d754
[X86][SSE] Add SimplifyDemandedBitsForTargetNode PMULDQ/PMULUDQ handling

Add X86 SimplifyDemandedBitsForTargetNode and use it to simplify PMULDQ/PMULUDQ target nodes.

This enables us to repeatedly simplify the node's arguments after the previous approach had to be reverted due to PR39398.

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

llvm-svn: 345182
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/lib/Target/X86/X86ISelLowering.h
llvm/test/CodeGen/X86/combine-pmuldq.ll
llvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll