[PATCH][AVX2] Fix intrinsic name and argument for _mm256_broadcastsi128_si256

Juergen Ributzka juergen at apple.com
Fri Aug 16 20:37:15 PDT 2013


Hi @ll,

the two attached patches fix the name of the function and the type of the argument for the AVX2 intrinsic _mm256_broadcastsi128_si256 to align it with the Intel documentation (and GCC).

Clang now expects the argument to be passed by value, creates the necessary store to the stack, and calls the LLVM intrinsic with the address of this stack location as argument.

For LLVM the mapping between the LLVM int_x86_avx2_vbroadcasti128 and the GCC __builtin_ia32_vbroadcastsi256 intrinsic was removed, because the arguments have different types.

This fixes bug PR 16581 and rdar://14747994

Cheers,
Juergen


-------------- next part --------------
A non-text attachment was scrubbed...
Name: clang-avx2.diff
Type: application/octet-stream
Size: 2707 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130816/f39eb967/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm-avx.diff
Type: application/octet-stream
Size: 693 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130816/f39eb967/attachment-0001.obj>


More information about the llvm-commits mailing list