[PATCH] Patched clang to emit x86 blends as shufflevectors.

Filipe Cabecinhas filcab+llvm.phabricator at gmail.com
Tue May 6 18:52:25 PDT 2014


Ah, I hadn't thought of that.
But it seems that the gcc manual explicitly says they're functions and that
they're available:
http://gcc.gnu.org/onlinedocs/gcc-4.9.0/gcc/X86-Built-in-Functions.html#X86-Built-in-Functions
I'm not sure, but I suppose we should keep them if they're documented as
available, right? Or are we not maintaining compatibility here (our manual
doesn't mention these builtins, AFAICT)?

I also don't see any other intrinsic doing the same (which doesn't mean we
can't start now, obviously).

  Filipe


On Tue, May 6, 2014 at 2:01 PM, Rafael Ávila de Espíndola <
rafael.espindola at gmail.com> wrote:

> Should code that is directly using the builtins themselves (like
> __builtin_ia32_pblendw256) be optimized too? If so wouldn't it be
> better to, for example, leave _mm256_blend_epi16 as is, remove
> __builtin_ia32_pblendw256 from  BuiltinsX86.def and make it a #define
> to shufflevector?
>
> http://reviews.llvm.org/D3601
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140506/aace39a3/attachment.html>


More information about the cfe-commits mailing list