[Openmp-commits] [openmp] r348886 - [runtime] Disable KMP_HAVE_QUAD on NetBSD gcc

Michal Gorny via Openmp-commits openmp-commits at lists.llvm.org
Tue Dec 11 11:02:14 PST 2018


Author: mgorny
Date: Tue Dec 11 11:02:14 2018
New Revision: 348886

URL: http://llvm.org/viewvc/llvm-project?rev=348886&view=rev
Log:
[runtime] Disable KMP_HAVE_QUAD on NetBSD gcc

Disable KMP_HAVE_QUAD when building via gcc on NetBSD system,
as the build fails due to unimplemented builtins:

  .../kmp_atomic.cpp.o: In function `__kmpc_atomic_cmplx16_mul':
  .../kmp_atomic.cpp:1332: undefined reference to `__multc3'
  .../kmp_atomic.cpp.o: In function `__kmpc_atomic_cmplx16_div':
  .../kmp_atomic.cpp:1334: undefined reference to `__divtc3'
  ...

Differential Revision: https://reviews.llvm.org/D55478

Modified:
    openmp/trunk/runtime/src/kmp_os.h

Modified: openmp/trunk/runtime/src/kmp_os.h
URL: http://llvm.org/viewvc/llvm-project/openmp/trunk/runtime/src/kmp_os.h?rev=348886&r1=348885&r2=348886&view=diff
==============================================================================
--- openmp/trunk/runtime/src/kmp_os.h (original)
+++ openmp/trunk/runtime/src/kmp_os.h Tue Dec 11 11:02:14 2018
@@ -86,9 +86,12 @@
    128-bit extended precision type yet */
 typedef long double _Quad;
 #elif KMP_COMPILER_GCC
+/* GCC on NetBSD lacks __multc3/__divtc3 builtins needed for quad */
+#if !KMP_OS_NETBSD
 typedef __float128 _Quad;
 #undef KMP_HAVE_QUAD
 #define KMP_HAVE_QUAD 1
+#endif
 #elif KMP_COMPILER_MSVC
 typedef long double _Quad;
 #endif




More information about the Openmp-commits mailing list