From 8876dac50aafa5a265c1fb1a9d4e38f97b83dfb6 Mon Sep 17 00:00:00 2001 From: Michal Gorny Date: Tue, 11 Dec 2018 19:02:14 +0000 Subject: [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 llvm-svn: 348886 --- openmp/runtime/src/kmp_os.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'openmp') diff --git a/openmp/runtime/src/kmp_os.h b/openmp/runtime/src/kmp_os.h index 467fd96..54daaf5 100644 --- a/openmp/runtime/src/kmp_os.h +++ b/openmp/runtime/src/kmp_os.h @@ -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 -- cgit v1.1