[llvm-dev] Suggestions on code generation for SIMD

serge guelton via llvm-dev llvm-dev at lists.llvm.org
Tue Jan 9 00:39:27 PST 2018

>     The vast majority of the time people will rely on source level pragmas [1],
>     LLVM IR is designed to be machine friendly, not something intended for
>     users to manually edit themselves. You can do it, but it’s tedious and
>     error prone. If you need more control over the vectorisation than the
>     pragmas allow, then the C intrinsics are the best choice.
>     Amara
>     [1] http://clang.llvm.org/docs/LanguageExtensions.html#
>     extensions-for-loop-hint-optimizations

A large portion of user still use intrinsics too, as provided in
avxintrin.h and the likes. They are then lowered to a single/few
llvm instructions with vector operands.

More information about the llvm-dev mailing list