Displaying 3 results from an estimated 3 matches for "__builtin_ia32_movddup".
2009 Oct 09
3
[LLVMdev] Help with gcc SSE intrinsics
...e 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);
prog.linked.c:10393: error: incompatible types when assigning to type 'double
__vector__'
from type 'int'
double __attribute__((vector_size(16 ))) llvm_cbe_r1147;
double __attribute__((vector_size(16 ))) llvm_cbe_r1148;
Any ideas what gcc is complaining a...
2009 Oct 09
0
[LLVMdev] Help with gcc SSE intrinsics
...d. 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.
> prog.linked.c:10393: error: incompatible types when assigning to
> type 'double
> __vector__'
> from type 'int'
>
> double __attribu...
2009 Oct 09
2
[LLVMdev] Help with gcc SSE intrinsics
...ctor 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...