This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: SSE2 support in GCC-3.2.1 (May not exist?)
> > Pramod Kumar Swami wrote:
> >
> > Does gcc-3.2.1 support MMX 128-bit(SSE2) instructions ? If yes
> > where can i locate the header file having all these intrinsics
> > definition in gcc-3.2.1 package ?
>
> You can find the ia32 instrinsic functions, and their usage, are listed at:
>
> http://gcc.gnu.org/onlinedocs/gcc-3.2.1/gcc/X86-Built-in-Functions.html
> http://gcc.gnu.org/onlinedocs/gcc-3.2.1/gcc/Vector-Extensions.html#Vector%20
> Extensions
>
> I note that the pages list MMX, SSE, and 3DNow intrinsics, but do *not* list
> any SSE2 types or intrinsics. I just tried to compile the following:
>
> typedef int v4sf __attribute__ ((mode(V4SF))); // works
> typedef int v2df __attribute__ ((mode(V2DF))); // fails
>
> int main()
> {
> v4sf fv; // four packed 32-bit floats
> v2df dv; // two packed 64-bit doubles
>
> return 0;
> }
>
> The compiled failed using both of these command lines:
>
> g++ -march=pentium4 sse2test.cpp
> g++ -march=pentium4 -msse2 sse2test.cpp
>
> The compiler reports that V2DF is an unknown mode, even though the cited
> docs suggest that my syntax is correct. I suspect (can someone confirm?)
> that SSE2 intrinsics are *not* implemented in 3.2.1.
Yes, SSE2 intrinsics went in after 3.2 has been branched.
They will be in 3.3 (and I hope in useable form)
Honza
>
> ..Scott
>
> --
> Scott Robert Ladd
> Coyote Gulch Productions (http://www.coyotegulch.com)
> Professional programming for science and engineering;
> Interesting and unusual bits of very free code.