“ -qaltivec”与“ -qarch = pwr5”不兼容

时间:2018-08-05 08:53:55

标签: aix powerpc xlc altivec

我无法理解来自IBM XL C / C ++的警告。我正在从AIX ppc64-be机器AIX的编译场上研究GCC119。

$ cat test.cxx
#if defined(__ALTIVEC__)
# include <altivec.h>
# undef vector
# undef pixel
# undef bool
#endif

__vector unsigned char VecLoad(unsigned char data[])
{
    return vec_ld(0, data);
}

编译它会导致:

$ xlC -qarch=pwr5 -qaltivec test.cxx -c
1540-2142 (W) "-qaltivec" is not compatible with "-qarch=pwr5". "-qnoaltivec" is being set.
"test.cxx", line 8.10: 1540-0040 (S) The text "unsigned" is unexpected.  "__vector" may be undeclared or ambiguous.

删除-qarch不能解决该问题,因为编译器默认为-qarch=pwr4

我仅在使用XLC编译器的AIX机器上看到此问题。在同一台计算机上,GCC正常。我用于测试的其他两台机器也可以。实际上,AIX机器是S822,运行安装了XLC的Linux的相同S822也可以。

问题出在哪里,我该如何解决?为什么我们不能在XLC的AIX上使用Altivec和POWER5?

0 个答案:

没有答案