问题
I have a C code that uses OpenMP and 128-bit integers. For the 128-bit integers, I'm using the __int128_t and __uint128_t extensions provided by GCC. I'm looking for any other compiler that can also compile this kind of code.
Clang supports __uint128_t, but not OpenMP. ICC supports OpenMP, but not 128-bit integers (at least not ones that you can use built-in operators like +, -, *, /, and % with). The Portland Group C Compiler doesn't natively support 128-bit arithmetic.
Just to be clear, I'm looking for 128-bit integers analogous to __int128_t that work as drop-in replacements for "normal" integers. Is there any compiler for Linux besides GCC that supports OpenMP and 128-bit integers, with the built-in operators +, -, *, /, and %?
回答1:
ICC didn't support __int128_t with version 12 (when this question was posted), but supported was added with versions 13 onwards, see: 128-bit integers supporting +, -, *, /, and % in the Intel C Compiler?
来源:https://stackoverflow.com/questions/16424386/gcc-alternative-for-linux-supporting-openmp-and-128-bit-integers-with