142d8074aSDimitry Andric /* $FreeBSD$ */ 2268335d0SDimitry Andric /*===------- llvm/Config/llvm-config.h - llvm configuration -------*- C -*-===*/ 3e580952dSDimitry Andric /* */ 4*86aa9539SDimitry Andric /* Part of the LLVM Project, under the Apache License v2.0 with LLVM */ 5*86aa9539SDimitry Andric /* Exceptions. */ 6*86aa9539SDimitry Andric /* See https://llvm.org/LICENSE.txt for license information. */ 7*86aa9539SDimitry 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 2109bfd043SDimitry Andric /* Define if we link Polly to the tools */ 2209bfd043SDimitry Andric /* #undef LINK_POLLY_INTO_TOOLS */ 2345cc80a7SDimitry Andric 24dff0c46cSDimitry Andric /* Target triple LLVM will generate code for by default */ 25dff0c46cSDimitry Andric /* #undef LLVM_DEFAULT_TARGET_TRIPLE */ 26dff0c46cSDimitry Andric 27dff0c46cSDimitry Andric /* Define if threads enabled */ 28cc38b640SDimitry Andric #define LLVM_ENABLE_THREADS 1 29dff0c46cSDimitry Andric 306122f3e6SDimitry Andric /* Has gcc/MSVC atomic intrinsics */ 31cc38b640SDimitry Andric #define LLVM_HAS_ATOMICS 1 326122f3e6SDimitry Andric 337ae0e2c9SDimitry Andric /* Host triple LLVM will be executed on */ 34284c1978SDimitry Andric /* #undef LLVM_HOST_TRIPLE */ 357ae0e2c9SDimitry Andric 36e580952dSDimitry Andric /* LLVM architecture name for the native architecture, if available */ 37cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ARCH */ 38e580952dSDimitry Andric 396122f3e6SDimitry Andric /* LLVM name for the native AsmParser init function, if available */ 40cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ASMPARSER */ 416122f3e6SDimitry Andric 426122f3e6SDimitry Andric /* LLVM name for the native AsmPrinter init function, if available */ 43cbafd263SDimitry Andric /* #undef LLVM_NATIVE_ASMPRINTER */ 446122f3e6SDimitry Andric 45dff0c46cSDimitry Andric /* LLVM name for the native Disassembler init function, if available */ 46cbafd263SDimitry Andric /* #undef LLVM_NATIVE_DISASSEMBLER */ 47dff0c46cSDimitry Andric 482754fe60SDimitry Andric /* LLVM name for the native Target init function, if available */ 49cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGET */ 502754fe60SDimitry Andric 512754fe60SDimitry Andric /* LLVM name for the native TargetInfo init function, if available */ 52cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGETINFO */ 532754fe60SDimitry Andric 546122f3e6SDimitry Andric /* LLVM name for the native target MC init function, if available */ 55cbafd263SDimitry Andric /* #undef LLVM_NATIVE_TARGETMC */ 5617a519f9SDimitry 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 */ 70*86aa9539SDimitry Andric #define LLVM_VERSION_MAJOR 9 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 */ 76*86aa9539SDimitry Andric #define LLVM_VERSION_PATCH 0 7709de9530SDimitry Andric 781ae6788eSDimitry Andric /* LLVM version string */ 79*86aa9539SDimitry Andric #define LLVM_VERSION_STRING "9.0.0svn" 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 86e580952dSDimitry Andric #endif 87