update to latest clang C headers

This commit is contained in:
Andrew Kelley 2020-12-04 15:39:16 -07:00
parent fd8fa55129
commit 1c5606af9f
3 changed files with 7 additions and 3 deletions

View File

@ -16,7 +16,7 @@
// to work with CUDA and OpenMP target offloading [in C and C++ mode].) // to work with CUDA and OpenMP target offloading [in C and C++ mode].)
#pragma push_macro("__DEVICE__") #pragma push_macro("__DEVICE__")
#ifdef _OPENMP #ifdef __OPENMP_NVPTX__
#pragma omp declare target #pragma omp declare target
#define __DEVICE__ __attribute__((noinline, nothrow, cold, weak)) #define __DEVICE__ __attribute__((noinline, nothrow, cold, weak))
#else #else
@ -26,7 +26,7 @@
// To make the algorithms available for C and C++ in CUDA and OpenMP we select // To make the algorithms available for C and C++ in CUDA and OpenMP we select
// different but equivalent function versions. TODO: For OpenMP we currently // different but equivalent function versions. TODO: For OpenMP we currently
// select the native builtins as the overload support for templates is lacking. // select the native builtins as the overload support for templates is lacking.
#if !defined(_OPENMP) #if !defined(__OPENMP_NVPTX__)
#define _ISNANd std::isnan #define _ISNANd std::isnan
#define _ISNANf std::isnan #define _ISNANf std::isnan
#define _ISINFd std::isinf #define _ISINFd std::isinf
@ -250,7 +250,7 @@ __DEVICE__ float _Complex __divsc3(float __a, float __b, float __c, float __d) {
#undef _LOGBd #undef _LOGBd
#undef _LOGBf #undef _LOGBf
#ifdef _OPENMP #ifdef __OPENMP_NVPTX__
#pragma omp end declare target #pragma omp end declare target
#endif #endif

View File

@ -18,7 +18,9 @@
#include <cmath> #include <cmath>
#define __CUDA__ #define __CUDA__
#define __OPENMP_NVPTX__
#include <__clang_cuda_complex_builtins.h> #include <__clang_cuda_complex_builtins.h>
#undef __OPENMP_NVPTX__
#endif #endif
// Grab the host header too. // Grab the host header too.

View File

@ -18,7 +18,9 @@
#include <math.h> #include <math.h>
#define __CUDA__ #define __CUDA__
#define __OPENMP_NVPTX__
#include <__clang_cuda_complex_builtins.h> #include <__clang_cuda_complex_builtins.h>
#undef __OPENMP_NVPTX__
#endif #endif
// Grab the host header too. // Grab the host header too.