It is possible to eliminate redundant calls to the SVE ptrue intrinsic.
For example: suppose that we have two SVE ptrue intrinsic calls P1 and
P2. If P1 is at least as wide as P2, then P2 can be written as a
reinterpret P1 using the SVE reinterpret intrinsics.
Coalescing ptrues can result in fewer ptrue instructions in the codegen,
and is conducive to better analysis further down the line.
This commit introduces a new pass, aarch64-sve-coalesce-ptrues, which
removes redundant ptrue intrinsic calls, replacing them with
reinterprets of existing 'wider' ptrue intrinsic calls where possible.