2

我有一个使用 OpenMP 和 128 位整数的 C 代码。对于 128 位整数,我使用 GCC 提供的 __int128_t 和 __uint128_t 扩展。我正在寻找任何其他也可以编译这种代码的编译器。

Clang 支持 __uint128_t,但不支持 OpenMP。ICC 支持 OpenMP,但不支持 128 位整数(至少不能使用内置运算符,如 +、-、*、/ 和 %)Portland Group C 编译器本身并不支持 128 位算术。

为了清楚起见,我正在寻找类似于 __int128_t 的 128 位整数,它可以作为“普通”整数的替代品。除了支持 OpenMP 和 128 位整数以及内置运算符 +、-、*、/ 和 % 的 GCC 之外,是否有任何适用于 Linux 的编译器?

4

1 回答 1

2

ICC 不支持版本 12 的 __int128_t(发布此问题时),但从版本 13 开始添加了支持,请参阅:英特尔 C 编译器中支持 +、-、*、/ 和 % 的 128 位整数?

于 2015-03-04T14:05:35.667 回答