[LLVMdev] Clang 3.1 __builtin_ia32_pcmpeqd128 doesn't work anymore

Duncan Sands baldrick at free.fr
Mon Jun 4 02:04:44 PDT 2012

Hi Christophe,

> I recently migrate from llvm/clang 2.8 to 3.1.
> The builtin __builtin_ia32_pcmpeqd128 compile and works perfectly with clang 2.8.
> But with clang 3.1, i get the compilation error :
> use of unknown builtin '__builtin_ia32_pcmpeqd128' [-Wimplicit-function-declaration]
>         __v4i comp = __builtin_ia32_pcmpeqd128(vectTag, vectTag2);
> (cf dummy.c -> clang -c dummy.c -o dummy.o)
> Is that normal? Is there an other way to do it?

I think it was removed because you can get the same effect using generic IR:
a "icmp eq" of the vectors, followed by a "sext" to the result type.

Ciao, Duncan.

More information about the llvm-dev mailing list