JonChesterfield updated this revision to Diff 358248. JonChesterfield added a comment.
- reduce patch to only dropping cuda define Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105221/new/ https://reviews.llvm.org/D105221 Files: clang/lib/Headers/__clang_cuda_complex_builtins.h clang/lib/Headers/openmp_wrappers/complex clang/lib/Headers/openmp_wrappers/complex.h Index: clang/lib/Headers/openmp_wrappers/complex.h =================================================================== --- clang/lib/Headers/openmp_wrappers/complex.h +++ clang/lib/Headers/openmp_wrappers/complex.h @@ -17,7 +17,6 @@ // We require math functions in the complex builtins below. #include <math.h> -#define __CUDA__ #define __OPENMP_NVPTX__ #include <__clang_cuda_complex_builtins.h> #undef __OPENMP_NVPTX__ Index: clang/lib/Headers/openmp_wrappers/complex =================================================================== --- clang/lib/Headers/openmp_wrappers/complex +++ clang/lib/Headers/openmp_wrappers/complex @@ -17,7 +17,6 @@ // We require std::math functions in the complex builtins below. #include <cmath> -#define __CUDA__ #define __OPENMP_NVPTX__ #include <__clang_cuda_complex_builtins.h> #undef __OPENMP_NVPTX__ @@ -26,9 +25,6 @@ // Grab the host header too. #include_next <complex> - -#ifdef __cplusplus - // If we are compiling against libc++, the macro _LIBCPP_STD_VER should be set // after including <cmath> above. Since the complex header we use is a // simplified version of the libc++, we don't need it in this case. If we @@ -48,5 +44,3 @@ #pragma omp end declare variant #endif - -#endif Index: clang/lib/Headers/__clang_cuda_complex_builtins.h =================================================================== --- clang/lib/Headers/__clang_cuda_complex_builtins.h +++ clang/lib/Headers/__clang_cuda_complex_builtins.h @@ -16,7 +16,7 @@ // to work with CUDA and OpenMP target offloading [in C and C++ mode].) #pragma push_macro("__DEVICE__") -#ifdef __OPENMP_NVPTX__ +#ifdef _OPENMP #pragma omp declare target #define __DEVICE__ __attribute__((noinline, nothrow, cold, weak)) #else @@ -26,7 +26,7 @@ // 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 // select the native builtins as the overload support for templates is lacking. -#if !defined(__OPENMP_NVPTX__) +#if !defined(_OPENMP) #define _ISNANd std::isnan #define _ISNANf std::isnan #define _ISINFd std::isinf @@ -276,7 +276,7 @@ #undef _fmaxd #undef _fmaxf -#ifdef __OPENMP_NVPTX__ +#ifdef _OPENMP #pragma omp end declare target #endif
Index: clang/lib/Headers/openmp_wrappers/complex.h =================================================================== --- clang/lib/Headers/openmp_wrappers/complex.h +++ clang/lib/Headers/openmp_wrappers/complex.h @@ -17,7 +17,6 @@ // We require math functions in the complex builtins below. #include <math.h> -#define __CUDA__ #define __OPENMP_NVPTX__ #include <__clang_cuda_complex_builtins.h> #undef __OPENMP_NVPTX__ Index: clang/lib/Headers/openmp_wrappers/complex =================================================================== --- clang/lib/Headers/openmp_wrappers/complex +++ clang/lib/Headers/openmp_wrappers/complex @@ -17,7 +17,6 @@ // We require std::math functions in the complex builtins below. #include <cmath> -#define __CUDA__ #define __OPENMP_NVPTX__ #include <__clang_cuda_complex_builtins.h> #undef __OPENMP_NVPTX__ @@ -26,9 +25,6 @@ // Grab the host header too. #include_next <complex> - -#ifdef __cplusplus - // If we are compiling against libc++, the macro _LIBCPP_STD_VER should be set // after including <cmath> above. Since the complex header we use is a // simplified version of the libc++, we don't need it in this case. If we @@ -48,5 +44,3 @@ #pragma omp end declare variant #endif - -#endif Index: clang/lib/Headers/__clang_cuda_complex_builtins.h =================================================================== --- clang/lib/Headers/__clang_cuda_complex_builtins.h +++ clang/lib/Headers/__clang_cuda_complex_builtins.h @@ -16,7 +16,7 @@ // to work with CUDA and OpenMP target offloading [in C and C++ mode].) #pragma push_macro("__DEVICE__") -#ifdef __OPENMP_NVPTX__ +#ifdef _OPENMP #pragma omp declare target #define __DEVICE__ __attribute__((noinline, nothrow, cold, weak)) #else @@ -26,7 +26,7 @@ // 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 // select the native builtins as the overload support for templates is lacking. -#if !defined(__OPENMP_NVPTX__) +#if !defined(_OPENMP) #define _ISNANd std::isnan #define _ISNANf std::isnan #define _ISINFd std::isinf @@ -276,7 +276,7 @@ #undef _fmaxd #undef _fmaxf -#ifdef __OPENMP_NVPTX__ +#ifdef _OPENMP #pragma omp end declare target #endif
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits