--- Comment #1 from baggett dot patrick at gmail dot com 2010-08-22 12:31
---
I can confirm that is a problem on GCC 4.4.3, though I was using the
Intel-style intrinsic found in the SSE4 manual.
Smallest testcase:
gcc -msse4 -m64
#include
/* Read four bytes and extend to 4 ints in xmm reg. */
__m128i vint_zx8_32(unsigned char* m)
{
return _mm_cvtepu8_epi32( *((__m128i*)m) );
}
Generated Code:
vint_zx8_32:
movdqa (%rdi), %xmm0
pmovzxbd%xmm0, %xmm0
ret
Expected Code:
vint_zx8_32:
pmovzxbd(%rdi), %xmm0
ret
--
baggett dot patrick at gmail dot com changed:
What|Removed |Added
CC||baggett dot patrick at gmail
||dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41484