]> https://gitweb.dealii.org/ - dealii.git/commitdiff
patch bundled boost: nvcc and immintrin.h 17420/head
authorTimo Heister <timo.heister@gmail.com>
Thu, 1 Aug 2024 19:50:55 +0000 (15:50 -0400)
committerTimo Heister <timo.heister@gmail.com>
Thu, 1 Aug 2024 19:52:46 +0000 (15:52 -0400)
boost compiler detection macro logic about immintrin.h seems to be
incorrect when using nvcc leading to the compiler error
```
/usr/lib/gcc/x86_64-linux-gnu/13/include/amxtileintrin.h(42): error:
identifier "__builtin_ia32_ldtilecfg" is undefined
    __builtin_ia32_ldtilecfg (__config);
```

Work around this by patching at least the bundled boost.

closes #17401

bundled/boost-1.84.0/include/boost/multiprecision/cpp_int/intel_intrinsics.hpp

index 1dfe181dee1654bbcaad9b8a4ca74ec5bb918c06..8dfd04106850d06956b948dd113b68eb5dfb50be 100644 (file)
 #undef BOOST_MP_HAS_IMMINTRIN_H
 #endif
 
+#if defined(__CUDACC__)
+// @tjhei: nvcc, at least with CUDA 12.5 is not happy with these intrinsics
+#undef BOOST_MP_HAS_IMMINTRIN_H
+#endif
+
 
 //
 // If the compiler supports the intrinsics used by GCC internally

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.