Quantcast
Channel: Intel® C++ Compiler
Viewing all articles
Browse latest Browse all 1616

icc generates wrong instructions for MIC

$
0
0

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.


Viewing all articles
Browse latest Browse all 1616

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>