For x86 target, vector types (both result and arguments) can be coerced
to scalars of the same size, e.g:
define zeroext i1 @_Z18convert_ulong4_rteDv4_t(<4 x i16> %x) ; becomes define zeroext i1 @_Z18convert_ulong4_rteDv4_t(i64 %x.coerced)
Such behavior is completely valid for x86, but the backend vectorizer
cannot work with scalars instead of vectors.
With this patch, argument and result types will be leaved unchanged in
the CodeGen.
New option fopencl-force-vector-abi is also added to force-disables
vector to scalar coercion when provided.
clang-format not found in user’s local PATH; not linting file.