xref: /freebsd/lib/clang/include/llvm/Config/llvm-config.h (revision d56accc7c3dcc897489b6a07834763a03b9f3d68)
142d8074aSDimitry Andric /* $FreeBSD$ */
2268335d0SDimitry Andric /*===------- llvm/Config/llvm-config.h - llvm configuration -------*- C -*-===*/
3e580952dSDimitry Andric /*                                                                            */
486aa9539SDimitry Andric /* Part of the LLVM Project, under the Apache License v2.0 with LLVM          */
586aa9539SDimitry Andric /* Exceptions.                                                                */
686aa9539SDimitry Andric /* See https://llvm.org/LICENSE.txt for license information.                  */
786aa9539SDimitry Andric /* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    */
8e580952dSDimitry Andric /*                                                                            */
9e580952dSDimitry Andric /*===----------------------------------------------------------------------===*/
10e580952dSDimitry Andric 
11268335d0SDimitry Andric /* This file enumerates variables from the LLVM configuration so that they
12268335d0SDimitry Andric    can be in exported headers and won't override package specific directives.
13268335d0SDimitry Andric    This is a C header that can be included in the llvm-c headers. */
14e580952dSDimitry Andric 
15268335d0SDimitry Andric #ifndef LLVM_CONFIG_H
16268335d0SDimitry Andric #define LLVM_CONFIG_H
17e580952dSDimitry Andric 
1802d2ad99SDimitry Andric /* Define if LLVM_ENABLE_DUMP is enabled */
1902d2ad99SDimitry Andric /* #undef LLVM_ENABLE_DUMP */
2002d2ad99SDimitry Andric 
21dff0c46cSDimitry Andric /* Target triple LLVM will generate code for by default */
22dff0c46cSDimitry Andric /* #undef LLVM_DEFAULT_TARGET_TRIPLE */
23dff0c46cSDimitry Andric 
24dff0c46cSDimitry Andric /* Define if threads enabled */
25cc38b640SDimitry Andric #define LLVM_ENABLE_THREADS 1
26dff0c46cSDimitry Andric 
276122f3e6SDimitry Andric /* Has gcc/MSVC atomic intrinsics */
28cc38b640SDimitry Andric #define LLVM_HAS_ATOMICS 1
296122f3e6SDimitry Andric 
307ae0e2c9SDimitry Andric /* Host triple LLVM will be executed on */
31284c1978SDimitry Andric /* #undef LLVM_HOST_TRIPLE */
327ae0e2c9SDimitry Andric 
33e580952dSDimitry Andric /* LLVM architecture name for the native architecture, if available */
34cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ARCH */
35e580952dSDimitry Andric 
366122f3e6SDimitry Andric /* LLVM name for the native AsmParser init function, if available */
37cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ASMPARSER */
386122f3e6SDimitry Andric 
396122f3e6SDimitry Andric /* LLVM name for the native AsmPrinter init function, if available */
40cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ASMPRINTER */
416122f3e6SDimitry Andric 
42dff0c46cSDimitry Andric /* LLVM name for the native Disassembler init function, if available */
43cbafd263SDimitry Andric /* #undef LLVM_NATIVE_DISASSEMBLER */
44dff0c46cSDimitry Andric 
452754fe60SDimitry Andric /* LLVM name for the native Target init function, if available */
46cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGET */
472754fe60SDimitry Andric 
482754fe60SDimitry Andric /* LLVM name for the native TargetInfo init function, if available */
49cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGETINFO */
502754fe60SDimitry Andric 
516122f3e6SDimitry Andric /* LLVM name for the native target MC init function, if available */
52cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGETMC */
5317a519f9SDimitry Andric 
545e801ac6SDimitry Andric /* LLVM name for the native target MCA init function, if available */
555e801ac6SDimitry Andric /* #undef LLVM_NATIVE_TARGETMCA */
565e801ac6SDimitry Andric 
57e580952dSDimitry Andric /* Define if this is Unixish platform */
58e580952dSDimitry Andric #define LLVM_ON_UNIX 1
59e580952dSDimitry Andric 
60139f7f9bSDimitry Andric /* Define if we have the Intel JIT API runtime support library */
6109bfd043SDimitry Andric #define LLVM_USE_INTEL_JITEVENTS 0
62139f7f9bSDimitry Andric 
63139f7f9bSDimitry Andric /* Define if we have the oprofile JIT-support library */
6409bfd043SDimitry Andric #define LLVM_USE_OPROFILE 0
65e580952dSDimitry Andric 
666dfa117fSDimitry Andric /* Define if we have the perf JIT-support library */
676dfa117fSDimitry Andric #define LLVM_USE_PERF 0
686dfa117fSDimitry Andric 
69dff0c46cSDimitry Andric /* Major version of the LLVM API */
705e801ac6SDimitry Andric #define LLVM_VERSION_MAJOR 14
71dff0c46cSDimitry Andric 
72dff0c46cSDimitry Andric /* Minor version of the LLVM API */
7309bfd043SDimitry Andric #define LLVM_VERSION_MINOR 0
741ae6788eSDimitry Andric 
7509de9530SDimitry Andric /* Patch version of the LLVM API */
76fe6060f1SDimitry Andric #define LLVM_VERSION_PATCH 0
7709de9530SDimitry Andric 
781ae6788eSDimitry Andric /* LLVM version string */
791fd87a68SDimitry Andric #define LLVM_VERSION_STRING "14.0.0"
806dfa117fSDimitry Andric 
816dfa117fSDimitry Andric /* Whether LLVM records statistics for use with GetStatistics(),
826dfa117fSDimitry Andric  * PrintStatistics() or PrintStatisticsJSON()
836dfa117fSDimitry Andric  */
846dfa117fSDimitry Andric #define LLVM_FORCE_ENABLE_STATS 0
85ebeff3f9SDimitry Andric 
865f24ef21SDimitry Andric /* Define if we have z3 and want to build it */
875f24ef21SDimitry Andric /* #undef LLVM_WITH_Z3 */
885f24ef21SDimitry Andric 
8904eeddc0SDimitry Andric /* Define if we have curl and want to use it */
9004eeddc0SDimitry Andric /* #undef LLVM_ENABLE_CURL */
9104eeddc0SDimitry Andric 
92*d56accc7SDimitry Andric /* Define if zlib compression is available */
93*d56accc7SDimitry Andric #define LLVM_ENABLE_ZLIB 1
94*d56accc7SDimitry Andric 
955f24ef21SDimitry Andric /* Define if LLVM was built with a dependency to the libtensorflow dynamic library */
965f24ef21SDimitry Andric /* #undef LLVM_HAVE_TF_API */
975f24ef21SDimitry Andric 
98e8d8bef9SDimitry Andric /* Define to 1 if you have the <sysexits.h> header file. */
99e8d8bef9SDimitry Andric #define HAVE_SYSEXITS_H 1
100e8d8bef9SDimitry Andric 
101e8d8bef9SDimitry Andric /* Define to 1 to enable the experimental new pass manager by default */
102fe6060f1SDimitry Andric #define LLVM_ENABLE_NEW_PASS_MANAGER 1
103fe6060f1SDimitry Andric 
104fe6060f1SDimitry Andric /* Define if the xar_open() function is supported on this platform. */
105fe6060f1SDimitry Andric #if defined(__APPLE__)
106fe6060f1SDimitry Andric #define LLVM_HAVE_LIBXAR 1
107fe6060f1SDimitry Andric #endif
108fe6060f1SDimitry Andric 
10904eeddc0SDimitry Andric /* Define if building libLLVM shared library */
11004eeddc0SDimitry Andric /* #undef LLVM_BUILD_LLVM_DYLIB */
11104eeddc0SDimitry Andric 
11204eeddc0SDimitry Andric /* Define if building LLVM with BUILD_SHARED_LIBS */
11304eeddc0SDimitry Andric /* #undef LLVM_BUILD_SHARED_LIBS */
11404eeddc0SDimitry Andric 
115*d56accc7SDimitry Andric /* Define if building LLVM with LLVM_FORCE_USE_OLD_TOOLCHAIN_LIBS */
116*d56accc7SDimitry Andric /* #undef LLVM_FORCE_USE_OLD_TOOLCHAIN */
117*d56accc7SDimitry Andric 
118e580952dSDimitry Andric #endif
119