http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52910
--- Comment #2 from Uros Bizjak <ubizjak at gmail dot com> 2012-11-23 07:42:38 UTC --- Current mainline compiles f13 to: f13: vpxor %xmm0, %xmm0, %xmm0 xorl %eax, %eax .L36: vmovdqa c2(%rax), %xmm2 addq $16, %rax vpmacsdqh %xmm0, c3-16(%rax), %xmm2, %xmm0 vpmacsdql %xmm0, c3-16(%rax), %xmm2, %xmm0 cmpq $2048, %rax jne .L36 vpsrldq $8, %xmm0, %xmm1 vpaddq %xmm0, %xmm1, %xmm0 vpextrq $0, %xmm0, %rax ret Does this work OK?