gcc 4.x for 128-bits integers operations in intel 32-bits cpu?

gcc 4.x for 128-bits integers operations in intel 32-bits cpu?


I am new to Intel processor. It looks like there are SSE registers for 128-bits operation for 32-bits pentium processors.
Just wonder if anyone can help on Intel 32-bits CPU using 128-bits SSE registers for 128 bits integer operations
in the gcc 4.x compiler. I have used gcc -msse3 -m128bit-long-double foo.c,
but it complains about "warning: integer constant is too large for its type" and
"error: invalid operands to binary &".

long double x, y, z;
x=0x1ffffffff000000ffLL; /* 65 bits */
z= x & y;

Are these ever supported or am I missing something?
Please let me know if I am in the wrong forum.

Thanks for help


2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I suspect no one understands what you are getting at here. For questions on gcc, you would normally start with the gcc manuals, then follow up with questions on the gcc-help mailing list (sign up at gcc.gnu.org).
If you want to initialize a floating point data type with hex constants, there likely are examples for ordinary double and long double, likely involving a union.
gcc has more support for 128-bit int types than icc, but I doubt you can expect any floating point data type to work with operators which are restricted to int data types, although you could work on an integer type in a union.

Leave a Comment

Please sign in to add a comment. Not a member? Join today