2

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 %?

Community
  • 1
  • 1
Douglas B. Staple
  • 10,510
  • 8
  • 31
  • 58

1 Answers1

2

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?

Douglas B. Staple
  • 10,510
  • 8
  • 31
  • 58