A shuffle of v256i1 with a large enough minimum vlen might make it through type
legalization and into lowering. In this case, zvl1024b was enough. The
bitreverse shuffle lowering would then try to convert this to a v1i256 type
which is invalid (v1i128 exists though, which is why the existing v128i1 tests
were fine).
This patch checks to make sure that the new type is not only legal but also
valid.
Can we use EVT ViaVT = EVT::getVectorVT(*DAG.getContext(), EVT::getIntegerVT(*DAG.getContext(), ViaEltSize), 1); so we're not trying to create non-existent MVTs?