mirror of
https://github.com/intel/llvm.git
synced 2026-01-20 01:58:44 +08:00
Clang extended vector types are mangled as follows:
'_ExtVector<' <lanes> ',' <scalar type> '>'
This is used to defetmine the builtins signature for builtins that
use parameters defined as
typedef <scalar type> ext_vector_type_<lanes>_<scalar type> __attribute__((ext_vector_type(<lanes>)))
or
template <unsigned N, class T>
using _ExtVector __attribute__((ext_vector_type(N))) = T;
For example:
typedef double ext_vector_type_4_double __attribute__((ext_vector_type(4)))