[LLVMdev] Help with gcc SSE intrinsics

Dale Johannesen dalej at apple.com
Fri Oct 9 13:57:20 PDT 2009


On Oct 9, 2009, at 1:50 PMPDT, David Greene wrote:

> On Friday 09 October 2009 15:47, Dale Johannesen wrote:
>> On Oct 9, 2009, at 1:26 PMPDT, David Greene wrote:
>>> Ok, I've been looking at this for hours and can't figure it out.  I
>>> know I'm
>>> missing something obvious.
>>>
>>> I've been spending the past few days beefing up the vector support
>>> in the C
>>> Backend.  This should help us debug vector code that's miscompiled.
>>> But
>>> gcc doesn't like this fragment:
>>>
>>> ((double *)(&llvm_cbe_r1147))[0u] =
>>> (((llvm_cbe_r1146__BITCAST_TEMPORARY.Int64 = 4ull,
>>> llvm_cbe_r1146__BITCAST_TEMPORARY .Double)));
>>> llvm_cbe_r1148 = __builtin_ia32_movddup(llvm_cbe_r1147);
>>
>> I don't see __builtin_ia32_movddup defined anywhere in the llvm-gcc
>> sources.  That's probably it.
>
> Not llvm-gcc.  GNU gcc.  It's documented here:
>
> http://gcc.gnu.org/onlinedocs/gcc-4.4.1/gcc/X86-Built_002din-Functions.html#X86-Built_002din-Functions

I see, I'm not in a position to duplicate this then.  Good luck.




More information about the llvm-dev mailing list