Something like:
%a = type { [65536 x i8] }
store %a zeroinitializer, %a* undef
can generate an SDNode with more than USHRT_MAX results. In this
particular case, we will end up thinking we have zero values.
When it would come time to make an SDValue, we would assert because we
wouldn't think we had any values at all.
This fixes PR21513.
N.B. The smallest, most minimal test case I could write takes three
minutes on a very powerful machine.