This patch is in 2 parts (which would be committed separately):
1 - Add the SimplifyDemandedBitsForTargetNode callback to handle target nodes.
2 - 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.