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 */ 2281ad6265SDimitry Andric /* Doesn't use `cmakedefine` because it is allowed to be empty. */ 23dff0c46cSDimitry Andric /* #undef LLVM_DEFAULT_TARGET_TRIPLE */ 24dff0c46cSDimitry Andric 25dff0c46cSDimitry Andric /* Define if threads enabled */ 26cc38b640SDimitry Andric #define LLVM_ENABLE_THREADS 1 27dff0c46cSDimitry Andric 286122f3e6SDimitry Andric /* Has gcc/MSVC atomic intrinsics */ 29cc38b640SDimitry Andric #define LLVM_HAS_ATOMICS 1 306122f3e6SDimitry Andric 317ae0e2c9SDimitry Andric /* Host triple LLVM will be executed on */ 32284c1978SDimitry Andric /* #undef LLVM_HOST_TRIPLE */ 337ae0e2c9SDimitry Andric 34e580952dSDimitry Andric /* LLVM architecture name for the native architecture, if available */ 35cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ARCH */ 36e580952dSDimitry Andric 376122f3e6SDimitry Andric /* LLVM name for the native AsmParser init function, if available */ 38cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ASMPARSER */ 396122f3e6SDimitry Andric 406122f3e6SDimitry Andric /* LLVM name for the native AsmPrinter init function, if available */ 41cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ASMPRINTER */ 426122f3e6SDimitry Andric 43dff0c46cSDimitry Andric /* LLVM name for the native Disassembler init function, if available */ 44cbafd263SDimitry Andric /* #undef LLVM_NATIVE_DISASSEMBLER */ 45dff0c46cSDimitry Andric 462754fe60SDimitry Andric /* LLVM name for the native Target init function, if available */ 47cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGET */ 482754fe60SDimitry Andric 492754fe60SDimitry Andric /* LLVM name for the native TargetInfo init function, if available */ 50cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGETINFO */ 512754fe60SDimitry Andric 526122f3e6SDimitry Andric /* LLVM name for the native target MC init function, if available */ 53cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGETMC */ 5417a519f9SDimitry Andric 555e801ac6SDimitry Andric /* LLVM name for the native target MCA init function, if available */ 565e801ac6SDimitry Andric /* #undef LLVM_NATIVE_TARGETMCA */ 575e801ac6SDimitry Andric 58e580952dSDimitry Andric /* Define if this is Unixish platform */ 59e580952dSDimitry Andric #define LLVM_ON_UNIX 1 60e580952dSDimitry Andric 61139f7f9bSDimitry Andric /* Define if we have the Intel JIT API runtime support library */ 6209bfd043SDimitry Andric #define LLVM_USE_INTEL_JITEVENTS 0 63139f7f9bSDimitry Andric 64139f7f9bSDimitry Andric /* Define if we have the oprofile JIT-support library */ 6509bfd043SDimitry Andric #define LLVM_USE_OPROFILE 0 66e580952dSDimitry Andric 676dfa117fSDimitry Andric /* Define if we have the perf JIT-support library */ 686dfa117fSDimitry Andric #define LLVM_USE_PERF 0 696dfa117fSDimitry Andric 70dff0c46cSDimitry Andric /* Major version of the LLVM API */ 71*bdd1243dSDimitry Andric #define LLVM_VERSION_MAJOR 16 72dff0c46cSDimitry Andric 73dff0c46cSDimitry Andric /* Minor version of the LLVM API */ 7409bfd043SDimitry Andric #define LLVM_VERSION_MINOR 0 751ae6788eSDimitry Andric 7609de9530SDimitry Andric /* Patch version of the LLVM API */ 77*bdd1243dSDimitry Andric #define LLVM_VERSION_PATCH 0 7809de9530SDimitry Andric 791ae6788eSDimitry Andric /* LLVM version string */ 80*bdd1243dSDimitry Andric #define LLVM_VERSION_STRING "16.0.0git" 816dfa117fSDimitry Andric 826dfa117fSDimitry Andric /* Whether LLVM records statistics for use with GetStatistics(), 836dfa117fSDimitry Andric * PrintStatistics() or PrintStatisticsJSON() 846dfa117fSDimitry Andric */ 856dfa117fSDimitry Andric #define LLVM_FORCE_ENABLE_STATS 0 86ebeff3f9SDimitry Andric 875f24ef21SDimitry Andric /* Define if we have z3 and want to build it */ 885f24ef21SDimitry Andric /* #undef LLVM_WITH_Z3 */ 895f24ef21SDimitry Andric 9004eeddc0SDimitry Andric /* Define if we have curl and want to use it */ 9104eeddc0SDimitry Andric /* #undef LLVM_ENABLE_CURL */ 9204eeddc0SDimitry Andric 93753f127fSDimitry Andric /* Define if we have cpp-httplib and want to use it */ 94753f127fSDimitry Andric /* #undef LLVM_ENABLE_HTTPLIB */ 95753f127fSDimitry Andric 96d56accc7SDimitry Andric /* Define if zlib compression is available */ 97d56accc7SDimitry Andric #define LLVM_ENABLE_ZLIB 1 98d56accc7SDimitry Andric 99fcaf7f86SDimitry Andric /* Define if zstd compression is available */ 100*bdd1243dSDimitry Andric #define LLVM_ENABLE_ZSTD 1 101fcaf7f86SDimitry Andric 102*bdd1243dSDimitry Andric /* Define if LLVM is using tflite instead of libtensorflow */ 103*bdd1243dSDimitry Andric /* #undef LLVM_HAVE_TFLITE */ 1045f24ef21SDimitry Andric 105e8d8bef9SDimitry Andric /* Define to 1 if you have the <sysexits.h> header file. */ 106e8d8bef9SDimitry Andric #define HAVE_SYSEXITS_H 1 107e8d8bef9SDimitry Andric 108fe6060f1SDimitry Andric /* Define if the xar_open() function is supported on this platform. */ 109fe6060f1SDimitry Andric #if defined(__APPLE__) 110fe6060f1SDimitry Andric #define LLVM_HAVE_LIBXAR 1 111fe6060f1SDimitry Andric #endif 112fe6060f1SDimitry Andric 11304eeddc0SDimitry Andric /* Define if building libLLVM shared library */ 11404eeddc0SDimitry Andric /* #undef LLVM_BUILD_LLVM_DYLIB */ 11504eeddc0SDimitry Andric 11604eeddc0SDimitry Andric /* Define if building LLVM with BUILD_SHARED_LIBS */ 11704eeddc0SDimitry Andric /* #undef LLVM_BUILD_SHARED_LIBS */ 11804eeddc0SDimitry Andric 119d56accc7SDimitry Andric /* Define if building LLVM with LLVM_FORCE_USE_OLD_TOOLCHAIN_LIBS */ 120d56accc7SDimitry Andric /* #undef LLVM_FORCE_USE_OLD_TOOLCHAIN */ 121d56accc7SDimitry Andric 12281ad6265SDimitry Andric /* Define if llvm_unreachable should be optimized with undefined behavior 12381ad6265SDimitry Andric * in non assert builds */ 12481ad6265SDimitry Andric #define LLVM_UNREACHABLE_OPTIMIZE 1 12581ad6265SDimitry Andric 12681ad6265SDimitry Andric /* Define to 1 if you have the DIA SDK installed, and to 0 if you don't. */ 12781ad6265SDimitry Andric #define LLVM_ENABLE_DIA_SDK 0 12881ad6265SDimitry Andric 129*bdd1243dSDimitry Andric /* Define if plugins enabled */ 130*bdd1243dSDimitry Andric /* #undef LLVM_ENABLE_PLUGINS */ 131*bdd1243dSDimitry Andric 132e580952dSDimitry Andric #endif 133