1 /*===------- llvm/Config/llvm-config.h - llvm configuration -------*- C -*-===*/ 2 /* */ 3 /* Part of the LLVM Project, under the Apache License v2.0 with LLVM */ 4 /* Exceptions. */ 5 /* See https://llvm.org/LICENSE.txt for license information. */ 6 /* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception */ 7 /* */ 8 /*===----------------------------------------------------------------------===*/ 9 10 /* This file enumerates variables from the LLVM configuration so that they 11 can be in exported headers and won't override package specific directives. 12 This is a C header that can be included in the llvm-c headers. */ 13 14 #ifndef LLVM_CONFIG_H 15 #define LLVM_CONFIG_H 16 17 /* Define if LLVM_ENABLE_DUMP is enabled */ 18 /* #undef LLVM_ENABLE_DUMP */ 19 20 /* Target triple LLVM will generate code for by default */ 21 /* Doesn't use `cmakedefine` because it is allowed to be empty. */ 22 /* #undef LLVM_DEFAULT_TARGET_TRIPLE */ 23 24 /* Define if threads enabled */ 25 #define LLVM_ENABLE_THREADS 1 26 27 /* Has gcc/MSVC atomic intrinsics */ 28 #define LLVM_HAS_ATOMICS 1 29 30 /* Host triple LLVM will be executed on */ 31 /* #undef LLVM_HOST_TRIPLE */ 32 33 /* LLVM architecture name for the native architecture, if available */ 34 /* #undef LLVM_NATIVE_ARCH */ 35 36 /* LLVM name for the native AsmParser init function, if available */ 37 /* #undef LLVM_NATIVE_ASMPARSER */ 38 39 /* LLVM name for the native AsmPrinter init function, if available */ 40 /* #undef LLVM_NATIVE_ASMPRINTER */ 41 42 /* LLVM name for the native Disassembler init function, if available */ 43 /* #undef LLVM_NATIVE_DISASSEMBLER */ 44 45 /* LLVM name for the native Target init function, if available */ 46 /* #undef LLVM_NATIVE_TARGET */ 47 48 /* LLVM name for the native TargetInfo init function, if available */ 49 /* #undef LLVM_NATIVE_TARGETINFO */ 50 51 /* LLVM name for the native target MC init function, if available */ 52 /* #undef LLVM_NATIVE_TARGETMC */ 53 54 /* LLVM name for the native target MCA init function, if available */ 55 /* #undef LLVM_NATIVE_TARGETMCA */ 56 57 /* Define if the AArch64 target is built in */ 58 #ifdef LLVM_TARGET_ENABLE_AARCH64 59 #define LLVM_HAS_AARCH64_TARGET 1 60 #else 61 #define LLVM_HAS_AARCH64_TARGET 0 62 #endif 63 64 /* Define if the AMDGPU target is built in */ 65 #define LLVM_HAS_AMDGPU_TARGET 0 66 67 /* Define if the ARC target is built in */ 68 #define LLVM_HAS_ARC_TARGET 0 69 70 /* Define if the ARM target is built in */ 71 #ifdef LLVM_TARGET_ENABLE_ARM 72 #define LLVM_HAS_ARM_TARGET 1 73 #else 74 #define LLVM_HAS_ARM_TARGET 0 75 #endif 76 77 /* Define if the AVR target is built in */ 78 #define LLVM_HAS_AVR_TARGET 0 79 80 /* Define if the BPF target is built in */ 81 #ifdef LLVM_TARGET_ENABLE_BPF 82 #define LLVM_HAS_BPF_TARGET 1 83 #else 84 #define LLVM_HAS_BPF_TARGET 0 85 #endif 86 87 /* Define if the CSKY target is built in */ 88 #define LLVM_HAS_CSKY_TARGET 0 89 90 /* Define if the DirectX target is built in */ 91 #define LLVM_HAS_DIRECTX_TARGET 0 92 93 /* Define if the Hexagon target is built in */ 94 #define LLVM_HAS_HEXAGON_TARGET 0 95 96 /* Define if the Lanai target is built in */ 97 #define LLVM_HAS_LANAI_TARGET 0 98 99 /* Define if the LoongArch target is built in */ 100 #define LLVM_HAS_LOONGARCH_TARGET 0 101 102 /* Define if the M68k target is built in */ 103 #define LLVM_HAS_M68K_TARGET 0 104 105 /* Define if the Mips target is built in */ 106 #ifdef LLVM_TARGET_ENABLE_MIPS 107 #define LLVM_HAS_MIPS_TARGET 1 108 #else 109 #define LLVM_HAS_MIPS_TARGET 0 110 #endif 111 112 /* Define if the MSP430 target is built in */ 113 #define LLVM_HAS_MSP430_TARGET 0 114 115 /* Define if the NVPTX target is built in */ 116 #define LLVM_HAS_NVPTX_TARGET 0 117 118 /* Define if the PowerPC target is built in */ 119 #ifdef LLVM_TARGET_ENABLE_POWERPC 120 #define LLVM_HAS_POWERPC_TARGET 1 121 #else 122 #define LLVM_HAS_POWERPC_TARGET 0 123 #endif 124 125 /* Define if the RISCV target is built in */ 126 #ifdef LLVM_TARGET_ENABLE_RISCV 127 #define LLVM_HAS_RISCV_TARGET 1 128 #else 129 #define LLVM_HAS_RISCV_TARGET 0 130 #endif 131 132 /* Define if the Sparc target is built in */ 133 #define LLVM_HAS_SPARC_TARGET 0 134 135 /* Define if the SPIRV target is built in */ 136 #define LLVM_HAS_SPIRV_TARGET 0 137 138 /* Define if the SystemZ target is built in */ 139 #define LLVM_HAS_SYSTEMZ_TARGET 0 140 141 /* Define if the VE target is built in */ 142 #define LLVM_HAS_VE_TARGET 0 143 144 /* Define if the WebAssembly target is built in */ 145 #define LLVM_HAS_WEBASSEMBLY_TARGET 0 146 147 /* Define if the X86 target is built in */ 148 #ifdef LLVM_TARGET_ENABLE_X86 149 #define LLVM_HAS_X86_TARGET 1 150 #else 151 #define LLVM_HAS_X86_TARGET 0 152 #endif 153 154 /* Define if the XCore target is built in */ 155 #define LLVM_HAS_XCORE_TARGET 0 156 157 /* Define if the Xtensa target is built in */ 158 #define LLVM_HAS_XTENSA_TARGET 0 159 160 /* Define if this is Unixish platform */ 161 #define LLVM_ON_UNIX 1 162 163 /* Define if we have the Intel JIT API runtime support library */ 164 #define LLVM_USE_INTEL_JITEVENTS 0 165 166 /* Define if we have the oprofile JIT-support library */ 167 #define LLVM_USE_OPROFILE 0 168 169 /* Define if we have the perf JIT-support library */ 170 #define LLVM_USE_PERF 0 171 172 /* Major version of the LLVM API */ 173 #define LLVM_VERSION_MAJOR 18 174 175 /* Minor version of the LLVM API */ 176 #define LLVM_VERSION_MINOR 1 177 178 /* Patch version of the LLVM API */ 179 #define LLVM_VERSION_PATCH 5 180 181 /* LLVM version string */ 182 #define LLVM_VERSION_STRING "18.1.5" 183 184 /* Whether LLVM records statistics for use with GetStatistics(), 185 * PrintStatistics() or PrintStatisticsJSON() 186 */ 187 #define LLVM_FORCE_ENABLE_STATS 0 188 189 /* Define if we have z3 and want to build it */ 190 /* #undef LLVM_WITH_Z3 */ 191 192 /* Define if we have curl and want to use it */ 193 /* #undef LLVM_ENABLE_CURL */ 194 195 /* Define if we have cpp-httplib and want to use it */ 196 /* #undef LLVM_ENABLE_HTTPLIB */ 197 198 /* Define if zlib compression is available */ 199 #define LLVM_ENABLE_ZLIB 1 200 201 /* Define if zstd compression is available */ 202 #define LLVM_ENABLE_ZSTD 1 203 204 /* Define if LLVM is using tflite */ 205 /* #undef LLVM_HAVE_TFLITE */ 206 207 /* Define to 1 if you have the <sysexits.h> header file. */ 208 #define HAVE_SYSEXITS_H 1 209 210 /* Define if building libLLVM shared library */ 211 /* #undef LLVM_BUILD_LLVM_DYLIB */ 212 213 /* Define if building LLVM with BUILD_SHARED_LIBS */ 214 /* #undef LLVM_BUILD_SHARED_LIBS */ 215 216 /* Define if building LLVM with LLVM_FORCE_USE_OLD_TOOLCHAIN_LIBS */ 217 /* #undef LLVM_FORCE_USE_OLD_TOOLCHAIN */ 218 219 /* Define if llvm_unreachable should be optimized with undefined behavior 220 * in non assert builds */ 221 #define LLVM_UNREACHABLE_OPTIMIZE 1 222 223 /* Define to 1 if you have the DIA SDK installed, and to 0 if you don't. */ 224 #define LLVM_ENABLE_DIA_SDK 0 225 226 /* Define if plugins enabled */ 227 /* #undef LLVM_ENABLE_PLUGINS */ 228 229 #endif 230