The X86 SSE intrinsics are documented here: http://gcc.gnu.org/onlinedocs/gcc-4.4.1/gcc/X86-Built_002din-Functions.html#X86-Built_002din-Functions In particular, this list includes __builtin_ia32_movddup. But it doesn't work: #include <stdio.h> int main(void) { typedef double v2df __attribute__ ((vector_size (16))); v2df vec = {}; ((double *)(&vec))[0] = 1.0; vec = __builtin_ia32_movddup(vec); printf("vec[0] = %f, vec[1] = %f\n", ((double *)(&vec))[0], ((double *) (&vec))[1]); return 0; } % gcc movddup.c -o movddup movddup.c: In function 'main': movddup.c:9: error: incompatible types when assigning to type 'v2df' from type 'int' I found this message that indicates it's gone: http://gcc.gnu.org/ml/gcc-help/2005-12/msg00148.html So is it gone? If so, why is it still documented? And where are the xmmintrinsics documented? Thanks. -Dave