xref: /freebsd-src/contrib/llvm-project/clang/lib/Headers/openmp_wrappers/complex.h (revision 349cc55c9796c4596a5b9904cd3281af295f878f)
15ffd83dbSDimitry Andric /*===-- complex --- OpenMP complex wrapper for target regions --------- c++ -===
25ffd83dbSDimitry Andric  *
35ffd83dbSDimitry Andric  * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
45ffd83dbSDimitry Andric  * See https://llvm.org/LICENSE.txt for license information.
55ffd83dbSDimitry Andric  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
65ffd83dbSDimitry Andric  *
75ffd83dbSDimitry Andric  *===-----------------------------------------------------------------------===
85ffd83dbSDimitry Andric  */
95ffd83dbSDimitry Andric 
105ffd83dbSDimitry Andric #ifndef __CLANG_OPENMP_COMPLEX_H__
115ffd83dbSDimitry Andric #define __CLANG_OPENMP_COMPLEX_H__
125ffd83dbSDimitry Andric 
135ffd83dbSDimitry Andric #ifndef _OPENMP
145ffd83dbSDimitry Andric #error "This file is for OpenMP compilation only."
155ffd83dbSDimitry Andric #endif
165ffd83dbSDimitry Andric 
175ffd83dbSDimitry Andric // We require math functions in the complex builtins below.
185ffd83dbSDimitry Andric #include <math.h>
195ffd83dbSDimitry Andric 
20*349cc55cSDimitry Andric #ifdef __NVPTX__
21eaeb601bSDimitry Andric #define __OPENMP_NVPTX__
225ffd83dbSDimitry Andric #include <__clang_cuda_complex_builtins.h>
23eaeb601bSDimitry Andric #undef __OPENMP_NVPTX__
245ffd83dbSDimitry Andric #endif
255ffd83dbSDimitry Andric 
26*349cc55cSDimitry Andric #ifdef __AMDGCN__
27*349cc55cSDimitry Andric #define __OPENMP_AMDGCN__
28*349cc55cSDimitry Andric #include <__clang_cuda_complex_builtins.h>
29*349cc55cSDimitry Andric #undef __OPENMP_AMDGCN__
30*349cc55cSDimitry Andric #endif
31*349cc55cSDimitry Andric 
32*349cc55cSDimitry Andric #endif
33*349cc55cSDimitry Andric 
345ffd83dbSDimitry Andric // Grab the host header too.
355ffd83dbSDimitry Andric #include_next <complex.h>
36