Even if the minimum number of elements is 1 and the length doesn't change,
we don't know what vscale is so we can't classify it as identity mask. Instead it
is a zero element splat.
For reverse, we shouldn't classify it as a reverse unless there are at least 2 elements
in the mask. This applies to both fixed and scalable vectors. For fixed vectors, a single
element would be an identity shuffle. For scalable vector it's a zero elt splat.
nit: not an issue with your patch, but reading this comment made me think that a splatvector actually adheres to the criteria listed here:
It should actually say "Return true if this shuffle chooses successive elements". Could you maybe update the wording as part of this patch?