Renato Golin via llvm-dev
2016-Dec-12 14:32 UTC
[llvm-dev] [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
)On 12 December 2016 at 13:44, Francesco Petrogalli <Francesco.Petrogalli at arm.com> wrote:> I am using “D” for 64-bit NEON and “Q” for 128-bit NEON, which makes NEON > vector symbols look as follows: > > _ZVGQN2v__Z1fd > _ZVGDN2v__Z1ff > _ZVGQN4v__Z1ffHi Francesco, The ARM AAPCS (A.2.1) says: "For C++ the mangled name for parameters is as though the equivalent type name was used." Clang is already able to mangle NEON vectors of any length (CXXNameMangler::mangleNeonVectorType), you should use that, as this is very likely to be compatible with other compilers as well. cheers, --renato
Francesco Petrogalli via llvm-dev
2016-Dec-12 15:59 UTC
[llvm-dev] [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
On 12/12/2016 14:32, "Renato Golin" <renato.golin at linaro.org> wrote:>Clang is already able to mangle NEON vectors of any length >(CXXNameMangler::mangleNeonVectorType), you should use that, as this >is very likely to be compatible with other compilers as well.Hi Renato, The “u”, “v”, “l” mangling of parameters has already been agreed internally at ARM with the gcc team, and as Xinmin has pointed out, this is going to guarantee compatibility with GCC. Thanks, Francesco
Renato Golin via llvm-dev
2016-Dec-12 16:03 UTC
[llvm-dev] [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
On 12 December 2016 at 15:59, Francesco Petrogalli <Francesco.Petrogalli at arm.com> wrote:> The “u”, “v”, “l” mangling of parameters has already been agreed > internally at ARM with the gcc team, and as Xinmin has pointed out, this > is going to guarantee compatibility with GCC.Ah, right. Sounds good, then. cheers, --renato
Reasonably Related Threads
- [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
- [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
- [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
- [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer
- [RFC] Enable "#pragma omp declare simd" in the LoopVectorizer