问一个intel编译器internal error的问题
我的环境是 winxp sp2, vs2005, intel compiler 9.1
一个很短的程序:
#include <emmintrin.h>
int main()
{
int a[8] = {0};
_mm_and_si128(*(__m128i*)a, *(__m128i*)a);
return 0;
}
在 vs2005 下集成的 intel compiler 编译没有问题
但在命令行用 icl 直接编译,就会报错:
icl t4.cpp
Intel(R) C++ Compiler for 32-bit applications, Version 9.1 Build 20060927Z
Copyright (C) 1985-2006 Intel Corporation. All rights reserved.
t4.cpp
(0): internal error: 0_8272
compilation aborted for t4.cpp (code 4)
好像所有的整数的SSE2,比如_mm_or_si128, _mm_add_epi32,都会报错,不知道为什么。我把 vs2005 中的 copy 出来的 commandline 都加上,还是会报同样的错。
这个问题是怎么回事,要怎么解决呢?
thanks