Hello, I'm getting a seg-fault running this code. #include <emmintrin.h> #include <x86intrin.h> #include <stdio.h> #include <stdint.h> void print_2_64_bit_ints(const char * label, __m128i m64_r) { int *val = (int *) &m64_r; printf("%s: %d %d\n", label, val[0], val[1]); } int main() { __m128i HADDQinput = _mm_set_epi8(4, 3, 2, 1, 8, 7, 5, 3, 7, 6, 5, 4, 9, 0, 3, 3); //__m128i RESULT = _mm_haddq_epi8(HADDQinput); //_mm_empty(); //print_2_64_bit_ints("Result ", RESULT); return 0; } The GCC compiler flags used are -msse3 -msse4 -mxop -mavx and I'm compiling this with GCC-TDM 4.7.1-2. If I run the code through GDB it gets up to this line __m128i HADDQinput = _mm_set_epi8(4, 3, 2, 1, 8, 7, 5, 3, 7, 6, 5, 4, 9, 0, 3, 3); and it crashes on line 603 in emmintrin.h. I also noticed that this only occurs if the header x86intrin.h is included otherwise the program exits fine. I'm using an AMD-8150 FX (Bulldozer) processor with these instructions available according to CPU-Z (CPUID) MMX(+), SSE(1,2,3,3S,4.1,4.2,4A), x86-64, AMD-V, AES,AVX,XOP <http://gcc.1065356.n5.nabble.com/file/n952620/bulldozer_8150_FX_cpu_z.png> Someone told me that the fault occurs due to an Intel instruction 'vmovd xmm0..' using WinDbg. thanks, Andrew -- View this message in context: http://gcc.1065356.n5.nabble.com/Need-help-running-XOP-C-intrinsics-code-on-AMD-Zambezi-Bulldozer-tp952620.html Sent from the gcc - Help mailing list archive at Nabble.com.