At the moment, SME-to-LLVM lowerings relies entirely on
LLVMTypeConverter. This patch introduces a dedicated TypeConverter
that inherits from LLVMTypeConverter (it will also be used when
lowering ArmSME Ops to LLVM).
The new type converter merely disables lowerings for VectorType to
prevent 2-d scalable vectors (common in the context of ArmSME), e.g.
`vector<[16]x[16]xi8>`,
entering the LLVM Type converter. LLVM does not support arrays of
scalable vectors and hence the need for specialisation. In the case of
SME such types are effectively eliminated when emitting LLVM IR
intrinsics for SME.
Depends on D154867
sort