If the combined shuffle mask contains required zero elements, we don't currently have much chance of matching them against the expected source vector. This patch uses the SelectionDAG::MaskedVectorIsZero wrapper to attempt to determine if the element we want to use is already known to be zero.
This attempts to address some of the regressions uncovered by D129150 where we more aggressively fold shuffles as AND / 'clear' masks which results in more combined shuffles using SM_SentinelZero.
ExpectedIdx >= 0 ? I find Yoda style conditions to be a bit confusing.