Hi,
I'm trying to compile some code for MIC, which uses the extended integer type __uint128_t. And icc gave me the following error message:
******** warning #13376: XMM registers are not supported on target platform
******** error #13393: Opcode unsupported on target architecture: movsd
I wrote a snippet of sample code, which could reproduce the error:
---------------------------------------
#include
int main() {
double d;
__uint128_t i = 0;
d = i;
printf("%f\n", d);
}
----------------------------------------
The code above can be compiled correctly by gcc, as well as by icc when targeting x86 platform instead of MIC.
It seems that icc was trying to generate some SSE instructions, which is not supported by MIC.
This looks like a bug.
I hope your dev team could solve this or give me some workaround.
Thanks.